Order flow is the study of the events that form a market: new orders, amendments, cancellations, and executions. Public-facing charts, however, show only the portion carried by the selected feed; they do not automatically reveal every intention or every order resting on other venues.
In plain terms — The final price is the score. Order flow tries to reconstruct the actions that produced it, separating what was waiting in the order book from what was actually traded.
Three layers that should not be confused
| Layer | What it contains | Example |
|---|---|---|
| visible limit orders still waiting | displayed quantity at the bid and ask | |
| Executions | trades that have already occurred | a trade's price, quantity, and time |
| Derived measures | calculations built from executions |
A change in order-book quantity does not by itself prove that a trade occurred: the order may have been amended or cancelled. Likewise, every execution has both a buyer and a seller. Terms such as “buy volume” normally mean volume classified as buyer-initiated—attributed to the side that demanded immediate execution.
How to read it in practice
Before interpreting a number, specify three things:
- Observed event — quotes and depth, individual executions, or an aggregated measure.
- Feed scope — venue, instrument, session, and historical coverage.
- Classification method — aggressor side published by the trading venue or estimated by the software.
Time & Sales places executions in chronological order. A footprint groups them by bar and price level. Delta compares volumes classified on the two sides; cumulative delta adds them across a window. These are different views of the same events, not independent confirmations.
Where uncertainty enters
Some feeds publish an aggressor-side indicator directly. When that field is unavailable, a platform may infer it by comparing the trade price with the bid, ask, or previous price changes. Inference methods have their own rules and errors, especially for executions inside the spread or data that are not perfectly synchronized.
Even an accurate feed remains partial: undisplayed liquidity, fragmentation across venues, and orders executed elsewhere do not necessarily appear on the chart. A large print, extreme delta, or divergence therefore describes what the dataset shows; it does not identify the participant, the reason for the trade, or the future direction of price by itself.
Sources
- CME Group, Order Functionalities — Order Aggressor Indicator — describes the aggressor as the incoming order that immediately matches orders already resting in the book.
- CME Group, MDP 3.0 — Trade Summary — documents fields through which an exchange feed can publish execution price, quantity, and aggressor side.
- Sierra Chart, Tick by Tick Data Configuration — distinguishes volume traded at the bid or ask from quantity waiting in market depth and explains tick-by-tick data requirements.
- Lee and Ready, Inferring Trade Direction from Intraday Data, Journal of Finance (1991) — presents a trade-direction inference method and makes explicit that classification may be estimated rather than observed.