Executable depth is the part of an order book that currently represents real, tradable liquidity. It includes active bid and ask orders that can be matched or consumed by incoming marketable orders, and excludes records that are only conditional, informational, inactive, canceled, rejected, expired, or otherwise not executable at the current moment.
In simple Level 2 market data, executable depth is often treated as the visible aggregated quantity at each price level. In more detailed order-level feeds, especially Level 3 or Level 4 data, systems may receive additional records that describe order relationships, lifecycle events, and contingent instructions. Not every record in that richer feed should contribute to executable depth.
Executable depth is important because trading systems, analytics tools, and order book reconstruction engines often depend on a clean view of what liquidity is actually available. If a system counts inactive or contingent records as live size, it can overstate market depth, distort spread and slippage calculations, and create misleading liquidity signals.
For developers rebuilding order books from exchange or normalized market data feeds, executable depth helps separate the current tradable book from the full event history or semantic order graph.
When reconstructing an order book, each incoming event should be applied to a state model that determines whether the affected order is currently executable. Active limit orders generally contribute to executable depth. Canceled, filled, expired, or rejected orders generally do not.
Conditional instructions, such as stop-loss or take-profit components, may be represented in the data before they are triggered. These records can be important for understanding the order structure, but they should not be counted as executable liquidity until the trigger condition is met and the order becomes active.
Suppose a reconstructed book contains a live sell order at 101.00 and a stop-loss child instruction that would place another sell order only if a trigger price is reached. The live sell order contributes to executable ask depth. The stop-loss child instruction is part of the broader order state, but it does not contribute to executable depth until it becomes active.
This distinction is especially important in feeds that expose parent/child order structures or Level 4 order book data.
CoinAPI provides normalized market data that can help developers reconstruct order books across exchanges and data types. For advanced order-level feeds, applications should use order status, lifecycle events, and conditional-order fields to decide which records contribute to the executable book and which records should remain part of non-executable state.
Maintaining that distinction can make downstream analytics, backtesting, liquidity modeling, and real-time trading systems more accurate.