Concept
Cumulative Volume Delta
Cumulative Volume Delta is a Volume & Order Flow concept. The Library holds 5 implementations, each one a working definition you can pull into Quant.
CVD
Top Cumulative Volume Delta indicators
5 total
What is Cumulative Volume Delta?
Cumulative volume delta (CVD) is a running total of volume delta, the difference between volume traded aggressively at the ask (market buys) and volume traded aggressively at the bid (market sells). Each bar's delta is added to the sum, so the line tracks net aggression through time: rising CVD means buyers have been lifting the offer harder than sellers have been hitting the bid, and falling CVD means the reverse.
How trades are classified matters. With bid/ask or tick data, executions can be assigned to the aggressor side directly. Chart platforms without that feed approximate the split from lower-timeframe bars or candle geometry, so CVD from different tools and feeds (one exchange versus an aggregate, spot versus perpetual futures) will not match exactly. The anchor matters too: CVD can run continuously or reset each session or week, which shifts the absolute level without changing the shape. Traders therefore read slope, swing structure, and divergence rather than the raw number.
CVD matters because it separates aggression from result. Every trade pairs an aggressive order with passive liquidity resting at a level, so laying CVD against price shows whether aggression is being rewarded. When a new high in price comes with a new high in CVD, aggressive buyers are in control and being paid. When the two disagree, someone passive is usually absorbing the flow, and that tension is where many order-flow reads begin.
How to calculate Cumulative Volume Delta
CVD is computed rather than drawn, and each step of the pipeline involves a choice that changes the output.
- 1Classify volume by aggressor. Trades executing at the ask count as buy volume; trades at the bid count as sell volume. Without tick data, approximate by splitting each bar with lower-timeframe up and down volume, and accept that the result is an estimate.
- 2Compute each bar's delta: buy volume minus sell volume. A bar can close higher on negative delta, or lower on positive delta; that mismatch is information about absorption, not an error.
- 3Accumulate: add every bar's delta to a running sum, either continuously or reset at a chosen anchor (session, day, week). Intraday traders often reset at the open so the line reads as net flow for the current session.
- 4Plot it as a line or as CVD candles (the open, high, low, and close of the running sum within each bar), then compare swing highs and lows in CVD against swing highs and lows in price.
How traders use it
- As a divergence tool: price prints a higher high while CVD prints a lower high (delta divergence), suggesting the push was not backed by net aggressive buying. Most traders treat this as a warning that needs price confirmation, not a standalone reversal signal.
- As an absorption read: when CVD drops hard while price holds a level, sellers are hitting the bid into passive buyers who keep refilling (absorption). If price then lifts, the aggressive sellers are trapped; if the level gives way, the absorption failed.
- As breakout confirmation: a break that extends on strongly expanding CVD shows real initiative participation, while a break on flat or fading CVD looks more like stops being triggered than new aggression (volume at breakout applies the same test with total volume).
- As an effort-versus-result gauge: a large CVD thrust that produces almost no price progress is heavy effort with poor result (effort vs result), often read as the aggressive side exhausting itself into resting liquidity.
Cumulative Volume Delta vs related concepts
Volume Delta: Per-bar versus cumulative: volume delta is the buy-minus-sell figure for a single bar, while CVD is the running sum of those figures. Delta shows who was aggressive in one bar; CVD shows how that aggression trends and diverges across a session or swing.
OBV: OBV adds or subtracts each bar's entire volume based on whether it closed above or below the prior close; it never looks inside the bar. CVD splits volume by aggressor side within each bar, so it needs tick data or an intrabar approximation. OBV is best understood as a close-direction proxy for the same idea.
Footprint Concepts: A footprint chart shows delta at every price level inside each bar, exposing exactly where the aggression happened. CVD compresses each bar to a single number and accumulates it, trading that granularity for a clean long-run line.
Bid/ask Imbalance: Imbalance compares buying and selling at individual price levels within the footprint (usually diagonally) to flag stacked one-sided prints. CVD is the market-wide running total; imbalances are the localized, level-by-level version of the same buy/sell comparison.
More Cumulative Volume Delta implementations
Related concepts · Order-flow & microstructure
Concept family
Volume & Order Flow
87 concepts mapped · 62 in the Library
Cumulative Volume Delta FAQ
How is cumulative volume delta calculated?
Each trade is classified as a market buy (executed at the ask) or a market sell (executed at the bid). Sell volume is subtracted from buy volume to get each bar's delta, and every delta is added to a running total. Platforms without tick data estimate the split from lower-timeframe bars, so values differ across tools and data feeds.
What does a CVD divergence mean?
Price made a new extreme but the running total of aggression did not, or the reverse. Either way, aggressive flow and price disagree, which usually means passive limit orders are absorbing one side. It flags a fragile move rather than an automatic reversal; most traders still wait for price confirmation, such as a failed high or structure break, before acting.
Why does CVD fall while price rises?
Sellers are aggressive but passive buyers keep absorbing them, or the buying that drives price is happening on venues your feed does not measure. Persistent negative CVD under rising price is a classic absorption footprint, and it can resolve in either direction, so the deciding read is how price behaves once the selling dries up. Aggregated multi-exchange feeds reduce, but do not remove, the venue problem.
Should CVD reset every session?
It is a choice, not a rule. A session reset makes the line read as net aggressive flow since the open, which suits intraday work; a continuous anchor preserves multi-day swings for divergence analysis. Because the absolute value depends entirely on the anchor, compare swings within one anchoring scheme instead of quoting the raw number.
Is CVD the same as OBV?
No. OBV assigns all of a bar's volume to one side according to whether it closed above or below the prior close, so it can be computed from any OHLCV chart. CVD classifies volume by aggressor within each bar, which requires tick data or an intrabar approximation. They often agree in steady trends but diverge when bars close against their internal order flow.
Build Cumulative Volume Delta your way.
Quant writes, tests, and refines it with you — then it runs on LuxAlgo charting or ports to TradingView.
.png&w=3840&q=75)

