Market data package overview
The market data interfaces defined in TickManagerSupport.mon have been designed to facilitate the distribution of depth data and tick data. Depth data gives either the best bid and offer (ask) prices and quantities available, or information for multiple levels of depth. When multiple levels of depth are provided, the depth is aggregated by price. A few adapters will send un-aggregated order book data in the depth event. Tick data is a stream of events detailing trades that occur on an exchange.
Market data comes from markets or matching engines. When orders are sent to a receiver they contain a composite destination key, which will determine where an order is sent. This same key, therefore, is often used to request and identify market data. In some cases where different connectivity is used to obtain market data, than to submit orders, then the details will not match. In this role it is called a composite source key. The key comprises service identifier, market identifier and exchange identifier. Not all the details of the destination are present in all events as primary fields, so the extra parameters SERVICE_NAME, Market, and Exchange must be added to a number of the events in the protocol.
In addition to the normal fields used in a composite source key, depth subscriptions/publishers may also support different types of depth subscription, level 1, 2, and maybe 3. When this happens an additional extra parameter containing the type of depth data is used in the key as well. Further details are given in the value constraints sections of the relevant events.