Wednesday, May 18, 2005

Message Use

Three basic message streams, 1. Price feed, 2. Orders, 3. Execution Reports.

Current price feed Reuters SSL compliant messages, distributed via SSL api to applications.

(Island book feed handled by specific trading applications not generally distributed per se.

The Order/Execution system is an Java based product. It uses JMS 1.1 to communicate between trading applications, fix engines. All messages are FIX formatted with numerous added fields.

All messages are persisted, and the level of persistence is configurable.

Issues. Price feed latency, during load times. This could be fixed with more and faster servers, but is a continuing problem. It can also be fixed by getting away from SSL api, but this adds to cost and time of application development.

Order/Execution system is limited by the message traffic that can be handled by the software JMS interface, tends to be fast for a few orders ie 50, and then slows rapidly for 400.

Solutions. More servers, distributing the load is the typical solution. However the basic bottleneck is message buffering, and persisting.