It's a decent platform but it's an attempt to address a lot of different issues in one platform. If you're pure quant you're probably better off building something custom and plugging in QuickFIX (which marketcetera uses for FIX connectivity), particularly since last I checked its feed handlers (a right bastard to get right) aren't particularly sophisticated. If you're running a trading floor there's a plethora of issues you'll face that aren't currently solved by it. The use of ActiveMQ over AMQP also doesn't make much sense anymore, AMQP is built from the ground up for financial messaging - both orders and feeds - and has a very robust OSS implementation (RabbitMQ).
Marketcetera platform consists of the following components:
Photon - a light-weight GUI for entering orders, monitoring them and running strategies. Built on top of the Eclipse Rich Client Platform.
ORS - Server that includes an Order Routing System for accepting orders from Photon, StrategyAgent or Order Loader and routing them to an exchange, persistence layer backed by a database (MySQL is installed with the product) and authentication module.
Order Loader - for batch loading of large numbers of orders.
Strategy Agent - standalone environment for running strategies.
Platform modules - CEP, Strategy, Market Data Adapters (such as the Marketcetera simulated market data feed) and more.
Currently the Marketcetera platform is built on top of Spring Framework with an embedded ActiveMQ message queue middleware. Queues (i.e. point-to-point connections) and topics (i.e. publish/subscribe connections) are both used to communicate amongst the pieces of the Marketcetera platform. In general, queues are used to communicate messages going "toward" a broker or exchange, and topics are used for response messages going the other direction. This way we can guarantee that instructional messages - such as orders and cancels - are delivered once and only once, and informational messages - such as execution reports - are distributed to all authenticated clients. In addition, ORS publishes a set of Web Services interfaces used internally by the platform client components such as Strategy Agent, Photon, etc. We use Apache CXF technology as our web services framework.
ORS stores all of the trades, execution reports and positions information in a database accessed by the persistence layer. ORS is configured to use the MySQL database out of the box, but we are database agnostic and can be reconfigured to use any other database, such as Oracle or PostgreSQL.