Matching engine
A matching engine is the exchange software that holds each instrument's order book, matches incoming orders against resting ones according to the product's matching algorithm, and publishes the resulting trades and book changes. Everything a footprint, DOM or heatmap shows is the engine's output as it reaches you through a data feed.
Senzoukria · Glossary · Updated September 2026
Definition
For CME futures the matching engines run CME Globex, hosted in CME Group's data center in Aurora, Illinois. Orders arrive through order-entry gateways, are validated (price banding, protection, order type rules), then either match or rest in the book. Each change is sent back to the order's owner as an execution report and to everyone else as market data. How the resting orders at one price share an incoming order is set by the product's matching algorithm, published in each instrument's definition: first in, first out for the E-mini equity index futures and many other products, pro rata or combined steps, such as a lead market maker allocation or a split between FIFO and pro rata, for others.
Worked example
The ask side holds 5 contracts at 5,000.25 and 10 at 5,000.50. A buy market order for 12 arrives. The engine fills 5 at 5,000.25, then 7 at 5,000.50, and 3 contracts remain at 5,000.50. The buyer's average price is (5 × 5,000.25 + 7 × 5,000.50) / 12 = 60,004.75 / 12, about 5,000.40. The aggressor is the buyer, the best ask moves to 5,000.50 with 3 contracts, and a footprint records 12 contracts of ask volume split over two prices.
From engine to screen
- The engine emits events in a strict order; data feeds number them so consumers can detect gaps.
- An exchange feed can report a match per price level and per resting order; vendors may pass either on.
- Your platform receives a vendor's version, adds network and processing delay, then draws it.
- Your own order's acknowledgement and your screen's data travel different paths and can arrive in either order.
Why it matters
Knowing that the engine is the only place where trades happen keeps interpretation honest: the DOM shows its resting book as published, the tape its fills as published. A level that disappears without trades was cancelled or implied away in the engine; a print you did not see because your feed lagged still happened at its time.
In Senzoukria
The application draws the engine's published output as its feed delivers it: executions on the footprint and time and sales, resting depth on the DOM ladder and the heatmap. It has no access to the engine itself; its order acknowledgement latency, measured from click to gateway acknowledgement, includes the broker's path to it.
Common mistakes
- Believing a platform can show something the engine did not publish.
- Assuming a market order fills at one price when the book is thin.
Related
In the same section
This page in other languages
Frequently asked questions
- Where are CME's matching engines?
- CME Globex is hosted in CME Group's data center in Aurora, Illinois, which is also where colocation customers place their servers.
- Does the matching engine know who I am?
- It knows the order's owner for execution reports and risk controls, but public market data is anonymous: other participants see prices and sizes, not identities.