All ten labs
Example run · Rendered Markdown

ETF Liquidity

Can stressed underlying liquidity and AP capacity absorb an ETF redemption, and what NAV discount could the gap imply?

Exact commandRepository root
PYTHONPATH=labs/etf-liquidity/src python3 -m etf_liquidity_stress_lab stress labs/etf-liquidity/examples/sample_holdings.csv --aum 2500000000 --redemption-pct 0.12 --ap-capacity 160000000 --market-depth 0.70
Real outputExit code 0

ETF Liquidity Stress Report

Risk level: SEVERE

Metric Value
Redemption shock $300.0M
Stressed underlying liquidity $856.9M
AP daily capacity $160.0M
Liquidity gap $140.0M
Estimated discount 369.8 bps
Liquidation days 1.88
Weighted spread 31.9 bps
Thin-basket weight 44.0%

Key warnings

  • AP capacity overwhelmed
  • Large weight in thinly traded constituents

Methodology

  • ADV is haircut by liquidity tier (liquid 35%, moderate 20%, thin 6%) and scaled by market-depth stress.
  • Daily stress capacity is the lesser of authorized-participant capacity and stressed underlying basket liquidity.
  • Estimated discount combines weighted spread, tracking buffer, liquidity gap ratio, thin-basket penalty, and liquidation-days penalty.