SBE - Streamlined Market Data Message Formats
The message formats described in this topic apply to streamlined market data feeds.
Binary Packet Header (Across All Messages)
A standard technical header included in all packets sent on Real-Time Feed, Snapshot and Instrument Recovery Feeds.
Name | Binary Type (Size) | Number of Bytes | Req | Description |
---|---|---|---|---|
MsgSeqNum | uInt32 | 4 | Y | Packet sequence number. A unique sequence number given to each packet sent. Each channel will have its own separate set of sequence numbers that will increment sequentially with each packet and reset weekly. |
SendingTime | uInt64 | 8 | Y | UTC Time of message transmission by the Gateway. UTC Timestamps are sent in number of nanoseconds since Unix epoch synced to a master clock to microsecond accuracy. |
Message Header
Each message in the packet starts with a Binary message header that consists of the Binary Size and SBE header (Length, TemplateID, SchemaID, and Version)
Name | Binary Type (Size) | Number of Bytes | Req | Description |
---|---|---|---|---|
MsgSize | uInt16 | 2 | Y | Length of entire message, including binary header in number of bytes |
Simple Binary Encoding Header | ||||
BlockLength | uInt16 | 2 | Y | Length of root of the message |
TemplateID | uInt16 | 2 | Y | Template ID used to encode the message |
SchemaID | uInt16 | 2 | Y | ID of the system publishing the message |
Version | uInt16 | 2 | Y | Schema version |
FIX Message Header
FIX message header consists of a single field specifiying FIX message type and is consistent across all FIX market data message types.
Tag | Name | FIX Type | Enumeration | Req | Description |
---|---|---|---|---|---|
35 | MsgType | Int | 0=Heartbeat X= Incremental Refresh W=Snapshot d=Security Definition f=Security Status R=Request for Quote | Y | FIX Message Type |
Logon (tag 35-MsgType=A) – From Customer to CME
The Market Data Logon (tag 35-MsgType=A) message is sent by the client system to MDP to initiate logon.
Required fields are:
Tag | FIX Name | Valid Values | FIX Type | Description |
---|---|---|---|---|
35 | MsgType | A | Char | Message Type |
553 | Username | String | User ID or username. | |
554 | Password | String | Password or pass phrase. | |
10 | CheckSum | String | Always last tag in message. Functions as end-of-message delimiter. |
Logon (tag 35-MsgType=A) – From CME to Customer
The Market Data Logon (tag 35-MsgType=A) message is sent from MDP to the client system to confirm logon. This message is SBE encoded.
Tag | FIX Name | Valid Values | FIX Type | Description |
---|---|---|---|---|
35 | MsgType | A | Char | Message Type |
108 | HeartBtlnt | Int | Heartbeat interval (seconds). |
Logout (tag 35-MsgType=5)
The Market Data Logout (tag 35-MsgType=5) message is sent from MDP to confirm logout. This message is SBE encoded.
Tag | FIX Name | Valid Values | FIX Type | Description |
---|---|---|---|---|
35 | MsgType | 5 | Char | Message Type |
58 | Text | String | Free format text string. May include logout confirmation or reason for the request reject and logout. |
Heartbeat (tag 35-MsgType=0)
Heartbeat (tag 35-MsgType=0) message is sent on Real-Time Feed and Recovery Feeds in periods of no activity at a configurable time interval and consists of only a standard technical header and a FIX message header.
Currently, the configurable time interval is 30 seconds.
Tag | Name | FIX Type | Enumeration | Req | Description |
---|---|---|---|---|---|
35 | MsgType | Int | 0=Heartbeat | Y | FIX Message Type |
Sample Messages
1 201307132151361919215 35=0
2 201307132151361939215 35=0
Market Data Request (tag 35-MsgType=V)
The Market Data - Replay Request (tag 35-MsgType=V) message is sent by the client system to request a range of messages for recovery. Required fields:
Tag | FIX Name | Valid Values | FIX Type | Description |
---|---|---|---|---|
35 | MsgType | V | Char | Message Type |
1180 | AppIID | String | The channel ID from the XML Configuation file for which this request is made. | |
262 | MDReqID | String | Unique identifier for Market Data Request. | |
1182 | ApplBeginSeqNo | SeqNum | Message sequence number of the first message in range to be re-sent. If the request is for a single message, tag 1182-ApplBeginSeqNo and tag 1183-ApplEndSeqNo are the same. | |
1183 | ApplEndSeqNo | SeqNum | Message sequence number of last message in range to be re-sent. The maximum number of messages that can be requested in a given request is 2000. | |
10 | CheckSum | String | Always last tag in message. Functions as end-of-message delimiter. |
How was your Client Systems Wiki Experience? Submit Feedback
Copyright © 2024 CME Group Inc. All rights reserved.