SBE - Block Trades Messaging Format
The streamlined SBE messages in this section are sent for block trades.
Heartbeat
There is no body for this message.
This message is only the header with the message type 0.
This message is sequenced like any other message.
TCP Replay Messages
The messages included below are used for streamlined SBE TCP Recovery.
Logon from Client System to MDP
The Market Data Logon (tag 35-MsgType=A) message is sent by the client system to CME Globex to initiate logon.
Required fields:
Tag | FIX Name | Type | Valid Values | Description |
---|---|---|---|---|
553 | Username | String | Userid or username. | |
554 | Password | String | Password or passphrase. | |
1137 | DefaultApplVerID | String | 9 = FIX50SP2 | Specifies the service pack release being applied, by default, to message at the session level. |
Logon from MDP to Client System
The Market Data Logon (tag 35-MsgType=A) message is sent from CME Globex to the client system to confirm logon. This message is SBE encoded.
Tag | FIX Name | Type | Valid Values | Description |
---|---|---|---|---|
1180 | ApplID | String | REPLAY | Used to identify a replayed message. |
98 | EncryptMethod | Int | 0 = None | CME does not use encryption, so this value is always set to 0. |
108 | HeartBtInt | Int | Heartbeat interval (seconds). | |
1137 | DefaultApplVerID | String | 9 = FIX50SP2 | Specifies the service pack release being applied, by default, to message at the session level. |
Market Data Replay Request
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 | Type | Valid Values | Description |
---|---|---|---|---|
1180 | ApplID | String | The channel ID from the XML Configuration File for which this request is made. | |
262 | MDReqID | String | Unique identifier for Market Data Request. | |
1182 | ApplBeginSeqNo | SeqNum | Message sequence number of first message in range to be re-sent. If the request is for a single message, ApplBeginSeqNo (tag 1182) and ApplEndSeqNo (tag 1183) are the same. | |
1183 | ApplEndSeqNo | SeqNum | Message sequence number of last message in range to be re-sent. If the request is for a single message, BeginSeqNo (tag 7) and EndSeqNo (tag 16) are the same. The maximum number of messages that can be requested is 2000. |
Logout
The Market Data Logout (tag 35-MsgType=5) message is sent from CME Globex to confirm logout. This message is SBE encoded.
Tag | FIX Name | Type | Valid Values | Description |
---|---|---|---|---|
1180 | ApplID | String | REPLAY | Used to identify a replayed message. |
58 | Text | String | Free Format text string. May include logout confirmation or reason for logout. |
Market Data Incremental Refresh (tag 35-MsgType=X) Message
Tag | FIX Name | Type | Valid Values | Description |
---|---|---|---|---|
Body | ||||
60 | TransactTime | UTCTimeStamp | Trade date and time in number of nanoseconds since Unix epoch | |
5799 | MatchEventIndicator | String | ex. 10000001 – end of trade summaries, end of event | Bitmap field of eight Boolean type indicators reflecting the end of updates for a given Event: Bit 0: (least significant bit) Last Trade message for a given event Bit 1: Reserved for future use Bit 2: Reserved for future use Bit 3: Reserved for future use Bit 4: Reserved for future use Bit 5: Reserved for future use Bit 6: Reserved for future use Bit 7: (most significant bit) Last message for a given event |
50001 | BatchTotalMessages | Int | Total number of messages contained within batch which is defined by match event indicator (5799) | |
268 | NoMDEntries | NumInGroup | Number of entries in Market Data message. | |
279 | →MDUpdateAction | Char | 0 = New | Market data update action. |
269 | →MDEntryType | Char | 2 = Trade | Market data entry type. |
48 | →SecurityID | Int | null | Reserved for future use. |
83 | →RptSeq | Int | Sequence number per instrument update. Reset weekly | |
270 | →MDEntryPx | Price | Price of the market data entry. | |
271 | →MDEntrySize | Qty (64) | Traded quantity. | |
346 | →NumberOfOrders | Int | 0 | The total number of non-implied orders per instrument that participated in a match step within a match event. Value is always zero. |
1003 | →TradeID | Int | 0 | Unique Trade Entry ID per Instrument and Trading Date. Value is always zero. |
5797 | →AggressorSide | Char | 0 = No aggressor | Indicates which side is aggressor of the trade. If there is no value present, then there is no aggressor. Value is always zero. |
55 | →Symbol | String | Instrument/Index/Swap Name | |
1151 | →SecurityGroup | String | Indicates the product code for the instrument. | |
167 | →SecurityType | String | FUT = Future | Identifies the type of instrument. |
762 | →SecuritySubType | String | Reserved for future use. | |
200 | →MaturityMonthYear | MonthYear | This field provides the actual calendar date for contract maturity month and year (used for standardized futures and options) Format: YYYYMM (i.e. 200712). For daily products, this field contains the daily maturity Format: YYYYMMDD (i.e. 20071215). | |
207 | →SecurityExchange | String | XCBT = Chicago Board Of Trade | Exchange used to identify a security. |
541 | →MaturityDate | LocalMktDate | Maturity date of instrument. Days from epoch. | |
996 | →UnitOfMeasure | String | Unit of measure for the products' original contract size | |
1716 | →UnitOfMeasureCurrency | Currency | Indicates the ISO Currency code if it is a currency product. | |
1147 | →UnitOfMeasureQty | Float | This field contains the notional value for each instrument. The notional value is equivalent to the corresponding premium-quoted contract. | |
223 | →CouponRate | Percentage | null | Reserved for future use. |
423 | →PriceType | Int | 2 = Contract Units | Valid price types for intraday trade. |
828 | →TrdType | Int | 1 = Block Trade | Valid trade types for intraday trade. |
278 | →MDEntryID | String | Market data entry identifier to map multiple prices of a single trade. | |
201 | →PutOrCall | Int | 0 = Put | Indicates whether an option instrument is a put or call. |
202 | →StrikePrice | Price | Strike price for an option instrument. Note: Strike price precision may not be the same as instruments sent on CME Globex. | |
1449 | →RestructuringType | String | null | Reserved for future use. |
1450 | →Seniority | String | null | Reserved for future use. |
9633 | →ReferenceID | String | Reserved for future use. | |
1851 | →StrategyLinkID | String | Identifies the multi-leg strategy (e.g. spread) to which the trade belongs. This links together trade legs executed as part of a strategy during a single match event. | |
Leg Repeating Groups | ||||
654 | →LegRefID | String | Used to correlate leg instrument definitions with their executions. Cross referenced to Tag 1788-LegID. | |
711 | →NoUnderlyings | NumInGroup | Number of underlying legs that make up the security. | |
311 | →→UnderlyingSymbol | String | Underlying Security's symbol. | |
313 | →→UnderlyingMaturityMonthYear | MonthYear | Underlying Security's MaturityMonthYear. | |
310 | →→UnderlyingSecurityType | String | Underlying Security's SecurityType. | |
308 | →→UnderlyingSecurityExchange | String | CBTS = CBOT Swap Execution Facility | Underlying Security's SecurityExchange. |
453 | →NoPartyIDs | NumInGroup | Number of party roles. | |
448 | →→PartyID | String | Party identifier/code. | |
452 | →→PartyRole | Int | 21 = Clearing Organization | Identifies the type or role of the PartyID specified. |
555 | →NoLegs | NumInGroup | Number of legs (repeating groups). | |
600 | →→LegSymbol | String | Multi-leg instrument's individual security's Symbol | |
602 | →→LegSecurityID | Int | Multi-leg instrument's individual security's SecurityID. | |
603 | →→LegSecurityIDSource | Char | H = CME | Identifies source of tag 602-LegSecurityID value. This value is always 'H' for CME. |
5795 | →→LegSecurityGroup | String | Leg equivalent of body tag 1151-SecurityGroup (i.e. leg 'product code'). | |
1788 | →→LegID | String | Used to correlate leg instrument definitions with their executions. Cross referenced in tag 654-LegRefID. | |
609 | →→LegSecurityType | String | OOC = Option on Combo | Identifies the type of leg instrument. |
610 | →→LegMaturityMonthYear | MonthYear | Multi-leg instrument's individual security's leg MaturityMonthYear. | |
611 | →→LegMaturityDate | LocalMktDate | Multi-leg instrument's individual security's leg MaturityDate. | |
612 | →→LegStrikePrice | Price | Multi-leg instrument's individual security's StrikePrice | |
999 | →→LegUnitOfMeasure | String | Multi-leg instrument's individual security's leg UnitOfMeasure | |
1224 | →→LegUnitOfMeasureQty | Float | Multi-leg instrument's individual security's leg UnitOfMeasureQty | |
616 | →→LegSecurityExchange | String | CBTS = CBOT Swap Execution Facility | Multi-leg instrument's individual security's leg Security Exchange. |
623 | →→LegRatioQty | Int | The ratio of quantity for this individual leg relative to the entire multi-leg security. | |
624 | →→LegSide | Char | 1=Buy | The side of this individual leg (multi-leg security). |
1358 | →→LegPutOrCall | Int | 0 = Put | Identifies whether leg option contract is a put or a call.. |
1720 | →→LegUnitOfMeasureCurrency | Currency | Indicates the currency of the unit of measure. Conditionally required when LegUnitOfMeasure (999) = Ccy. |
How was your Client Systems Wiki Experience? Submit Feedback
Copyright © 2024 CME Group Inc. All rights reserved.