iLink - Trade Correction

CME Globex supports in-session trade correction for outright and spread trades and provides a common messaging identifier that links trades across order entry, market data, and CME Clearing.

Trade Correction messaging supports:

  • A Common Trade ID that links each trade execution across CME Globex and through CME Clearing as follows:

    • iLink tag 37711-MDTradeEntryID

    • MDP 3.0 tag 37711-MDTradeEntryID

    • CME STP and CME STP FIX MdtradeentryID

  • Real-time trade price adjustments reporting to participating traders and market as a whole via iLink and MDP 3.0 messages.

  • Trade Correction can only be initiated by a customer calling the GCC.

  • The GCC reserves the right to change spread leg prices for all legs or some of the legs—for example affected legs in an implied trade—to minimize market disruption and preserve trade integrity.

  • Trade corrections are only performed for current session transactions on CME Globex. Trades from a prior session cannot be corrected once the new session starts.


Common Identifier

A common identifier tag 37711-MDTradeEntryID associates order routing, market data, and Clearing messages for a given trade.

Trade Adjustment for Outrights and Spreads

Trade price adjustments for trades can be performed by CME Operations during a given trading session and are communicated to customers via iLink and MDP 3.0 messages.

Original Secondary Execution ID

Tag 9703-OriginalSecondaryExecID will contain the tag 527-SecondaryExecID value from the original trade.

Secondary Execution ID

Of the four trade correction scenarios listed below, tag 527-SecondaryExecID will increment in scenarios 1 and 2 in the Trade Correction message.

Correction is made to:

  1. Spread and all legs

  2. Spread and some legs

  3. All legs only

  4. Some legs only

A trade correction is assigned a new tag 17-ExecID value, with the 9 right-most characters from the previous tag 17-ExecID value sent in tag 19-ExecRefID.

Spread Trade Adjustment Illustrated Example

The following diagram shows an example of a Trade Correction for a spread and one leg and how the new common identifier and other trade correction values populate across iLink order entry and MDP 3.0 market data messages.

This diagram depicts only the order entry messages for Trader A to demonstrate the new order entry message values, and does not show the related trade counterparties.

Trade Correction Scenarios and Messaging Examples

The following examples show how trade summary data is sent according to various types of order matching scenarios.

Scenario 1 - Outright Trade Correction - Many Trades

Given the following:

  • The instrument has traded four times since the beginning of the session:

    • TradeID=1, TradePx =100, TradeQty=5, MDTradeEntryID=1123

    • TradeID=2, TradePx =99, TradeQty=25, MDTradeEntryID=1179

    • TradeID=3, TradePx =92, TradeQty=31, MDTradeEntryID=1267

    • TradeID=4, TradePx =99, TradeQty=29, MDTradeEntryID=1399

  • Market data statistics prior to modification:

    • electronic volume=90

    • high trade px=100

    • low trade px=92

1. GCC modifies trade price of previously reported fill for the instrument with TradeID=1, MDTradeEntryID=1123, New TradePx =95, New TradeQty=5 (no change)

2. Order Entry messages

Trade Correction Notice for Trader A

8=FIX.4.2 9=221 35=8 34=0 49=CME 50=G 52=20120121-10:25:17.013 56=FB1135 57=dummy 143=Brio
1=TEST 6=0 11=FB1173433 14=0 17=1177:7805 19=36 20=2 31=95 32=5 37=231 39=G 48=CME003206521 54=1 55=ON 60=20120121-10:25:16.948 75=20120124 107=ONF2 C10100 150=G 167=OPT 393=0 442=1 9717=FB117343310=156

Trade Correction Notice for Trader B

8=FIX.4.2 9=221 35=8 34=0 49=CME 50=G 52=20120121-10:25:17.013 56=FB1135 57=dummy 143=Brio  1=TEST 6=0 11=FB1173434 14=0 17=1177:7806 19=36 20=2 31=95 32=5
37=135 39=G 48=CME003206521 54=2 55=ON 60=20120121-10:25:16.948 75=20120124 107=ONF2 C10100 150=G 167=OPT 393=0 442=1 9717=FB1173434 10=161

3. Market Data message generated:

  • Trade Summary Message

35=X 60=<TransactTime> 5799=00000001 268=1
279=1 269=2 48=320652 83=123 270=95 (New Price) 271=5 (Qty- not changed) 346=5797=0 (no aggressor) 37711=1123

37705=2 37=231 32=5 (FillQty, in this case didn't change) 37=135 32=5 (FillQty, in this case didn't change)

  • No electronic volume update is generated

  • SessionStatistics message is generated - High Trade price change from 100 to 99.

35=X 60=<TransactTime>9 5799=10000100 268=1
279=0 269=7 48=320652 83=124 270=99

4. Market data statistics after the event:

  • electronic volume=90

  • high trade px=99

  • low trade px=92

Scenario 2 - Trade Cancellation of Previously Adjusted Trade & Electronic Volume Update

Previously adjusted trade is later canceled by GCC.

  • Market Data statistics:

    • electronic volume=90

    • high trade px=99

    • low trade px=92

1. GCC cancels TradeID=1, MDTradeEntryID=1123, New TradePx =95, New TradeQty=5 (no change)

2. Order entry messages:

Two Trade Cancel execution reports - for Buy and Sell outright fills

3. Market Data FIX Message:

  • Trade Summary for the bust

35=X 60=<TransactTime> 5799=00000001 268=1
279=2 269=2 48=320652 83=125 270=95 (Last modified price) 271=5 346=5797=0 (no aggressor) 37711=1123 (original MDTradeEntryID)

37705=2 37=231 32=5 37=135 32=5

  • Electronic Volume - EoV and EoE

35=X 60=<TransactTime> 5799=10000010 268=1

279=1 269=e 48=320652 83=126 271=85

  • Session Statistics - not sent (no change)

4. Market Data statistics after the event:


    • electronic volume=85

    • high trade px=99

    • low trade px=92

How was your Client Systems Wiki Experience? Submit Feedback

Copyright © 2024 CME Group Inc. All rights reserved.