With this release, CME Group will implement new functionality to enhance Market Segment Gateway (MSGW) and CME Globex infrastructure.
The key client system impacts of these MSGW enhancements include:
- a new CME Globex solution to identify iLink messages which are not completely sent in a single network packet or received out-of-order
- additional processing time of at least 3 microseconds on the responsible iLink session
- new iLink FIX tags to identify the reason for the additional processing and the duration.
This new functionality will be implemented for only MSGW sessions.
- CGW sessions will not support these MSGW Enhancements.
Contents
Key Events and Dates
MSGW Enhancements Timeline | ||
---|---|---|
Market Segment ID | Market Segment Description | Production |
50 | CME Interest Rate Options | Sunday, July 26, 2020 |
54 | CME and CBOT Equity Options | Sunday, August 9, 2020 |
52 | CME FX Futures and Options II | Sunday, August 16, 2020 |
56 | NYMEX Emissions Options; NYMEX Energy, Metals, Softs and Alternative Markets Options; COMEX Options; DME Options | Sunday, August 30, 2020 |
Testing and Certification
Starting Monday, February 11, the CME Globex MSGW Enhancements will be available for customer testing in New Release. In addition, the new FIX tags for this enhancement will be available for customer testing in CME AutoCert+ Test Suite - MSGW Protection Enhancements.
Certification is not required for these MSGW enhancements.
Mock Trading Sessions
CME Group will offer two mock trading sessions on Saturday, May 30 and Saturday, June 6 for customers to test the MSGW enhancements in the CME Globex production environment.
Customers are required to register to participate in the mock trading session.
The mock trading session script will be announced in future CME Globex Notices.
MSGW Enhancements Overview
With MSGW Enhancements, when CME Globex detects an iLink message which spans more than one packet, CME Globex will submit the message to additional safeguard processing. This processing will add at least 3 microseconds. Currently, an iLink message can be sent in a single network packet or split across packets without additional processing.
Safeguard Process
When the MSGW receives a network packet with an incomplete message, the message is routed for additional processing to ensure the safety of the markets. This processing takes at least 3 microseconds. While the processing is underway, no other messages from that session will be processed to protect sequence number integrity.
Additional incomplete messages received during the processing window will cause the window to extend.
As a result of this new safeguard processing:
IF session AAA sends an incomplete message
THEN session BBB sends a complete message
THEN session BBB’s message may reach the match engine before session AAA’s.
Examples
Example 1 – Single Split Message
Assume the additional processing duration is 3 microseconds.
Example 2 – Multiple Split Messages
A new additional processing will be created for every split message. In the following example the same iLink session has created two additional processing.
Example 3 – Subsequent Complete Messages
When an MSGW session has a message undergoing the safeguard processing, all of the complete messages that the same session sends during that processing window will be handled in the order they were received.
Example 4 – Out-Of-Order Messages
When CME receives out-of-sequence network packet(s), all messages from TCP packet #3 onward will be incur the additional safeguard processing.
Session Logout Threshold
In cases where the iLink session undergoing additional processing exceeds the number of messages permitted, the session will be logged out and all in-flight messages will be rejected. The number of messages permitted is consistent for all iLink sessions and configured by the exchange.
When a session logout threshold is triggered:
- all resting orders are cancelled for all Cancel on Disconnect registered MSGW sessions on a best-effort basis
- all resting quotes are cancelled on behalf of Mass Quote customers
- all in-flight messages will be rejected as follows:
- CME Globex will send the Logout (tag 35-MsgType=5) message to notify client system of rejected orders, and terminate the session
- the reason for logout will be in tag 58-Text="MSGW safeguard exceeded: no. of messages" (i.e. the total number of rejected messages at the time the safeguard process reached the logout threshold).
- the sequence number from client system to CME Globex will not be incremented
- tag 369-LastMsgSeqNumProcessed will have the last client system’s sequence number processed by CME Globex prior to the safeguard process
- tag 789-NextExpecedMsgSeqNum will have the correct sequence number for the next message that the client system sends to CME Globex
- CME Globex will send the Logout (tag 35-MsgType=5) message to notify client system of rejected orders, and terminate the session
CME Group reserves the right to change the additional processing duration and/or logout threshold.
Example 5 – Session Logout
This example shows a Session Logout Threshold scenario assuming a maximum of 4 in-flight messages.
In the following scenario:
- the MSGW generates four Logout messages—one Logout for each message, but sends only the first. When the client system logs in, the Logon Acknowledgment tag 34-MsgSeqNum=204 rather than 201.
As a result, the client system may receive a Logon Confirmation (tag 35-MsgType=A) message with a sequence number higher than expected after the next client system login.
The client system cannot submit a Resend Request message to recover unsent logout messages.
- These logout messages will not be counted towards Auto Port Closure.
iLink Messaging Impacts
MSGW enhancements apply to all iLink messages. This section describes the iLink messaging changes required to support MSGW enhancements.
New FIX Tags
Two new FIX tags, tag 9553-SplitMsg and tag 5904-DelayDuration will be returned on these iLink Application messages from CME Globex to Client system:
- Execution Report Order Creation, Cancel, or Modify (tag 35-MsgType=8, tag 39-OrdStatus=0, 4 or 5)
- Execution Report Reject (tag 35-MsgType=8, tag 39-OrdStatus=8)
- Order Cancel Reject (tag 35-MsgType=9)
- Quote Acknowledgment (tag 35-MsgType=b)
- Quote Cancel Acknowledgment (tag 35-MsgType=b, tag 297-QuoteAckStatus=1, 3, 4 or 5)
- Order Mass Action Report (tag 35-MsgType=BZ)
Tag 9553-SplitMsg will be returned on the following iLink messages from CME Globex to Client system:
- Logon (tag 35-MsgType=A)
- Logout (tag 35-MsgType=5)
- Heartbeat (tag 35-MsgType=0)
- Business Level Reject (tag 35-MsgType=j)
- Session Level Reject (tag 35-MsgType=3)
- Security Definition (tag 35-MsgType=d)
Tag | Name | Req’d | Type | Max Length | Enumeration | Description |
5904 | DelayDuration | N | Int | Indicates the amount of time in nanoseconds that a message was subject to additional processing as a result of being:
Subtracting this number from tag 5979-RequestTime will represent original received time of in-flight message | ||
9553 | SplitMsg | N | Int | 1 | 0 – Split message 1 – Out-of-order message 2 – Complete message | Indicates whether a message was subject to additional processing as a result of being:
If absent, then the message was not subject to additional processing. |
New Logout Reason
When an MSGW session is undergoing additional safeguard processing and is logged out due to the number of in-flight messages, CME Globex will send a Logout message including the following tag 58=<Reject Reason> and reject all in-flight messages.
Message Type | Logout Reason | Tag 58-Text |
---|---|---|
Logout (tag 35-MsgType=5) |
| MSGW safeguard exceeded: no. of messages |
| Messages rejected due to session disconnect |
Contact Information
Certification Support for Electronic Trading (CSET)
Phone: 1 312 930 2322 (US)
Phone: 44 20 3379 3803 (London)
Phone: 65 6593 5593 (Asia)
Email: cset@cmegroup.com
Global Account Management (GAM)
Email: GAM@cmegroup.com
CME Global Account Management – North America
20 S. Wacker Dr.
Chicago, IL 60606
Phone: 1 312 634 8700
Fax: 1 312 604 9451
CME Global Account Management – Europe
One New Change, 4th Floor EC4M 9AF London UK
Phone: 44 203 379 3754
Fax: 44 203 379 3888
CME Global Account Management – Asia
One Raffles Quay
#27-10 South Tower
Singapore 048583
Phone: 65 6593 5555
Fax: 65 6550 9898
Global Command Center (GCC)
Phone: 1 800 438 8616 (US)
Phone: 44 20 7623 4747 (Europe)
Phone: 65 6532 5010 (Asia)
Email: gcc@cmegroup.com