CME Benchmark Administration Premium Message Specification
This message specification provides the message layout for each FIX message type supported by the applicable SBE schema for the CME Benchmark Administration Premium market data group.
Contents
- 1 Revision History
- 2 Message Specification
- 2.1 Binary Packet Headers
- 2.2 SBE Message Header
- 2.3 MDP 3.0 - Market Data Incremental Refresh Incremental Messages
- 2.3.1 SOFR
- 2.3.2 Petroleum Indexes
- 2.3.3 CVOL Indexes
- 2.3.3.1 CVOL Indicator Messaging Summary
- 2.3.3.2 CVOL Index Indicator Symbols
- 2.3.3.2.1 Foreign Exchange
- 2.3.3.2.2 Interest Rate
- 2.3.3.2.3 Metals
- 2.3.3.2.4 Energy
- 2.3.3.2.5 Agriculture
- 2.3.3.2.6 Multi Asset
- 2.3.4 RFR Benchmarks
- 2.3.4.1 RFR Benchmark Symbols
- 2.4 TCP Replay Messages
- 2.4.1 Logon from Client System to MDP
- 2.4.2 Logon from MDP to Client System
- 2.4.3 Market Data Replay Request
- 2.4.4 Logout
- 3 Contact Information
Revision History
Date | Description |
---|---|
12/27/2023 | Added "RFR Benchmarks" section. |
9/14/2022 | Incorporated Streaming CVOL Index Launch and SBE Template Migration client impact assessment.
|
12/14/2021 | Added "MDP 3.0 - SBE Message Header" section |
11/22/2021 |
|
10/7/2021 | updated version removed extraneous tag values |
9/2/2021 | updated version |
Message Specification
The following section outlines the full message specification for CME Benchmark Administration Premium Specification messages.
Binary Packet Headers
A standard technical header sent in a packet.
Binary Packet Header for UDP Connections
A standard technical header is included in all packets sent on Real-Time Feed, UDP Market Recovery, and Instrument Recovery Feeds.
Name | Type | Description |
---|---|---|
MsgSeqNum | uInt32 | 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 | 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. |
SBE 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 | Type | Description |
---|---|---|
MsgSize | uInt16 | Length of entire message, including binary header in number of bytes |
Simple Binary Encoding Header | ||
BlockLength | uInt16 | Length of the root of the FIX message contained before repeating groups or variable/conditions fields |
TemplateID | uInt16 | Template ID used to encode the message |
SchemaID | uInt16 | ID of the system publishing the message |
Version | uInt16 | Schema version |
MDP 3.0 - Market Data Incremental Refresh Incremental Messages
The specifications included below are used for CME Benchmark Administration Premium Specification incremental messages (tag 35-MsgType=X) for SOFR, CVOL indicator and Petrol pricing.
The messages for SOFR and Petrol pricing map to the MDIncrementalRefreshSettle template in the Settlements and Valuations schema.
The messages for CVOL indicator map to the MDIncrementalRefreshCVOLIndex template in the Settlements and Valuations SBE schema
SOFR
Tag | FIX Name | Type | Valid Values | Description |
---|---|---|---|---|
60 | TransactTime | uInt64 |
| Start of event processing time in number of nanoseconds since Unix epoch |
1683 | MDSubFeedType | uInt16NULL |
| Describes a sub-class for a given class of service |
Repeating Group 1 | ||||
268 | NoMDEntries | NumInGroup |
| Number of entries in Market Data message |
→279 | MDUpdateAction | MDUpdateAction | 0 = New | Indicates the type of Market Data update action |
→269 | MDEntryType | Char | W = Fixing Price | Indicates the type of price |
→7178 | ProductGUID | uInt64NULL |
| Global unique product identifier. Additional product and instrument referential data can be gathered via CME Reference Data API using GUID fields. |
→37500 | ClearingProductCode | String (12) | TR1 - 1-MTH SOFR SYNTHETIC FUT TR3 - 3-MTH SOFR SYNTHETIC FUT TR6 - 6-MTH SOFR SYNTHETIC FUT T1Y – 12 MTH SOFR SYNTHETIC FUT | Clearing Product Code |
→167 | SecurityType | SecurityType | FUT = Future Outrights
| Identifies the type of instrument. |
→207 | SecurityExchange | String (8) | CME = Chicago Mercantile Exchange | Security Exchange
|
→200 | MaturityMonthYear | MaturityMonthYear |
| This tag provides the calendar month reflected in the instrument symbol (tag 55-Symbol). Format: YYYYMM (e.g. 201912) For futures spreads and options spreads, this tag contains the first leg's calendar month reflected in the instrument symbol. For packs and bundles, this value represents the quarterly contract reflected in the instrument symbol. For daily products, this tag contains the full calendar date as reflected in the instrument symbol. Format: YYYYMMDD (e.g. 20191205). For weekly options products, this tag contains the calendar month and week indicator reflected in the instrument symbol. Format: YYYYMMwW (e.g. for the 4thweek contracts, 2019124). |
→201 | PutOrCall | PutOrCall |
| Indicates whether an option instrument is a put or call. Will be null or empty in SOFR messages. |
→202 | StrikePrice | Decimal64 |
| Option strike price in Clearing price format. Will be null or empty in SOFR messages. |
→37509 | UnderlyingProductGUID | uInt64NULL |
| Global unique product identifier. Additional product and instrument referential data can be gathered via CME Reference Data API using GUID fields. Will be null or empty in SOFR messages. |
→37510 | UnderlyingClearingProductCode | String (12) |
| Underlying Clearing Product Code Will be null or empty in SOFR messages. Will be null or empty in SOFR messages. |
→310 | UnderlyingSecurityType | SecurityType |
| Identifies the type of the underlying instrument. Will be null or empty in SOFR messages. |
→308 | UnderlyingSecurityExchange | String (8) |
| Underlying Security Exchange Will be null or empty in SOFR messages. |
→313 | UnderlyingMaturityMonthYear | MaturityMonthYear |
| This tag provides the calendar month reflected in the instrument symbol (tag 55-Symbol in MDP 3.0; tag 107-SecurityDesc in iLink). Format: YYYYMM (e.g. 201912) For futures spreads and options spreads, this tag contains the first leg's calendar month reflected in the instrument symbol. For packs and bundles, this value represents the quarterly contract reflected in the instrument symbol. For daily products, this tag contains the full calendar date as reflected in the instrument symbol. Format: YYYYMMDD (e.g. 20191205). For weekly options products, this tag contains the calendar month and week indicator reflected in the instrument symbol. Format: YYYYMMwW (e.g. for the 4thweek contracts, 2019124). Will be null or empty in SOFR messages. |
→55 | Symbol | Symbol |
| Contract name |
→37513 | InstrumentGUID | uInt64NULL |
| Global unique instrument identifier. Additional product and instrument referential data can be gathered via CME Reference Data API using GUID fields. |
→48 | SecurityID | uInt32NULL |
| Security ID. This value is only sent for CME Globex instruments. This field will be null for instruments not sent on CME Globex. |
→9732 | FormattedLastPx | Decimal64 |
| Price in Clearing decimal format. |
→270 | MDEntryPx | PRICENULL9 |
| Price in CME Globex decimal format. Sent only for the instruments listed on CME Globex |
→731 | SettlPriceType | SettlPriceType | 10000000 = null | Bitmap field of eight Boolean type indicators representing settlement or valuation price type. |
→5796 | TradingReferenceDate | LocalMktDate |
| Date of trade session corresponding to a statistic entry. Sent in number of days since Unix epoch. |
→2455 | MDStatisticDesc | String (40) | empty | Description of the fixing price. |
Petroleum Indexes
Tag | FIX Name | Type | Valid Values | Description |
---|---|---|---|---|
60 | TransactTime | uInt64 |
| Start of event processing time in number of nanoseconds since Unix epoch |
1683 | MDSubFeedType | uInt16NULL |
| Describes a sub-class for a given class of service |
Repeating Group 1 | ||||
268 | NoMDEntries | NumInGroup |
| Number of entries in Market Data message |
→279 | MDUpdateAction | MDUpdateAction | 0 = New | Indicates the type of Market Data update action |
→269 | MDEntryType | Char | 3 = Index Value | Indicates the type of price |
→7178 | ProductGUID | uInt64NULL |
| Global unique product identifier. Additional product and instrument referential data can be gathered via CME Reference Data API using GUID fields. |
→37500 | ClearingProductCode | String (12) | CPX = Petroleum Index CVX = Indicative Petroleum Index | Clearing Product Code |
→167 | SecurityType | SecurityType | INDEX | Identifies the type of instrument. |
→207 | SecurityExchange | String (8) | NYMEX | Security Exchange
|
→200 | MaturityMonthYear | MaturityMonthYear | null | A value of zero denotes null |
→201 | PutOrCall | PutOrCall | null | Indicates whether an option instrument is a put or call. A value of zero denotes null Will be null or empty in SOFR messages. |
→202 | StrikePrice | Decimal64 | null | Option strike price in Clearing price format. A value of zero denotes null Will be null or empty in SOFR messages. |
→37509 | UnderlyingProductGUID | uInt64NULL | null | Global unique product identifier. Additional product and instrument referential data can be gathered via CME Reference Data API using GUID fields. A value of zero denotes null Will be null or empty in SOFR messages. |
→37510 | UnderlyingClearingProductCode | String (12) | null | Underlying Clearing Product Code Will be null or empty in SOFR messages. |
→310 | UnderlyingSecurityType | SecurityType | null | Identifies the type of the underlying instrument.
|
→308 | UnderlyingSecurityExchange | String (8) | null | Underlying Security Exchange Will be null or empty in SOFR messages. |
→313 | UnderlyingMaturityMonthYear | MaturityMonthYear | null | This tag provides the calendar month reflected in the instrument symbol (tag 55-Symbol in MDP 3.0; tag 107-SecurityDesc in iLink). Format: YYYYMM (e.g. 201912) For futures spreads and options spreads, this tag contains the first leg's calendar month reflected in the instrument symbol. For packs and bundles, this value represents the quarterly contract reflected in the instrument symbol. For daily products, this tag contains the full calendar date as reflected in the instrument symbol. Format: YYYYMMDD (e.g. 20191205). For weekly options products, this tag contains the calendar month and week indicator reflected in the instrument symbol. Format: YYYYMMwW (e.g. for the 4thweek contracts, 2019124). Will be null or empty in SOFR messages. |
→55 | Symbol | Symbol | CPX = Petroleum Index CVX = Indicative Petroleum Index | Contract name |
→37513 | InstrumentGUID | uInt64NULL |
| Global unique instrument identifier. Additional product and instrument referential data can be gathered via CME Reference Data API using GUID fields. |
→48 | SecurityID | uInt32NULL |
| Security ID. This value is only sent for CME Globex instruments. This field will be null for instruments not sent on CME Globex. |
→9732 | FormattedLastPx | Decimal64 |
| Price in Clearing decimal format. |
→270 | MDEntryPx | PRICENULL9 |
| Price in CME Globex decimal format. Sent only for the instruments listed on CME Globex |
→731 | SettlPriceType | SettlPriceType | Bit 0:
| Bitmap field of eight Boolean type indicators representing settlement or valuation price type. Example values:
|
→5796 | TradingReferenceDate | LocalMktDate |
| Date of trade session corresponding to a statistic entry. Sent in number of days since Unix epoch. |
→2455 | MDStatisticDesc | String (40) | empty | Description of the fixing price. |
CVOL Indexes
Tag | Field Name | Type | Valid Values | Description |
---|---|---|---|---|
60 | TransactTime | uInt64 |
| Index calculation time, sent in number of nanoseconds since Unix epoch |
1683 | MDSubFeedType | uInt16NULL |
| Describes a sub-class for a given class of service |
5796 | TradingReferenceDate | LocalMktDate |
| Business date, required to be published with end of day Index Settle record |
37500 | ClearingProductCode | String12 |
| Clearing Product Code |
7178 | ProductGUID | uInt64 |
| Product GUID |
286 | OpenCloseSettlFlag | CVOLValueFlag
| 107=RealTime 108=FinalDaily 109=PreliminaryDaily 110=ReprintPrevious | Indicates Index value type sent in the message: streaming, resend of previous values, end of day or preliminary snapshot |
Repeating Group 1 | ||||
268 | NoMDEntries | groupSize |
| Number of data blocks |
→279 | MDUpdateAction | MDUpdateActionNew |
| Market Data update action |
→269 | MDEntryType | MDEntryTypeIndices | 3 = IndexValue 7 = SessionHighPrice 8 = SessionLowPrice | Index MD entry type |
→55 | Symbol | Symbol |
| Index instrument symbol such as CVOL:SOVL or UPVAR:SOVL |
→37513 | InstrumentGUID | uInt64 |
| Index instrument unique identifier |
→270 | MDEntryPx | Decimal64 |
| Index value |
Repeating Group 2 | ||||
711 | NoUnderlyings | groupSize |
| Number of Index underlying products |
→462 | UnderlyingProduct | String12 |
| Underlying Future Globex Product Code |
→37509 | UnderlyingProductGUID | uInt64 |
| Underlying Future Product GUID |
→6919 | IndexPct | Decimal32NULL |
| Index component weight. Value is not provided in Final Daily message (286=108). |
→37526 | FrontOptionsSeries | String12 |
| Globex Product Code and Maturity of the front overlying options series. Not provided for indices with multiple underlying products. |
→37527 | BackOptionsSeries | String12 |
| Globex Product Code and Maturity of the back overlying options series. Not provided for indices with multiple underlying products. |
→37528 | TargetExpiry | uInt16NULL |
How was your Client Systems Wiki Experience? Submit Feedback
Copyright © 2024 CME Group Inc. All rights reserved.