Skip to main content

Liquidity Consumption Curve

Quick Reference

PropertyValue
Dimensionexecution
Categoryorder_flow
Versionv0.9.0 (Beta)
Output Columnliquidity_consumption

Liquidity consumption curve - cumulative depletion of available liquidity across sequential trades

Formula

cumsum((size / book_depth), init)

CDM Inputs

ColumnCDM TableDescription
sizecdm_*CDM source table
book_depthcdm_*CDM source table

Parameters

ParameterTypeDefaultDescription
initfloat [0.0, 1000000.0]0.0Initial state value

Output

Column: liquidity_consumption

Cumulative liquidity consumed as fraction of total depth

Market Intuition & Trading Rationale

Liquidity consumption curve tracks cumulative depth depletion: cumsum(size / book_depth). Each trade consumes a fraction of the available book depth, and the running sum shows how much total depth has been consumed. When the curve rises steeply, trades are consuming depth faster than it replenishes — the book is being drained. When the curve flattens, depth is replenishing between trades — the market is self-healing.

This feature answers a critical execution question: is there enough depth to absorb my orders, or is the book already depleted? A curve near zero means the book is fresh — previous trades haven't consumed significant depth. A curve above 1.0 means cumulative consumption exceeds the initial depth — the book has been fully consumed and has either replenished or the market has repriced.

The curve exhibits mean-reverting behavior in normal markets: consumption rises with each trade, then reverts as limit orders replenish the book. In stressed markets, the curve trends upward without reversion — each trade consumes depth that never comes back. This makes the slope of the consumption curve a clean liquidity stress indicator.

Usage Cases

  • Execution capacity estimation: Before placing a large order, check the liquidity consumption curve. If it's already elevated, the book may not have enough residual depth — split your order or wait for replenishment. If it's near zero, the full book depth is available.
  • Book replenishment rate: The time between curve peaks measures how fast the book replenishes. Short replenishment times = healthy market with active liquidity providers. Long replenishment times = providers are hesitant, and execution should be paced accordingly.
  • Liquidity stress detection: When the consumption curve trends upward without reversion for an extended period, the market is in a depth drought — each trade permanently removes liquidity. This is a strong signal to defer execution until conditions normalize.
  • Optimal execution scheduling: Use the consumption curve's current level and recent slope to dynamically adjust execution urgency. High consumption with positive slope → slow down. Low consumption with flat slope → normal pace. Low consumption with negative slope (replenishment) → opportunity to accelerate.

YAML Definition

name: liquidity_consumption_curve
description: Liquidity consumption curve - cumulative depletion of available liquidity
across sequential trades
category: order_flow
version: v0.9.0 (Beta)
dimension: execution
status: Pre-release
required_inputs:
- size
- book_depth
output_column: liquidity_consumption
output_description: Cumulative liquidity consumed as fraction of total depth
parameters:
init:
type: float
description: Initial state value
required: false
default: 0.0
constraints:
min: 0.0
max: 1000000.0
formula: cumsum((size / book_depth), init)