Learn Lesson 5 of 6 · 7 min read
Volume, Delta and Order Flow
Who was aggressive on each bar, what cumulative delta adds, and what absorption and exhaustion look like.
Volume: how much changed hands
Every trade has a buyer and a seller, so volume alone can't say who "won". What it does say is how much the market cared about a move. A breakout on rising volume has a lot of traders behind it. One on thin volume, especially around holidays or lunch, can reverse easily.
Two simple ways to read it:
- Compared with the same time of day. Volume is always heavy at the open and light at lunch, so compare 10:00 today with 10:00 on other days, not with 12:30.
- By price, not just by time. A volume profile stacks volume sideways at each price. Prices with heavy volume are where the market agreed on value; thin areas are where it moved through quickly, and it often moves through them quickly again.
Delta: who was aggressive
Each trade happens either at the ask (a buyer paid up to get filled now) or at the bid (a seller accepted the lower price to get out now). The patient side sat in the order book with limit orders; the aggressive side used market orders.
Delta (one bar) = contracts traded at the ask − contracts traded at the bid
A bar of +800 means aggressive buyers took 800 more contracts than aggressive sellers did. That is not the same as "more buyers than sellers". Every contract still has one of each. It means the buyers were the ones in a hurry.
Cumulative delta
Add each bar's delta to a running total from the start of the session and you get cumulative delta, a line you can set beside price. Most of the time the two move together. The interesting part is when they don't:
| Price | Cumulative delta | What it can mean |
|---|---|---|
| New high | Lower high | Buyers are less aggressive on this push; the move may be tiring (exhaustion) |
| Flat or rising | Falling hard | Sellers are hitting the bid but someone keeps buying from them (absorption) |
| New low | Higher low | Selling pressure is fading into the low |
| Rising | Rising | Aggressive buying is behind the move |
Absorption and exhaustion
Absorption shows up as heavy aggressive volume on one side while price barely moves: large negative delta at a support level and the low holds. Big passive buyers are taking everything that's sold to them. If the sellers then give up, price can move away from that level quickly.
Exhaustion is the opposite story: price stretches to a new extreme, but volume and delta shrink with each push. Fewer traders are willing to chase. It is a warning, not an entry by itself.
Getting order flow data in NinjaTrader
- Delta needs to know whether each trade was at the bid or the ask, so it needs tick data, not just bars.
- For delta on past bars, turn on Tick Replay: Tools > Options > Market data, check "Show Tick Replay", then tick it in the chart's Data Series window. Charts load more slowly with it on.
- NinjaTrader's Order Flow+ tools (Volumetric Bars, Order Flow Cumulative Delta and others) are included with some NinjaTrader licenses. The built-in Volume Profile and volume indicators work with any license.
Keep it in context
Order flow on its own, in the middle of nowhere, is mostly noise. It earns its keep at a level you already care about: the prior day high, the opening range, VWAP. Decide where you'd act first, then let volume and delta tell you whether the market agrees when price gets there.
Try it in NinjaTrader
- On a 1 or 5 minute chart, add Volume Profile (built in) and VOL.
- If you have Order Flow+, also add Order Flow Cumulative Delta with Tick Replay on.
- Find a day where price tested a prior day high twice. Compare volume and delta on the first test and the second.
Educational content only, not trading advice. Indicators describe what price has already done; none of them predicts what it will do next. Practice in Sim or Playback before trading live.