Understanding Order Flow and DOM
10 min read
Read the market beneath the candles using order flow and depth of market analysis with practical Bitcoin examples.
10 min read
Read the market beneath the candles using order flow and depth of market analysis with practical Bitcoin examples.
This lesson assumes you have completed the Foundations order book lesson.
Order flow is the live stream of aggressor trades and resting limit orders that build every candle. It combines DOM (limit orders waiting), time & sales (executed trades), and footprint (volume per price split bid/ask). Together they show who is pushing and who is absorbing — before the candle prints.
Price action tells you what happened. Order flow tells you how and why it happened — in real time.
For first-principles microstructure see Larry Harris, Trading and Exchanges: Market Microstructure for Practitioners (Oxford, 2003); for the Wyckoff effort/result frame see chapters on absorption and exhaustion in David H. Weis, Trades About to Happen (Wiley, 2013).
Bitcoin is traded heavily on centralized exchanges like Binance, Bybit, and Coinbase. These platforms offer depth, tape, and even footprint-like visualizations of real-time market activity.
In this post, we’ll explore:
Order flow tracks aggressors — any taker order (market or marketable limit) that crosses the spread. On Binance and Bybit feeds the aggressor side comes from the trade-tape m flag, not the order type itself. Lifting the ask = buy aggressor; hitting the bid = sell aggressor.
When we track this in BTC, we’re watching how big players interact around key levels like $60,000, $63,200, or $65,000.
DOM shows limit orders sitting at each price level — waiting to be filled.
| Bids (Buy Limit Orders) | Price | Asks (Sell Limit Orders) |
|---|---|---|
| 6.2 BTC | 63,180.00 | 4.7 BTC |
| 10.1 BTC | 63,175.00 | 3.5 BTC |
| 12.8 BTC (stacked) | 63,170.00 | 2.2 BTC |
| 0.5 BTC (iceberg refresh slice) |
Large limit orders that appear, sit, and vanish before being touched — especially when price approaches them — are spoofs or layering. They distort the DOM but never trade. The signature: size that pulls on approach is a spoof; size that survives the test is real. CFTC enforcement actions (e.g. CFTC v. Avraham Eisenberg, 2023) document this pattern in crypto specifically.
| Lens | What it shows | Time horizon | Best for | Failure mode |
|---|---|---|---|---|
| DOM | Resting limit orders (intent) | Snapshot, microseconds | Spotting walls, icebergs, queue position | Spoofs and layering distort the picture |
| Time & Sales | Executed trades (reality) | Tick-by-tick | Sequencing aggressors, sweeps | Loses size context - no levels shown |
| Footprint | Volume per price split bid/ask | Per-bar (e.g. 1m, 5m) | Absorption, exhaustion, imbalance | Aggregation interval can hide intra-bar flow |
| CVD | Cumulative buy-vs-sell delta | Continuous, multi-bar | Divergence vs price, regime shifts | Per-venue CVD diverges from cross-venue truth |
The tape shows executed trades in real time.
| Time | Price | Volume | Type |
|---|---|---|---|
| 12:05:12 | 63,175.00 | 0.5 BTC | Buy MKT |
| 12:05:13 | 63,175.50 | 0.9 BTC | Buy MKT |
| 12:05:15 | 63,176.00 | 1.2 BTC | Sell MKT |
| 12:05:17 | 63,175.50 | 3.4 BTC | Sell MKT |
| 12:05:18 | 63,175.00 | 0.8 BTC | Buy MKT |
Tape reveals aggressive participants trying to move price — and whether they succeed.
Platforms like ExoCharts or TradingLite visualize Bitcoin volume per price level (bid/ask split).
| Price | Bid Vol | Ask Vol |
|---|---|---|
| 63,190.00 | 50 | 120 (imbalance, buy pressure) |
| 63,185.00 | 85 | 60 |
| 63,180.00 | 210 (absorption) | 90 |
| 63,175.00 | 300 | 45 |
In standard footprint convention, bid volume = trades executed at the bid (aggressive sellers hitting bid), and ask volume = trades executed at the ask (aggressive buyers lifting ask).
You’re watching BTC test support at $63,000 — your planned long entry zone (anchor this back to your written trade plan).
You enter long at $63,000 with tight stop below $62,950
What you actually get:
OF degrades during low-liquidity sessions (Sun 23:00–02:00 UTC), macro-event spikes, and across fragmented venues. A Binance-only CVD can diverge from a Coinbase-led move. Treat OF as a confluence input, not a standalone signal — empirical hit rates on raw delta divergence in BTC perp sit well below 55% without structural context. For news-driven gaps and dislocations specifically, see trading around news.
| Type | Platforms |
|---|---|
| DOM + footprint + CVD (3D) | Trading Glass, Bookmap |
| DOM | Binance Futures DOM, Bybit, Bookmap |
| Tape | TensorCharts, TradingLite, Trading Glass |
| Footprints | ExoCharts, ATAS (for crypto), TradingLite, Trading Glass |
| Aggregated OI/Delta | Coinalyze, Hyblock, CryptoQuant |
DOM shows resting limit orders waiting to be filled — the intent side of the market. Time & sales shows executed trades only — the reality side. DOM tells you who is willing to trade; T&S tells you who actually did.
An iceberg is a hidden parent order that shows only a small refresh slice on the DOM at a time. After each fill, the slice auto-replenishes from the hidden remainder. You spot one when repeated prints at the same level keep eating apparent size that never shrinks.
Absorption is when the passive side of the book eats aggressive market orders without yielding price. On a footprint, it appears as outsized volume on one side at a level that holds — large effort with no result, in Wyckoff terms.
Yes per-venue, with caveats. BTC perp DOM and tape carry real signal at structural levels, but they are noisy across fragmented venues, degraded during low-liquidity hours and macro spikes, and exposed to spoofing. Use OF as confluence on top of structure, not as a standalone signal.
In Bitcoin, where volatility and manipulation are common, order flow gives you a tactical edge.
Caveat: "edge" here means a small probabilistic shift, not certainty. In BTC perp, OF reads carry high false-positive rates outside structural levels, and exchange fees plus slippage will eat most of the gross edge unless you maker-rebate or hold trades beyond the noise window.
It shows:
Read structure first. Use order flow to time the attack.
Next: Algorithmic Thinking — how systematic traders encode the patterns above into rules a machine can execute.