BL-IS-009: Walk the Book
BIJECTIVE LABS
BL-IS-009: Walk the Book
Status: RELEASED
Classification: PUBLIC
Revision: 1
Date: 2026-09-07
1. What it measures
The price a given size would actually have received, by consuming the recorded order book level by level rather than assuming a fill at the mid.
It is the smallest instrument in the catalog and one of the most consequential, because it converts every strategy evaluation from a mid-price abstraction into something an operator could have transacted.
2. The specification
Given a book side with levels ( p_1, q_1 ), ( p_2, q_2 ), ... ordered from best,
and an intended size Q:
remaining = Q
notional = 0
for each level k while remaining > 0:
take = min( remaining, q_k )
notional = notional + take * p_k
remaining = remaining - take
if remaining > 0:
the book is exhausted; the instrument reports insufficient depth
rather than extrapolating
vwap = notional / Q
slippage = side * ( vwap - mid ) / mid * 1e4Reported in basis points against the mid at the same timestamp, so it slots
directly into the cost identity as the slippage term.
3. The refusal that matters
When the recorded depth cannot absorb the intended size, the instrument reports insufficient depth. It does not extrapolate the last level, and it does not return a partial fill priced as if it were complete.
Extrapolation here would be a specific and attractive lie. It would let a strategy evaluation proceed on instruments where the strategy could not actually have transacted, and it would do so most often on exactly the thin instruments where a naive backtest looks best.
The spread census gives a sense of how often this bites. Depth was gated on 33 instruments of the 676 measured, so quoted width and available liquidity are different questions across most of the universe.
4. Where it changed a result
Two places.
Entry pricing. An early evaluation filled entries at the price that triggered the signal. Real execution arrives after network latency and consumes real depth. Correcting to a fill at the tick following the measured latency, priced by walking the book, moved a dislocation strategy from apparently viable to rejected.
Exit pricing. The same correction on the exit leg produced what the record calls a live-fidelity net figure. A strategy that exits at the mid is assuming a counterparty that does not exist.
Both corrections moved results in the same direction, which is the direction every honest execution correction moves them.
5. Interface
walk_the_book(levels, size, side, mid) -> ( vwap, slippage_bps, levels_consumed )
Raises when:
the book snapshot is empty or stale beyond a declared tolerance
cumulative depth is less than the intended sizeThe staleness guard exists because a book snapshot recorded at an event and read
at a decision timestamp several seconds later is not the book that was there.
BL-TR-002 section 4 covers the recorder design that makes this a live concern.
6. Capacity, and what this instrument is not
Walking the book prices one order against a static snapshot. It says what a trade would have cost at that instant.
It does not model impact, which is what happens to the book after you transact and how quickly it refills. Nothing in this record ran at a size where impact was measurable, so the distinction never bound in practice, and it will bind for any reader operating at scale.
An operator sizing from these figures should treat every slippage number here as the cost of the first trade, not of the tenth.
7. Cross-references
BL-IS-005 the cost model this feeds. BL-D-010 section 2.2. BL-EC-005
section 5 on capacity. BL-TR-001 for its position on the tick path.
Copyright (c) 2026 Bijective Labs. All rights reserved.