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 |
---|