Liquidity Tracker: withdrawn versus executed liquidity per level
The Liquidity Tracker is a column on the right of the heatmap ladder that tells, for each price level, what the resting liquidity did over the last 30 seconds: withdrawn without trading, or executed. It needs the Rithmic order-by-order (MBO) feed.
Senzoukria · Documentation · Updated September 2026
Where to find it
- Where
- Heatmap → Heatmap settings → Profiles tab → Liquidity tracker toggle; column to the right of the DOM ladder
- Default
- Off. Rithmic source only; other sources ignore the toggle
- Window
- 30 seconds (6 buckets of 5 s), published by the Rust service once per second and polled every 1,000 ms
- Rows
- Up to 24 levels, sorted by executed volume
What it does
A level that goes from 500 contracts to 0 tells two opposite stories: 500 contracts hit by aggressors, or 500 contracts pulled before anyone paid. Most displays draw both the same way, as a level that disappears. The Liquidity Tracker separates them. For each price and side it accumulates, from the MBO journal, the contracts added, the contracts pulled without trading, the contracts executed and the number of refills observed (same order, same price, quantity going back up).
The panel is titled "Liquidity — what it did", with the symbol and the window length as a subtitle (SYMBOL · 30 s). The headline is the share of liquidity that left the book without trading, over all levels of the window, above the words "of the liquidity that left the book never traded" — on one MNQ day measured during development it read 90.8 %, which is an observation of that day and not a figure the product promises. Below, a legend distinguishes withdrawn (grey) and executed (green).
Each row shows the price, the side (bid or ask), a bar whose green part is the proportion executed among what left the level, the percentage withdrawn, and the executed count. The bar carries a proportion, not an absolute volume: with absolute widths, 24 rows near the price all looked the same length.
Settings
| Item | Value | What it changes |
|---|---|---|
| Liquidity tracker (Profiles tab) | Off | Shows the column; only effective when the chart data source is Rithmic |
| Window | 30 s | Six 5-second buckets kept by the Rust service; not adjustable in the UI |
| Poll interval | 1,000 ms | The panel reads the snapshot once per second, rescheduled after each answer |
| Maximum rows | 24 | Levels with activity, sorted by executed volume, descending |
| Dropped events | 0 | Number of MBO events lost by the backend; displayed as a warning as soon as it is non-zero |
How to use it
- Connect a Rithmic profile whose account has order-by-order depth, open the heatmap on that source and enable Liquidity tracker in the Profiles tab.
- Read the rows from the top: they are the levels where liquidity was eaten rather than evaporated, which is where absorption happens. A level with a high withdrawn percentage and a large executed count still absorbed a lot.
- Compare the headline ratio between quiet and active phases; a falling share of withdrawn liquidity means more of what leaves the book is actually traded.
- Watch the header for the dropped-events line. A partial feed shows a partial picture and the panel says so.
Limits and pitfalls
- The panel needs the MBO feed. Without it, or when the account lacks the entitlement, the backend returns nothing and the panel shows No order book activity yet.
- Withdrawn includes normal market-maker requoting: cancelling to repost a tick away. The panel distinguishes withdrawal from execution; it does not call withdrawal deceptive.
- Thirty seconds is a short memory. The panel is a reading of the immediate book, not a session statistic.
- The column is not available on bridges, Databento or crypto sources, whose feeds do not carry order identity.
Related pages
- Heatmap intelligence panel
- Rithmic connection and gateways
- Heatmap profile window
- Absorption in trading
- DOM trading guide
- Heatmap
This page in other languages
Frequently asked questions
- The toggle is on but no column appears. Why?
- The column only mounts when the chart data source is Rithmic. On another source the setting is kept but ignored. On Rithmic, an empty panel means the MBO feed has not delivered any event yet.
- Why are rows not sorted by price or total volume?
- Sorting by total activity brought up the levels closest to price, all at a similar withdrawn share, which any profile already shows. Sorting by executed volume answers the question this panel exists for.