Skip to content
← Learn

Order Flow

Aggressive buying matters alongside the sellers willing to absorb it. The price response often reveals more than the volume alone.

A narrow ticker-tape ribbon carrying small abstract trade blocks, with two flowing streams meeting at a clear central execution gate.

Every trade has a buyer and a seller. When a chart reports “buy volume,” it usually means the buyer initiated the trade by accepting an available sell quote. The useful distinction is who demanded immediate execution and how much the price moved in response.

That response connects flow to liquidity. A large amount of buying can move price very little if sellers keep replenishing. A small amount can move it sharply if offers retreat.

Who initiated the trade

A marketable buy consumes offers; a marketable sell consumes bids. Over an interval with 1,200 units of buyer-initiated trades and 800 of seller-initiated trades, total volume is 2,000 and volume delta is positive 400.

Delta = aggressive buy volume − aggressive sell volume.

It does not mean 400 more units were bought than sold across the market. The sellers provided all 1,200 units bought aggressively, and buyers provided all 800 units sold aggressively. Delta describes the initiating side.

Cumulative volume delta, or CVD, adds interval deltas over a chosen period. Its reset point changes the displayed level. Compare changes over matching windows rather than treating the absolute number as a universal measure of bullishness.

Measured flow and estimated flow

Some feeds identify the aggressor from exchange messages. Others estimate it from trade prices or smaller price bars. TradingView’s CVD documentation describes both lower-timeframe price-based estimation and tick-based approaches with different classification inputs.

A candle-based estimate is not the same observation as an exchange-tagged execution stream. Coverage matters too: one venue’s CVD may exclude substantial trading elsewhere. A divergence between a price chart and a flow indicator can be a market fact, a timing mismatch or a data-method difference.

Write down the venue, instrument, classification method and reset interval before explaining a large signal. This gives you a chance to distinguish a useful anomaly from a measurement artifact.

Orders that never trade can still move the market

Transaction delta sees completed trades. The book also changes when limit orders arrive, move or are cancelled. If sellers withdraw their offers, the next buyer may pay more even without a large burst of executed volume.

Cont, Kukanov and Stoikov study an order-flow-imbalance measure that includes quote events and cancellations. In their historical US-stock sample, the price response depended on depth as well as imbalance. This is evidence for observing the supply of liquidity alongside trades, not a ready-made signal for every perp market.

Displayed size is itself only a snapshot. CME’s liquidity research explains why replenishment can support substantial trading even when the resting book looks small. Watch what happens after an aggressive order: does the quote return, move away or disappear?

Absorption and the next trade

Suppose aggressive buyers repeatedly trade at $100 but price struggles to rise. Sellers may be replenishing there. That is evidence of absorption, but it leaves two possible developments: buying could exhaust the available sellers, or the buyers could run out first.

The next observations distinguish them. Does price begin moving higher for similar buying volume? Do offers return quickly? Does a modest amount of selling suddenly push the market down? The change in response can be more informative than the accumulated flow number.

For a prospective trade, state the expected sequence before it occurs, specify the time window and preserve failures as well as examples that worked. Then compare executable entry and exit prices after costs. Order flow is useful when it helps explain who is urgently trading and how the market accommodates them. It becomes less useful when every colored imbalance receives a directional story after the move.