There are a number of statistics (market data events) which are related to changes in a book, but are not used to update the book. The following artifacts fit this category: trade, total volume, open interest, and pre-opening statistics.
Notes: Total volume is only sent if it differs from what can be estimated from trade updates (i.e., when there were implied trades they are not posted as trades but total volume will be updated). Open interest (OI) is send depending on feed source.
These events describe the behavior of the market and allow a user to know when the market is moving in a certain direction and provide historical information on how the market has performed.
Note: Multiple data blocks may be sent in the same message. To determine the number of data blocks you will receive in the message, refer to tag 268-NoMDEntries. Within the message, data blocks may be for different instruments or entry types (book update, statistics, or trades).
Pre-Opening Statistics
CQG provides indicative opening price.
FIX Syntax for Opening -Market Data Incremental Refresh (tag 35-MsgType = X)
Tag Number |
Tag Name |
Value |
Description |
279 |
MDUpdateAction |
0 |
0=new. Type Market Data update action. |
269 |
MDEntryType |
4 |
4=opening price. Type of Market Data entry. |
83 |
RptSeq |
|
Sequence number per Instrument update. |
273 |
MDEntryTime |
|
Time of Market Data Entry. |
270 |
MDEntryPx |
9550.00 |
Price of the Market Data Entry. |
48 |
SecurityID |
|
Unique instrument ID as qualified by the exchange. |
1070 |
MDQuoteType |
0 |
0 = Indicative. Identifies the type of quote. |
Trade
The trade data block is sent when a trade occurs to provide volume and trade statistics. The following sections detail various trade types and their respective data.
Tag 269-MDEntryType=2 (trade) is not used to update the view of the book.
Example 1 – Two Outright Orders Trading
The following example illustrates the trade data block that is sent when a buy and sell match on GEZ2.
FIX Syntax for GEZ2 Outright Trade - Market Data Incremental Refresh (tag 35-MsgType=X)
Tag Number |
Tag Name |
Value |
Description |
279 |
MDUpdateAction |
0 or 2 |
0=new and 2=delete. Type Market Data update action. |
269 |
MDEntryType |
2 |
2=trade. Type of Market Data entry. |
83 |
RptSeq |
|
Sequence number per Instrument update. |
273 |
MDEntryTime |
|
Time of Market Data Entry. |
271 |
MDEntrySize |
5 |
Quantity or volume represented by the Market Data Entry. |
270 |
MDEntryPx |
9550.00 |
Price of the Market Data Entry. |
48 |
SecurityID |
|
Unique instrument ID as qualified by the exchange per tag 22-SecurityIDSource. |
Closing and Settlement Price
The price data block is sent to update settlement price. This data block is useful for obtaining the settlement price and is sent after the close of the trading session.
FIX Syntax for Previous Day Adjustment - Market Data Incremental Refresh (tag 35-MsgType = X)
Tag Number |
Tag Name |
Value |
Description |
279 |
MDUpdateAction |
0 |
0=new. Type Market Data update action. |
269 |
MDEntryType |
6 |
6= settlement price. Type of Market Data entry. |
83 |
RptSeq |
|
Sequence number per Instrument update. |
273 |
MDEntryTime |
|
Time of Market Data Entry. |
271 |
MDEntrySize |
|
Quantity or volume represented by the Market Data Entry. |
270 |
MDEntryPx |
9550.00 |
Price of the Market Data Entry. |
48 |
SecurityID |
|
Unique instrument ID as qualified by the exchange. |