BrokerTec on CME Globex Market Functionality
This topic describes market functionality for the BrokerTec market on the CME Globex platform.
Contents
- 1 Supported Functionality
- 1.1 Inverted Pricing
- 1.2 Statistics
- 1.3 Collateral Market Value Message
- 1.4 Workups
- 1.4.1 iLink 3 Workup FIX Tag Values
- 1.4.2 MDP3 Workup FIX Tag Values
- 1.4.3 Workup Processing Rules
- 1.4.3.1 Workup Ownership
- 1.4.3.2 Workup Phases
- 1.4.3.2.1 1 - Initial Trade/Workup Initiation Phase
- 1.4.3.2.2 2 - Private Phase
- 1.4.3.2.3 3 - Public Phase
- 1.4.3.2.4 4 - Workup Termination (Come-down) Phase
- 1.4.4 Workup Examples
- 1.4.4.1 Example 1 - Full Workup Life Cycle
- 1.4.4.1.1 Initial Trade/Workup Initiation Phases
- 1.4.4.1.2 Private Phase
- 1.4.4.1.3 Public/Termination Phases
- 1.4.4.2 Example 2 - Passive Ownership Only
- 1.4.4.3 Example 3 - Sweep Processing
- 1.4.4.4 Example 4 - Private Phase Order Priority
- 1.4.4.5 Example 5 - Managed Orders (“First and Third”)
- 1.4.4.6 Example 6 - Spontaneous Workup
- 1.4.4.1 Example 1 - Full Workup Life Cycle
- 1.4.5 BrokerTec on CME Globex Display Quantity Processing
- 1.4.5.1 Display Quantity Processing Rules
- 1.4.5.2 Display Quantity Examples
- 1.4.5.3 Trade Cancel and Correction Examples
- 1.4.5.3.1 Scenario 1 - Trade Cancel
- 1.4.5.3.2 Scenario 2 - Partial Trade Cancel
- 1.4.5.3.3 Scenario 3 - Partial Trade Quantity Correction
- 1.4.5.3.4 Scenario 4 - Spread Trade With Quantity Correction
- 1.4.5.3.5 Scenario 5 - Price Correction
- 1.4.6 Bilateral Accept/Reject Trading
- 1.4.6.1 iLink Bilateral Accept/Reject FIX Message
- 1.4.6.2 Bilateral Accept/Reject Trading Examples
- 1.4.6.2.1 Example 1 - Trade Acknowledgment
- 1.4.6.2.2 Example 2 - Trade Reject
- 1.4.6.2.3 Example 3 - Partial Trade Reject
- 2 Market Integrity and Risk Controls
Supported Functionality
Functionality | US Treasuries | UK Bills | EU EGB | US Repo | EU Repo |
---|---|---|---|---|---|
Inverted Yield Pricing | When Issued | Some | |||
Inverted Repo Rate Pricing | |||||
Bilateral Trading | |||||
Mandatory Self-Match Prevention | |||||
Workup | |||||
MiFID II and/or SFTR | |||||
Mid-Session Expirations on Last Trade Date | |||||
All or None (AON) | Binary Trade | ||||
Calculation of Considerations |
Inverted Pricing
Due to market conventions, the US Treasury When Issued (WI) and some EGB Bills trade in Yield pricing, where bids are higher than offers. Additionally, the US and EU Repo markets trade in Rates, where bids are higher than offers. See: MDP 3.0 - Inverted Price Book Processing.
Statistics
BrokerTec on CME Globex supports the following statistics:
Collateral Market Value Message
BrokerTec on CME Globex supports collateral market values for all fixed income products that leverage collateral in Repo markets. The Collateral MDP message supports clean and dirty prices. The message is sent via the SBE CollateralMarketValue template in the core schema. Collateral messages are not conflated and are sent real-time. Collateral prices are published every 10 minutes.
The Collateral Market Value message is sent for Repo markets. This message maps to the Collateral Market Value template in the SBE MDP Core schema.
Workups
A Workup is a period during which all trades on an individual instrument can only occur at the Workup price. A Workup occurs upon an initial match of an aggressive and passive order (on the contra‐side). Buyers and sellers join the Workup anonymously, match orders, and execute transactions based on the initial matched trade price. The initial trade price is held for a fixed period of time after the last match on the system at that price and the matched trade price; direction of the trade and available size on either side of the order book is disseminated to all participants during the Workup.
iLink 3 Workup FIX Tag Values
The following tags relate to iLink 3 Workup processing.
More information regarding BrokerTec order entry processing can be found in the iLink 3 Binary Order Entry - BrokerTec Markets document.
Tag 820-TradeLinkID, tag 7191-Ownership and tag 6881-ManagedOrder will be added to the Execution Report - Trade Outright message for Workup processing:
Tag | Field Name | Binary Type | Binary Length | Req | Description |
---|---|---|---|---|---|
820 | TradeLinkID | UInt32NULL | 4 | N | Contains the workup ID; unique per instrument per day. TradeLinkID is also |
7191 | Ownership | Uint8 | 1 | N | Specifies the owner of the workup private phase.
|
6881 | ManagedOrder | BooleanNULL | 1 | N | Boolean: flags a managed order. Applicable only to repo fixed income markets. |
MDP3 Workup FIX Tag Values
A Workup is triggered when a trade occurs on any Workup-eligible instrument. The Workup security status (tag 35-MsgType=f) functionality is supported by the SBE template SecurityStatusWorkup60. During the private stage of a workup, the owner(s) are identified by their Order IDs (tag 37-OrderID).
See CME MDP 3.0 Market Data for more information regarding market data processing.
MDP FIX Syntax for Security Status (35=f) Workup Processing
Tag | FIX Name | Type | Semantic Type | Valid Values for BrokerTec | Description |
---|---|---|---|---|---|
270 | MDEntryPx | PRICENULL9 | Price | Workup price. | |
48 | SecurityID | Int32 | int | A unique instrument ID value will not be reused until the next trade date following an instrument expiration or deletion. | |
820 | TradeLinkID | uInt32 | int | Contains the workup ID; unique per instrument per day. TradeLinkID is also available on the iLink execution report for workups. | |
5799 | MatchEventIndicator | MatchEventIndicator | MultipleCharValue | Bitmap field of eight Boolean type indicators reflecting the end of updates for a given CME Globex event. | |
326 | SecurityTradingStatus | WorkupTradingStatus | int | 17=Ready to trade (start of session) | Identifies the trading status applicable to the instrument. |
327 | HaltReason | HaltReason | int | 0=Group schedule (default) | Indicates halt reason status due to surveillance activity. |
1174 | SecurityTradingEvent | SecurityTradingEvent | int | 0=No Event (default) | Indicates the trading status applicable to the transaction. |
Repeating Group | |||||
→37 | OrderID | uInt64 | int | Unique ID assigned by CME Globex to identify orders. | |
→54 | Side | Side | int | 1=Buy | Side of order. |
→1057 | AggressorIndicator | AggressorFlag | int | 0=Not Aggressor | Aggressor Indicator. |
Workup Processing Rules
The following section outlines workup processing rules. BrokerTec on Globex allows US Repo traders to match orders via "workups."
Workup Ownership
The following section outlines workup ownership rules.
A workup will always have exactly one private phase owner on the passive (resting) side.
The submitter of the first matched order on the passive side always becomes workup owner on that side, regardless of other orders behind in the queue at that price or whether the first match is a full or partial fill.
On a sweep, the submitter of the first resting order matched still becomes the passive owner, even though workup occurs at the least aggressive price (price of the last trade) on the sweep.
A workup can have zero or one private phase owner on the aggressive side.
The aggressor becomes workup owner only if they match against all available displayed quantity of all resting orders at the best price level.
When there is a sweep, not all orders at the last matched price need to be taken for the full displayed quantity for the aggressor to be an owner, even though the workup occurs at that final price.
Workup ownership is at the level of iLink session and tag 5392-SenderID.
Workup owners are denoted to customers sending the order via iLink tag 7191-Ownership on the private feed.
Workup Phases
A workup consists of four phases.
1 - Initial Trade/Workup Initiation Phase
This section summarizes the initial trade/workup initiation phase rules.
A trade/match event for a product enabled workup must kick off a workup period with the workup price equal to the price of the trade that has just occurred. Exceptions that will not result in a workup include:
-Trades that occur at an interim price on a sweep – the workup instead will happen at the last traded price on the sweep
-Trades in All Or None (AON) instruments in Repo will not start a workup, as those instruments are not configured for workup.
-Trades in for all other products except US Repo do not match using workups.
See CME MDP 3.0 Market Data for more information regarding market data processing.
As part of the workup initiation, the workup owner(s) are determined (see the previous workup ownership section for more information).
Workup status is at the individual tradable instrument level. A workup in one instrument has no impact on any other (related or unrelated) instruments. Workups can occur on multiple instruments at the same time.
During a workup, orders must only meet the minimum order increment for that instrument, and not the normal minimum order size. For example, a US Repo instrument may have a minimum order size 500 and minimum order increment of 50. However, during the workup, new orders submitted only need a minimum of 50. For orders that use display quantity (iLink tag 1138-DisplayQty), the display quantity must meet the minimum increment during the workup instead of the order quantity meeting the minimum increment. The workup order size is determined when market data tags 1093-LotType=2 & MinLotSize are on the security definition message (tag 35-MsgType=d).
2 - Private Phase
This section summarizes the private phase rules.
During the private phase, the workup owner(s) can add additional orders on their respective side, and if enough quantity exists, additional matches can occur only between the workup owners.
Any bids and offers entered by traders other than the workup owners will not match during the private phase and are queued for matching in the public phase.
Any unmatched quantity from the workup owners entered during the private phase retains priority at the top of book, even if added during the workup with a later timestamp than other resting orders at the best price.
The private phase has a fixed timer configured by product
The private phase is denoted by the market data security status message (tag 326-SecurityTradingStatus=201 in tag 35-MsgType=f) via the SBE template SecurityStatusWorkup60. Additionally, the security status includes workup price (tag 270-MDEntryPx), the side (tag 54-Side) and order ID (tag 37) of the workup owner(s).
Additional “first and third” benefits for the passive workup owners occur when iLink orders are submitted with tag 6881-ManagedOrder=Y. When multiple managed orders are resting at the workup price for a passive workup owner, and there are orders from other participants in between when the private phase begins, the resting managed orders from the workup passive owner move above resting orders from other participants. Any remaining quantity for managed orders which improve priority during the private phase retain their improved priority after the workup ends.
Additional orders entered by the workup owner on the aggressive side during the private phase will be placed, at the top of the book, or if any residual left after the initial workup order.
3 - Public Phase
This section summarizes the public phase rules.
After the private phase expires, a public phase begins in which all participants can join the workup and any new orders, along with any queued orders which couldn’t match during the private phase, can now match at the workup price.
The public phase is denoted by MDP security status message (tag 35-MsgType=f & tag 326-SecurityTradingStatus=202) via the SBE template SecurityStatusWorkup60.
The public phase has a fixed timer configured by product.
Any trade which occurs during the public phase can extend the workup if product is configured with an extension timer. The public extension timer configuration will be available via Reference Data API.
iLink 3 Binary Order Entry - Business Layer orders live for the remainder of the workup, including extensions, so can last on the book like a resting order for some duration. Fill and Kill Immediate (FAKI) and FOK orders are either executed immediately or are eliminated.
Orders entered during the workup with prices better than workup price are converted to the workup price, and are only available for matching at the workup price.
4 - Workup Termination (Come-down) Phase
This section summarizes the termination phase rules.
Workup termination is the end of the workup
A workup will end naturally when all timers are expired (private -> public -> any public extensions)
The termination phase is denoted by the MDP security status (tag 35-MsgType=f & tag 1174-SecurityTradingEvent=7) via the SBE template SecurityStatusWorkup60 unless end of the trading session occurs.
A workup will terminate at the end of day trading for an instrument, and is denoted by MDP security status message (tag 35-MsgType=f , tag 1174-SecurityTradingEvent=7, tag 326-SecurityTradingStatus=18, 327-HaltReason=2) via the SBE template SecurityStatusWorkup60.
At the end of the workup, the following occurs:
-Any remaining quantity on FAK orders will be automatically eliminated
-Any orders which have a remaining quantity below the minimum order size are automatically eliminated
-Any Limit orders which were originally submitted at a price better than the workup price are converted back to their original limit price and will enter the book at that price – which could match with another resting order at that price and trigger a new spontaneous workup.
Workup Examples
The following section provides examples for workup processing.
Example 1 - Full Workup Life Cycle
The following example provides a fully phased workup life cycle for a workup eligible instrument. The example has the following sections:
Initial Trade/Workup Initiation Phases
Private Phase
Public/Termination Phases
Initial Trade/Workup Initiation Phases
This section outlines the initial trade and workup initiation phases. Below trader anonymously A123 sends an order that matches orders from M456 and Z789 which causes the workup private phase to begin. A123 matches all the displayed quantity for all resting orders at the best price level. Consequently, A123 anonymously becomes the aggressor owner. Z789 is the first matched order on the passive side. Therefore, trader Z789 anonymously becomes the passive owner. A workup price of 100 is assigned.
Private Phase
In this section, traders A123 and Z789 are able to trade orders due to their workup ownership. Next, trader M456 submits an order, however it does not trade because M456 is not a workup owner.
Public/Termination Phases
In this section, once the private phase ends and the public phase begins, existing non-ownership quantity from trader M456 matches with an open order from trader A123.
Example 2 - Passive Ownership Only
In this example, trader A123 sends an order that trades with M456 and Z789. The trade begins a private phase with Z789 becoming the passive owner. There is no aggressive owner due to trader A123 only matching a partial size of the bid orders at the best price.
Example 3 - Sweep Processing
In this example, a sweep occurs and passive ownership is assigned the passive side with the best price of 2.03 despite assigned workup price of 2.04.
Example 4 - Private Phase Order Priority
In this example, unmatched quantity from the workup owners entered during the private phase retains priority at the top of book, even though it has a later timestamp than other resting non-owner orders at the best price.
Example 5 - Managed Orders (“First and Third”)
In this example trader Z789 sends a managed order (tag 6881-ManagedOrder=Y). After trader Z789 becomes the passive owner, the managed orders improve their book priority.
Example 6 - Spontaneous Workup
In the example below, trader A123 sends a bid price (2.01) that is better than the workup price (2.02). Consequently, A123's order price is updated from 2.01 to 2.02. Once the workup is terminated, A123's order price is reverted to 2.01 which causes a trade with P321 and a new workup.
BrokerTec on CME Globex Display Quantity Processing
BrokerTec on CME Globex allows display quantity orders. The display quantity is the quantity shown to the market as specified by the customer, gradually exposing the remaining quantity until the entire order quantity is depleted. This section outlines display quantity behavior for workup and non-workup processing for CME Globex, iLink 3, and MDP3 systems.
Terminology
Term | Definition |
---|---|
Display Quantity | A client-defined representing the portion of the order quantity to display to the market. Display quantity is submitted via iLink tag 1138-DisplayQty in a new order message. Display quantity is sent to market data consumers. |
Remaining Quantity | The portion of the order quantity that is not displayed to the market. |
Total Quantity | The sum of display quantity and remaining quantity. The total order quantity is submitted via iLink tag 38-OrderQty in a new order message and tag 151-LeavesQty in subsequent fill messages. |
Replenish | A process which moves an order’s remaining quantity to its display quantity. |
Display Quantity Processing Rules
The following are rules for display quantity processing:
Non-Workup
Outside of a workup, BrokerTec on CME Globex uses the following methodology for fills:
for an aggressing order, fills occur first for all available display quantity at the top price level
for additional quantity, fills occur for the remaining order quantity order by order, regardless of shown size amount
a display quantity increase causes a loss of priority
if an order is submitted with the display quantity lower than the instrument's minimum order quantity (tag 969-MinPriceIncrement) the order will be rejected.
remaining quantity can be increased at any time without loss of priority (exception: US Repo)
Workup
If a workup has been initiated, BrokerTec on CME Globex uses the following fill methodology:
for subsequent aggressing orders inside the workup, fills occur for total quantity (display quantity plus remaining quantity) order by order, regardless of shown size amount.
the remaining order quantity replenishes to the full display quantity (if enough order quantity is available) immediately on all fills, without loss of priority. A full market data book refresh occurs regardless of whether the display quantity is fully matched or partially matched.
total quantity can be decreased without loss of priority.
display quantity can be decreased without loss of priority.
if the total quantity falls below the display quantity, the display quantity and total quantity will be equal.
For US Repo workup owner(s) during the private phase, any new orders added are inserted above resting orders for other participants. Accordingly, the passive workup owner during a private phase can also increase the display quantity or remaining quantity on orders at the top of the book without any loss of priority.
The following minimum order quantity rules apply to a workup:
For incoming orders, if a fill causes the total quantity, and therefore remaining display quantity, to be below the product's minimum order quantity (tag 969-MinPriceIncrement) via the MDP3 security definition message (35=d), it is immediately removed from the market.
For workup products, during the private phase for workup owners, incoming and resting orders can have a display quantity less than the product's minimum order size, and must only be validated against the minimum increment (tags 1093-LotType=2 & 1231-MinLotSize) via the MDP3 security definition message (35=d).
At the end of the workup, if and order's total quantity is lower than the minimum order quantity, then the order will be removed from the market.
Display Quantity Examples
The examples below illustrate how display quantity is processed for BrokerTec on CME Globex.
Example 1 - Display Quantity Fill Outside of Workup
The following example illustrates display quantity fill behavior outside of a workup.
Starting Ask Side Book
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 123 | 2.04 | 10 | 20 | 30 |
2 | 456 | 2.04 | 25 | 25 | 50 |
3 | 789 | 2.04 | 15 | 0 | 15 |
4 | 1479 | 2.04 | 5 | 40 | 45 |
Totals: | 55 | 85 | 140 |
New Order Entered
A new bid side order is entered for a quantity of 80 at a price of 2.04.
The following updates occur:
Pass 1 - Fill Display Quantity
Results in the entire display quantity (55) getting filled.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 123 | 2.04 | 10 0 | 20 | 30 20 |
2 | 456 | 2.04 | 25 0 | 25 | 50 25 |
3 | 789 | 2.04 | 15 0 | 0 | 15 0 |
4 | 1479 | 2.04 | 5 0 | 40 | 45 40 |
Totals: | 55 0 | 85 | 140 85 |
Pass 2 - FIFO Fill Remaining Quantity
Next, the remaining bid order quantity of 25 will be fulfilled with the remaining quantity.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 123 | 2.04 | 0 | 20 0 | 20 0 |
2 | 456 | 2.04 | 0 | 25 20 | 25 20 |
3 | 789 | 2.04 | 0 | 0 | 0 |
4 | 1479 | 2.04 | 0 | 40 | 40 |
Totals: | 0 | 85 60 | 85 60 |
Replenish Display Quantity
Finally, the display quantity is replenished from the remaining quantity. The resulting display quantity is sent to market data consumers.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 456 | 2.04 | 0 20 | 20 0 | 20 |
2 | 1479 | 2.04 | 0 5 | 40 35 | 40 |
Totals: | 0 25 | 60 35 | 60 |
Example 2 - Display Quantity Fill within Workup
The following example illustrates display quantity fill behavior after a workup has been initiated.
Starting Ask Side Book
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 254 | 2.01 | 10 | 20 | 30 |
2 | 395 | 2.01 | 25 | 25 | 50 |
3 | 680 | 2.01 | 15 | 0 | 15 |
4 | 2471 | 2.01 | 5 | 40 | 45 |
Totals: | 55 | 85 | 140 |
New Order Entered
A new bid side order is entered for a quantity of 80 at a price of 2.01.
Fill Display and Remaining Quantity
A fill occurs for the total quantity order by order, regardless of shown size amount.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 254 | 2.01 | 10 0 | 20 0 | 30 0 |
2 | 395 | 2.01 | 25 0 | 25 0 | 50 0 |
3 | 680 | 2.01 | 15 | 0 | 0 |
4 | 2471 | 2.01 | 5 | 40 | 45 |
Totals: | 55 20 | 85 40 | 140 60 |
Resulting Book Update
The following display quantity is sent to market data consumers.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 680 | 2.01 | 15 | 0 | 15 |
2 | 2471 | 2.01 | 5 | 40 | 45 |
Totals: | 20 | 40 | 60 |
Example 3 - Partial Match Display Quantity Replenish
In this example, the remaining order quantity replenishes to the full display quantity immediately on a partial fill, without any loss of priority. A market data book replenish occurs regardless of whether the display quantity is fully matched or partially matched.
Starting Ask Side Book
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 727 | 2.06 | 10 | 20 | 30 |
2 | 975 | 2.06 | 25 | 25 | 50 |
3 | 1782 | 2.06 | 15 | 0 | 15 |
4 | 2997 | 2.06 | 5 | 40 | 45 |
Totals: | 55 | 85 | 140 |
New Order Entered
A new bid side order is entered for a quantity of 5 at a price of 2.06.
Replenish Display Quantity
The order matches with the bid side. Consequently, a trade update is sent to market data consumers.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 727 | 2.06 | 10 (Replenished) | 20 15 | 30 25 |
2 | 975 | 2.06 | 25 | 25 | 50 |
3 | 1782 | 2.06 | 15 | 0 | 15 |
4 | 2997 | 2.06 | 5 | 40 | 45 |
Totals: | 55 | 85 80 | 140 135 |
Example 4 - BrokerTec Remaining Quantity Increase with No Priority Loss (Non-US Repo)
In this example, the client system anonymously modifies the total quantity from 30 to 60 for a non-US Repo BrokerTec instrument. Remaining quantity increases from 20 to 50. No loss of order priority occurs.
Starting Ask Side Book
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 253 | 2.00 | 10 | 20 | 30 |
2 | 469 | 2.00 | 25 | 25 | 50 |
3 | 892 | 2.00 | 15 | 0 | 15 |
4 | 924 | 2.00 | 5 | 40 | 45 |
Totals: | 55 | 85 | 140 |
Order Modified
The existing Order ID 253 total quantity is increased from 30 to 60.
Increase Total Quantity
Order priority is not lost and the update is not communicated to market data consumers.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 253 | 2.00 | 10 | 20 50 | 30 60 |
2 | 469 | 2.00 | 25 | 25 | 50 |
3 | 892 | 2.00 | 15 | 0 | 15 |
4 | 924 | 2.00 | 5 | 40 | 45 |
55 | 85 115 | 140 170 |
Example 5 - BrokerTec Remaining Quantity Increase with Priority Loss (US Repo)
In this example, the client system modifies the total quantity from 30 to 70 for a US Repo instrument. The remaining quantity increases from 20 to 60. There is an immediate loss of priority because the total quantity increases for a client system that is not a workup owner.
Starting Ask Side Book
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 312 | 1.98 | 10 | 20 | 30 |
2 | 773 | 1.98 | 25 | 25 | 50 |
3 | 927 | 1.98 | 15 | 0 | 15 |
4 | 1022 | 1.98 | 5 | 40 | 45 |
Totals: | 55 | 85 | 140 |
Order Modified
The existing Order ID 312 total quantity is increased from 30 to 70.
Increase Total Quantity
The change in priority is communicated to market data consumers.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
2 1 | 773 | 1.98 | 25 | 25 | 50 |
3 2 | 927 | 1.98 | 15 | 0 | 15 |
4 3 | 1022 | 1.98 | 5 | 40 | 45 |
1 4 | 312 | 1.98 | 10 | 20 60 | 30 70 |
Totals: | 55 | 85 125 | 140 |
Example 6 - BrokerTec Remaining Quantity Increase with No Priority Loss (US Repo Workup Owner)
In this example, a workup owner modifies order 117 to decrease the display quantity (tag 1138-DisplayQty) from 20 to 10 which increases the remaining quantity from 40 to 50. Consequently, there is no loss of priority because the total quantity does not increase.
Starting Ask Side Book
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 117 (Workup Owner) | 2.00 | 20 | 40 | 60 |
2 | 364 | 2.00 | 25 | 25 | 50 |
3 | 752 | 2.00 | 15 | 0 | 15 |
4 | 1022 | 2.00 | 5 | 40 | 45 |
Totals: | 65 | 105 | 170 |
Order Modified
The display quantity for Order ID 117 decreases from 20 to 10.
Increase Remaining Quantity
The remaining quantity increases from 40 to 50 for order ID 117. Order priority is not lost and the display quantity update is communicated to market data consumers.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 117 (Workup Owner) | 2.00 | 20 10 | 40 50 | 60 |
2 | 364 | 2.00 | 25 | 25 | 50 |
3 | 752 | 2.00 | 15 | 0 | 15 |
4 | 1022 | 2.00 | 5 | 40 | 45 |
Totals: | 65 55 | 105 115 | 170 |
Example 7 - BrokerTec Display Quantity Increase Outside of Workup with Priority Loss
In this example, the client system modifies the display quantity from 10 to 20 outside of a workup. Consequently, a loss of order priority occurs.
Starting Ask Side Book
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 253 | 2.07 | 10 | 100 | 110 |
2 | 469 | 2.07 | 25 | 25 | 50 |
3 | 892 | 2.07 | 15 | 0 | 15 |
4 | 924 | 2.07 | 5 | 40 | 45 |
Totals: | 55 | 165 | 220 |
Order Modified
The existing Order ID 253 display quantity is increased from 10 to 20.
Increase Remaining Quantity
The display quantity increases from 10 to 20 for order ID 253. Consequently, order priority is lost.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
2 1 | 469 | 2.07 | 25 | 25 | 50 |
3 2 | 892 | 2.07 | 15 | 0 | 15 |
4 3 | 924 | 2.07 | 5 | 40 | 45 |
1 4 | 253 | 2.07 | 10 20 | 100 90 | 110 |
Totals: | 55 65 | 165 155 | 220 |
Example 8 - BrokerTec Display Quantity Increase within a Workup
In this example, a workup owner within the private phase increases the display quantity from 5 to 10. Consequently, no loss of order priority occurs.
Starting Ask Side Book
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 112 | 2.09 | 5 | 105 | 110 |
2 | 397 | 2.09 | 25 | 25 | 50 |
3 | 551 | 2.09 | 15 | 0 | 15 |
4 | 1022 | 2.09 | 5 | 40 | 45 |
Totals: | 50 | 170 | 220 |
Order Modified
The existing Order ID 112 display quantity is increased from 5 to 10.
Increase Display Quantity
The remaining quantity increases from 5 to 10 for order ID 112. Order priority is not lost and the display quantity update is communicated to market data consumers.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 112 | 2.09 | 5 10 | 105 100 | 110 |
2 | 397 | 2.09 | 25 | 25 | 50 |
3 | 551 | 2.09 | 15 | 0 | 15 |
4 | 1022 | 2.09 | 5 | 40 | 45 |
Totals: | 50 55 | 170 165 | 220 |
Example 9 - BrokerTec Display Quantity Increase After Fill
In this example, Order ID 727 has the highest order priority and has a display quantity of 10. Order ID 727 receives a fill which updates the display quantity to 5. Next, Order ID 727 is modified to increase the total quantity to 20 and increase the display quantity to 10. Consequently, order priority is lost due to the display quantity increase from 5 to 10.
Starting Ask Side Book
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 727 | 2.06 | 10 | 5 | 15 |
2 | 975 | 2.06 | 25 | 25 | 50 |
3 | 1782 | 2.06 | 15 | 0 | 15 |
4 | 2997 | 2.06 | 5 | 40 | 45 |
Totals: | 55 | 70 | 125 |
New Order Entered
A new bid side order is entered for a quantity of 10 at a price of 2.06.
Replenish Display Quantity
The order matches with the ask side and an update is sent to market data consumers. The Order ID 727 display quantity is reduced from 10 to 5. iLink sends tag 151-LeavesQty equal to 5 in the fill report to Order ID 727 to denote the quantity left in the market. If the LeavesQty is lower than the previously set display quantity then a client iLink system can leverage the LeavesQty value to determine the quantity displayed to market data consumers.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 727 | 2.06 | 10 5 (Replenished) | 5 0 | 15 5 |
2 | 975 | 2.06 | 25 | 25 | 50 |
3 | 1782 | 2.06 | 15 | 0 | 15 |
4 | 2997 | 2.06 | 5 | 40 | 45 |
Totals: | 55 50 | 70 65 | 125 115 |
Order Modification
Order ID 727 is modified to increase the total quantity (iLink tag 38-OrderQty) to 20 and results in the display quantity (iLink tag 1138-DisplayQty) being increased to 10.
Order Modification Result
The order modification causes the display quantity to increase from 5 to 10. Consequently, order priority is lost. The updated book priority and display quantity are sent to market data consumers.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
2 1 | 975 | 2.06 | 25 | 25 | 50 |
3 2 | 1782 | 2.06 | 15 | 0 | 15 |
4 3 | 2997 | 2.06 | 5 | 40 | 45 |
1 4 | 727 | 2.06 | 5 10 | 0 10 | 0 20 |
Totals: | 50 55 | 65 75 | 115 130 |
Example 10 - BrokerTec Display Quantity Decrease with No Priority Loss (Workup Owner)
In this example, a workup owner modifies order 189 to decrease the display quantity (tag 1138-DisplayQty) from 20 to 10. This modification increases the remaining quantity from 50 to 60. Consequently, there is no loss of priority.
Starting Ask Side Book
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 189 | 2.03 | 20 | 50 | 70 |
2 | 264 | 2.03 | 25 | 25 | 50 |
3 | 527 | 2.03 | 15 | 0 | 15 |
4 | 914 | 2.03 | 5 | 40 | 45 |
Totals: | 65 | 115 | 180 |
Order Modified
For Order ID 189, the display quantity decreases from 20 to 10.
Increase Remaining Quantity
The remaining quantity increases from 50 to 60 for Order ID 189. Order priority is not lost and the display quantity update is communicated to market data consumers.
Priority | Order ID | Price | Display Quantity | Remaining Quantity | Total Quantity |
---|---|---|---|---|---|
1 | 189 | 2.03 | 20 10 | 50 60 | 70 |
2 | 264 | 2.03 | 25 | 25 | 50 |
3 | 527 | 2.03 | 15 | 0 | 15 |
4 | 914 | 2.03 | 5 | 40 | 45 |
Totals: | 65 55 | 115 125 | 180 |
BrokerTec Trade Cancel and Correction Functionality
CME Globex supports in-session trade correction for outright and spread trades and provides a common messaging identifier that links trades across order entry and market data.
For MDP3 the trade summary, electronic volume, high/low, and Intraday VWAP statistics will be updated for canceled and corrected trades.
If the cancelled trade is the only trade of the day, trade statistics are deleted [279MdUpdateAction=2 (Delete)].
If the cancelled trade is not the only trade of the day, trade statistics are adjusted [tag 279-MDUpdateAction=0 (New)].
MDP3 daily average VWAP will reflect cancellations/corrections disseminated; however, already published daily average VWAP are not resent.
More information regarding these MDP3 messages can be found in the CME Globex Broker Market Data document.
iLink3 trade cancel and corrections are communicated via the iLink 3 Execution Report - Trade Addendum Outright, iLink 3 Execution Report - Trade Addendum Spread, iLink 3 Execution Report - Trade Addendum Spread Leg messages. Additionally, EU Repo and Gilt markets support Bilateral accept/reject trade capabilities via iLink. US Repo markets do not send iLink execution reports.
Trade Cancel and Correction Examples
The following section provides examples for trade cancels and corrections.
Scenario 1 - Trade Cancel
In this example, an ask side aggressor order trades with a bid side order. Next the trade is canceled and an update is sent to market data participants.
Scenario 2 - Partial Trade Cancel
In this example, an ask side aggressor order trades with two bid side orders. Next, trade (37=3434) is canceled and trade (37=1212) remains filled. After the cancellation, an update is sent to market data participants.
Scenario 3 - Partial Trade Quantity Correction
In this example, an ask side aggressor order trades with two bid side orders. Next, the trade quantity for Order ID 1212 is reduced from 300 to 100. After the quantity adjustment, an update is sent to market data participants.
Scenario 4 - Spread Trade With Quantity Correction
In this example, an ask side aggressor order trades with a bid side orders. Next, the spread trade quantity for Order ID 1212 is reduced from 200 to 100. After the quantity adjustment, an update is sent to market data participants for the spread and associated legs.
Scenario 5 - Price Correction
In this example, an ask side aggressor order trades with a side order. Next, the trade price for Order ID 1212 is reduced from 100 to 99. After the price correction, an update is sent to market data participants.
Bilateral Accept/Reject Trading
EU Repo and Gilt Repo markets support bilateral trade accept/reject capabilities via the iLink 3 Execution Acknowledgment (35=BN) message.
The following processing rules apply to bilateral trade accept/reject:
A client session can only reject a trade within a configured time interval. The time interval is available via the bilAccRejTimer attribute in Reference Data API.
If a trade is not rejected within the time interval, the trade is automatically accepted
Client systems can reject a previously accepted trade if still within the time interval
Once a trade has been rejected, it cannot be re-accepted
A trade rejection sent by a client system outside of the time interval will be rejected with a Business Level Reject (35=j, 380=0) message
iLink Bilateral Accept/Reject FIX Message
Following a trade, the counterparty client system sends an iLink 3 Execution Acknowledgment to CME Globex indicating the given trade has been accepted or rejected.
Bilateral Accept/Reject Trading Examples
The following section provides examples for Bilateral Accept/Reject Trading.
Example 1 - Trade Acknowledgment
In this example, session ABC sends a limit order with a quantity of 500 that matches with an order from session XYZ. Once the trade occurs, the trade reject countdown begins. In this example both sessions ABC and XYZ accept the trade. When the reject time interval ends, neither session can reject the trade.
Example 2 - Trade Reject
In this example, session ABC sends a limit order with a quantity of 500 that matches with an order from session XYZ and both sessions accept the trade. Next, session ABC rejects the trade, which cancels the trade.
Example 3 - Partial Trade Reject
In this example, session ABC sends a limit order with a quantity of 500 that matches with order from sessions MNO (200) and XYZ (300). Next, session MNO rejects the trade, which causes a partial trade cancel. Traded quantities for sessions ABC and XYZ are not canceled.
Market Integrity and Risk Controls
BrokerTec markets on CME Globex have the following CME Globex Market Integrity and Risk Controls enabled.
Cancel on Disconnect
Cancel on Disconnect (COD) monitors for involuntary lost connections between iLink sessions and the CME Globex platform. If a lost connection is detected, COD cancels all resting orders for the affected session on a best-efforts basis.
It is the user's responsibility to reenter all orders that have been cancelled by COD.
Automated Port Closure
CME Globex will automatically logout and close both the primary and backup ports for any iLink or Drop Copy session on the fifth invalid Logon (tag 35=A) attempt in 60 seconds. Logon messages may be invalid due to:
Incorrect sequence number
Invalid password
Invalid heartbeat interval
Malformed message
Required tag missing or sent with invalid value
Invalid SenderCompID (iLink tag 49)
Automated Port Closure can also be triggered by customers sending messages other than a Logon when the session has not been successfully logged in.
Messaging Controls
Extraordinary and excessive messaging rates generated by a client system can negatively impact all market participants (for example, by creating performance latencies). CME Globex Messaging Controls address this risk by:
supporting valid trading activity, and
preventing a malfunctioning trading system from impacting the markets.
Messages submitted by the client system on an iLink session are monitored by the number of messages sent over a predefined time interval. The time interval begins with the first message processed. At the end of the interval, if no violation has occurred, the message count and interval reset pending the next message processed.
If an iLink session exceeds one or more of the thresholds, subsequent messages are rejected via a Session Level Reject (tag 35-MsgType=3) message until the messages per second (MPS) rate falls below the threshold. Exceeding a larger predefined threshold will result in a logout of the offending iLink session.
Messaging Thresholds for BrokerTec Markets
Message Type | Reject Threshold | Logout Threshold | Interval |
---|---|---|---|
Cancel Request (tag 35-MsgType=F) Order Mass Action Request (tag 35=CA) | 1000MPS | 1500MPS | Three seconds |
All other application messages | 500MPS | 750MPS | Three seconds |
Mass Quote and Quote Cancel messages | 350MPS | 750MPS | Three seconds |
Administrative messages | 100MPS | 200MPS | Three seconds |
Drop Copy messages | 100MPS | 200MPS | Three seconds |
For more information on CME Globex Messaging Controls, refer to: Messaging Controls.
Price Banding
Price Banding automatically monitors new orders and order modifies to help prevent erroneous or unintended trades, using a price reasonability calculation.
A Price Band Variation (PBV) is a static value that varies by product. It is symmetrically applied to orders on both sides of the market to determine the Price Band Variation Range (PBVR). With each price change, the PBVR is recalculated and the new range is applied. The CME Globex platform rejects all bids and offers outside the PBVR.
Only US Treasury Active outright instruments use Price Banding.
Price banding for BrokerTec Market instruments is identical to futures price banding, with the following exception:
Since BrokerTec RV Curve and Butterfly instruments utilize yield-spread based pricing, Price Banding and Price Banding reject messages correspond to relative yield levels and are inverted in price terms. For example, a High Band reject corresponds to the order being placed well below the market (high yield - low price) and vice versa.
For more information on Price Banding, refer to GCC Price Banding & Limits and Banding.
Price Limits
Price Limits are the maximum price range permitted for an instrument during a single trading session. Trading limits are set by CME Group for all BrokerTec markets on CME Globex. The Daily Limit Adjustment (DLA) program calculates and applies new high and low price limits during a trading session.
For more information on Price Limits, refer to Limits and Banding.
In-Flight Mitigation
In-flight mitigation (IFM) is an optional feature on CME Globex that allows client systems submitting cancel/replace messages to prevent overfilling in the event that the original order is filled while the cancel/replace message is "in-flight" during processing.
For more information on IFM, refer to: iLink Order Cancel-Replace and In-Flight Mitigation
Order Size
CME Globex enforces minimum and maximum order sizes for all BrokerTec instruments. The minimum and maximum order sizes for each instrument is available in the CME Reference Data API (RD API). Orders that exceed the maximum size, or are smaller than the minimum size, will be rejected. Some BrokerTec instruments also support a mid-trading-session change to minimum or maximum order size, which is also detailed in the RD API.
For more information on using CME Reference Data API for product and instrument information, refer to: CME Reference Data API Version 3.
Duplicate Order Prevention
The Securities Exchange Act Rule 15c35 – Risk Management Controls for Brokers or Dealers with Market Access requires that financial risk management controls and supervisory procedures be reasonably designed to systematically limit the financial exposure of the broker dealer that could arise as a result of market access. The iLink 3 duplicate order check is designed to address this risk by:
Supporting valid trading activity, and
Preventing the entry of erroneous orders by rejecting orders that that indicate duplicative orders over a short period of time.
Market and Instrument States
The following Security Status messages (tag 35-MsgType=f) will be supported on BrokerTec on CME Globex. See more information regarding market and instrument states.
Market | Security Status Type |
---|---|
US Actives | Ready to trade (start of session) |
Close | |
Trading Halt | |
Not available for trading | |
EGBs | Ready to trade (start of session) |
Close | |
Trading Halt | |
Not available for trading | |
US Repo | Ready to trade (start of session) |
Close | |
Trading Halt | |
Private Workup | |
Public Workup | |
Not available for trading | |
EU Repo | Ready to trade (start of session) |
Close | |
Trading Halt | |
Not available for trading |
Self-Match Prevention
BrokerTec markets on CME Globex support four different Self-Match Prevention (SMP) variants:
Product | Self-Match Prevention Variant |
---|---|
US Treasury Actives | Classic SMP |
EGB | Mandatory GFID with SMP Instructions |
US Repo | Mandatory GFID with Locked Markets |
EU Repo | Mandatory GFID with Cancel Resting |
Classic SMP
US Treasury markets offer the classic Self-Match Prevention feature, including tag 2362-SelfMatchPreventionID and tag 8000-SelfMatchPreventionInstruction. With Self-Match Prevention Instruction, clients can choose if, in a self-match, the resting or the aggressing order should be cancelled. If no instruction is provided, the resting order is cancelled.
Clients can configure as many Self-Match Prevention IDs as desired for their business structure.
For full details, refer to: CME Globex Self-Match Prevention.
Mandatory GFID with SMP Instructions
EGB markets prohibit orders from the same GFID from trading against each other. In the event that two orders from the same GFID would match, the Self-Match Prevention Instruction on the aggressing order is triggered. If the aggressing order does not include an Self-Match Prevention Instruction, the resting order will be cancelled and the match event will proceed. See more information on tag 8000-SelfMatchPreventionInstruction.
Only tag 8000-SelfMatchPreventionInstruction is supported in EGB markets.
Mandatory GFID with Locked Markets
US Repo markets prohibit orders from the same GFID from trading against each other. In the event that two orders from the same GFID would match, the trade is prevented and both orders will rest on the book. The market data will reflect a "locked" market, where the bid and ask top of book are at the same price level.
Neither tag 2362-SelfMatchPreventionID nor tag 8000-SelfMatchPreventionInstruction are supported in US Repo Markets.
Mandatory GFID with Delete Resting
EU Repo markets prohibit orders from the same GFID from trading against each other. In the event that two orders from the same GFID would match, the resting order will be cancelled.
Neither tag 2362-SelfMatchPreventionID nor tag 8000-SelfMatchPreventionInstruction are supported in EU Repo Markets.
Unexecuted Order to Transaction Ratio
BrokerTec calculates the ratio of unexecuted orders to transaction for each of its participants at the end of every trading session in both (i) volume terms and (ii) number terms:
Volume terms: (Total volume of orders/Total volume of transactions) - 1
Number terms: (Total number of orders/Total number of transactions) - 1
Unexecuted orders to transaction ratios are monitored against the maximum thresholds set out in the below table, which have been determined taking into account the nature and liquidity of instruments on the BrokerTec and normal trading patterns.
Product | Maximum ratio in terms of numbers | Maximum ratio in terms of volume |
---|---|---|
EGB Cash | 3,500,000 | 3,400,000 |
Repo GC | 900 | 8,000 |
Repo Specials | 900 | 8,000 |
BSB | 900 | 8,000 |
GC BSB | 900 | 8,000 |
These thresholds are subject to ongoing review and calibration. Participants will be notified via the appropriate channels of any changes to these thresholds.
How was your Client Systems Wiki Experience? Submit Feedback
Copyright © 2024 CME Group Inc. All rights reserved.