Start here
Every price on your chart is the result of someone deciding they could not wait.
That is the whole idea, and if you take nothing else from this lesson, take that sentence. Price does not move because a line was crossed or because an indicator turned green. Price moves because a buyer or a seller was impatient enough to accept a worse price in order to get filled right now — and there was not enough size resting on the other side to stop them.
Order flow is the study of that impatience: who is doing it, how much of it there is, and whether it is actually producing movement. Before any of that makes sense, you need to know what physically happens when an order is placed. That is what this lesson covers. No prior knowledge assumed.
01 — The mechanism
What actually happens when you click Buy
A futures market is a continuous auction run by an exchange. At any moment there is a list of people willing to buy at certain prices, and a list of people willing to sell at certain prices. That list is the order book.
Two prices matter most:
- The bid — the highest price anyone is currently willing to buy at.
- The ask (or offer) — the lowest price anyone is currently willing to sell at.
The gap between them is the spread. In a liquid market like ES it is usually one tick.
| Bid size | Price | Ask size |
|---|---|---|
| 4512.75 | 340 | |
| 4512.50 | 185 | |
| 4512.25 | 212 | |
| ← best ask · spread · best bid → | ||
| 176 | 4512.00 | |
| 241 | 4511.75 | |
| 198 | 4511.50 | |
The best ask is 4512.25 with 212 contracts offered. The best bid is 4512.00 with 176 contracts bid. Everything above and below is resting further out, waiting.
Now you click Buy. What happens depends entirely on which kind of order you sent.
Market order — "fill me now"
A market buy says: I do not care about the exact price, get me in. The exchange matches you against the cheapest sellers available, starting at the best ask. You buy 50 contracts, they come out of the 212 resting at 4512.25, and 162 are left.
You got filled instantly. You paid the ask — the slightly worse of the two prices. That is the cost of not waiting.
Limit order — "fill me at my price or not at all"
A limit buy at 4512.00 says: I am willing to buy, but only at this price. Your order joins the 176 already resting at 4512.00 and sits there. You might get filled in two seconds, in twenty minutes, or never — that depends on whether a seller comes to you.
You did not pay the spread. But you gave up certainty.
The core idea
A market order takes liquidity that someone else provided. A limit order provides liquidity for someone else to take. Every single trade that prints is one of each — a taker and a provider — meeting at a price.
02 — The distinction that matters
Aggressive and passive
Those two roles have names you will see constantly from here on:
Passive
Resting limit orders sitting in the book. They are providing liquidity and waiting to be hit. They do not move price. They are the thing price has to get through.
Aggressive
Market orders crossing the spread to get filled immediately. They are taking liquidity. They are the only thing that can actually move price.
You will also hear "hitting the bid" and "lifting the offer". Same idea:
- An aggressive buyer lifts the offer — buys at the ask. Bullish aggression.
- An aggressive seller hits the bid — sells at the bid. Bearish aggression.
How price actually ticks up
Price at 4512.25 with 212 offered. Aggressive buyers come in and take all 212. There is now nothing left to buy at that price, so the best available offer becomes 4512.50. The chart prints a higher price.
That is it. That is the entire mechanism. Price moves one tick at a time because aggressive orders consume every resting order at a level and have to reach for the next one.
All 212 offered contracts consumed → best offer moves to 4512.50 → chart ticks up.
Four separate aggressive buy orders, none of them large on their own, together clearing the level. This is what "buying pressure" physically is.
03 — The correction
What traders usually get wrong
Common mistake
"There were more buyers than sellers, so price went up."
This is not possible. Every contract bought is a contract sold. If 500 contracts trade, 500 were bought and 500 were sold. Buyers and sellers are always exactly equal — that is what a trade is.
Here is the important part. The thing that is not equal is who was aggressive.
If 500 contracts trade and 400 of them happened because impatient buyers crossed the spread to take offers, while only 100 happened because impatient sellers hit bids, then buyers were doing the pushing. Same total volume. Completely different meaning.
Standard volume on your chart shows you the 500. It cannot tell you about the 400 versus 100 split. That split is what order flow measures, and it is the entire reason this field exists.
What this does not tell you
Knowing that buyers were aggressive tells you nothing on its own about what happens next. Aggressive buying that gets absorbed by a large passive seller and goes nowhere looks identical in the raw numbers to aggressive buying that launches a rally — until you look at whether price actually moved. Learning to tell those apart is what lessons 07 through 09 are about.
04 — Putting it together
A practical example
ES is grinding sideways around 4512. You are watching the order book.
- Size appears A 900-lot bid stacks at 4511.50. Someone is willing to buy a lot there, passively.
- Aggression arrives Sellers start hitting that bid. 200 trade. Then 300. Then 250.
- The tell 750 contracts have been aggressively sold into that level — and price is still 4511.50. It has not broken lower.
- The read The passive buyer is soaking up everything thrown at them. Aggressive sellers are getting filled, but they are not getting the move they wanted.
You have just watched absorption — one of the most useful things order flow shows you, and something a price chart alone renders completely invisible. The candle would just look like a small doji at the low.
Whether that means price is about to reverse is a different question, and a much harder one. We will get there properly in lesson 07. For now, notice the shape of the reasoning: aggression happened, and it did not produce movement.
Key takeaways
- The order book holds resting limit orders. The bid is the highest price buyers will pay; the ask is the lowest price sellers will accept.
- Market orders are aggressive — they take liquidity and are the only thing that moves price. Limit orders are passive — they provide liquidity and wait.
- Price ticks up when aggressive buying consumes every contract offered at a level, forcing the next level to become best.
- Buyers and sellers are always equal in number. Who was aggressive is not equal — and that imbalance is what order flow measures.
- Aggression alone means nothing. Aggression relative to the price movement it produced is the signal.
◆ Where this is going
You now know what moves price. Next you learn to measure it.
The next lesson takes the bid and the ask and turns them into something you can actually read on a chart — the foundation every other tool in this course is built on.
Continue to Bid & Ask →