Dona Codex

Dona Codex | L2 Order Book & Quant Data Archives Fuel your AI agents and quant models with the exact same data powering the Dona Nexus ecosy...
Location hidden
Created byProfile pictureAlkan
3 joined
Profile picture
AlkanProfile picture@dobbyb·Jul 4

Why your backtest wins on OHLCV and dies live (and how CVD fixes it)

Most solo quants backtest on 1m/5m OHLCV candles, get a beautiful equity curve, go live, and immediately get chopped up. Here's the gap nobody talks about: candles hide order flow.


Two candles can look identical — same open, close, high, low — and represent completely opposite market behavior. One is aggressive buyers absorbing a wall of resting asks. The other is a slow grind with no real conviction. OHLCV can't tell you which one you're looking at. CVD (Cumulative Volume Delta) can.


CVD tracks the running sum of aggressive buy volume minus aggressive sell volume. When price pushes up but CVD is flat or falling, that's absorption — buyers are getting filled by hidden size, and the move is fragile. When price and CVD rise together, that's genuine participation. This divergence is one of the highest signal, lowest lag tells you can add to a scalping or mean-reversion system, and it's invisible if all you have is candles.


A few things I've learned building datasets for this:


  1. Funding rate + CVD together beats either alone. Funding tells you positioning bias (who's paying to stay in the trade), CVD tells you who's actually forcing price. Divergence between the two often precedes squeezes.


  1. L2 depth matters more at the open of a session than mid-session. Thin books during low-liquidity windows (Asia session on majors, weekends) produce fake breakouts that L1 data will never flag but L2 imbalance will.


  1. Tick-level data is overkill for most strategies — until it isn't. If you're doing anything sub-5-second, you need raw tick flow, not aggregated bars. Anything slower, funding + CVD + 1m L2 snapshots is plenty and way cheaper to process.


If you're building or backtesting anything systematic on BTC/ETH/SOL and you're stuck on candle-only data, this is the upgrade path that actually moves the needle before you touch model architecture.


Happy to answer questions on data structure, storage formats, or how to wire this into a backtesting pipeline — drop them below.