Skip to content

CME Trades: Message Ordering and Latency

Whenever a trade occurs on a CME matching engine, the exchange disseminates such information in a sequence of messages.

A few important observations:

  1. The exchange disseminates a Trade Summary Message first for any trade.

  2. 85% of the time other updates, such as Incremental Book updates or Order updates arrive in subsequent network packets.

The above observations prove that there is a significant latency advantage to processing Trade Summary Message and applying it to internal book (which predicts the resulting CME public order book).

How big is the advantage?

On average it is found to be 19.036 microseconds.

What we did

We investigated the market data feed for commonly traded ES (E-mini S&P Futures) and MNQ (Micro Nasdaq Futures) and filtered the dataset to only include trades / executions.

Such messages for executions were observed to always be disseminated in this order:

  1. Incremental Refresh Trade Summary

  2. Individual Order Updates

  3. Incremental Book update(s) for the resulting order book.

The purpose of our investigation is to determine if there is a substantial benefit of reacting to the very first Trade Summary Message as opposed to waiting for the final order book.

The answer is - in over 85% of cases it is indeed very benefitial.

Method

  1. For each of the exchange messages we printed transaction and exchange times.

Tip

Transaction time signifies the time of an actual event, in our case when the matching engine / market segment executed a transaction.

Exchange time is the exchange timestamp of when a network packet was sent by the exchange onto the public market data feed.

More at CME Globex Timestamps

  1. The time delay was calculated for each of the the messages with the same transaction time relative to the very first Trade Summary message for a transaction.
Delay calculation formula
Delay = Exchange sending time of a book message - exchange sending time of the Trade Summary message

Note

Parsing latency was excluded for the purposes of this test, as investigation was focused on time difference in exchange data dissemination.

Overall statiscits:

595,557 - Transactions observed.

1,170,650 - Total Individual Order updates were delivered for the transactions.

132,520 / 1,170,650 - Individual Order updates were delivered in the first packet for a transaction (less than 12% of updates).

566,049 - Total Exchange Book updates delivered.

83,924 / 566,049 - Exchange Book updates were delivered in first packet for a transaction (less than 15% of updates).

Result

Average First Order delay was 18.970 microseconds

Average Resulting Book delay was 19.036 microseconds

Conclusion

When enaged in low latency trading every microsecond matters. With an average book delay of 19 microseconds it is beneficial to apply trade summary updates to your internal order book and get a faster view of it. If you wait for a book update from CME you will be 19 microseconds behind.