Cumulative Volume Delta (CVD) is a running total of buying volume minus selling volume over a selected period. More precisely, it aims to show whether trades initiated aggressively by buyers or sellers have dominated the executed order flow, rather than showing all crypto volume or the number of market participants in a market.
That distinction matters. In order-flow terminology, aggressive buying is generally volume executed at the ask, while aggressive selling is volume executed at the bid. CVD is therefore an attempt to measure the imbalance between those two forms of executed volume. Bookmap describes it as the cumulative difference between buying and selling volume, while a CME Group research paper sets out the bid-and-ask framing for aggressive trade execution.
For crypto traders, the useful question is not simply whether CVD is rising or falling. It is what data the indicator covers, how the platform classified trades, where price is trading, and whether liquidity supports the interpretation. A CVD line can be informative order-flow context; it is not a complete measure of market-wide demand.
CVD measures aggressive order flow, not total crypto volume
Every completed trade has a buyer and a seller, so total traded volume alone does not establish that buyers “outnumbered” sellers. CVD instead assigns volume according to which side was aggressive at execution. A trader willing to pay the available ask is typically treated as an aggressive buyer. A trader willing to sell into the available bid is typically treated as an aggressive seller.
The resting orders at the bid and ask provide available liquidity. The incoming order that crosses the spread to execute against that liquidity is the aggressive side. When trades execute at the ask, they add to buy volume in a conventional volume-delta calculation; executions at the bid add to sell volume.
This makes CVD an order-flow measure, not a broad sentiment survey. It does not directly reveal why a trade occurred, whether a participant is hedging, or whether the same economic actor has positions elsewhere. Nor does it say that every buyer is bullish or every seller is bearish. It records the direction assigned to executed aggression within the data set being measured.
That narrower definition is also why a large volume bar can have little effect on CVD. If aggressive buying and selling are close to balanced during the bar, the net delta may be small even where total volume is high. Conversely, a relatively modest amount of one-sided aggressive execution can produce a notable delta reading.
How buy-sell delta becomes a cumulative line
The calculation begins with volume delta for an interval, which could be a bar or another aggregation chosen by the charting tool:
Delta = Buy Volume − Sell Volume
A positive result means buy volume exceeded sell volume for that interval. A negative result means sell volume was greater. CVD then adds each new delta to the preceding running total:
CVD(t) = CVD(t−1) + Delta(t)
As Bookmap’s documentation notes, a rising CVD indicates net aggressive buying over the selected sequence, while a falling line indicates net aggressive selling. The value is cumulative, so its slope is often more immediately useful than its absolute level. A line can remain above zero while declining, for example, because recent sell delta is being added to an earlier positive total.
The starting point matters as well. If a chart starts CVD at zero at the beginning of a session, day, week, or custom range, the line reflects net delta since that reset. A different reset creates a different cumulative history. Two charts can therefore display different CVD values without either necessarily being wrong.
Readers should also separate the interval delta from the cumulative line. Bar delta describes the imbalance in one period. CVD carries that imbalance forward, allowing a trader to see whether net aggression has persisted, paused, or reversed across a longer sequence.
A trade-by-trade CVD example
Consider a simplified sequence in which CVD begins at zero. In the first interval, 120 units of volume are classified as aggressive buys and 80 as aggressive sells. Delta is therefore +40, and CVD rises to +40.
| Interval | Buy volume | Sell volume | Delta | CVD |
|---|---|---|---|---|
| Start | — | — | — | 0 |
| 1 | 120 | 80 | +40 | +40 |
| 2 | 70 | 110 | -40 | 0 |
| 3 | 90 | 60 | +30 | +30 |
In the second interval, sell volume exceeds buy volume by 40 units. That -40 delta is added to the existing +40 CVD reading, returning the cumulative line to zero. The third interval contributes +30, taking CVD to +30.
The example illustrates two common points of confusion. First, CVD does not move up simply because there was trading volume: it moves according to the net classified imbalance. Second, a positive CVD at the end does not mean that there was no selling. It means that, from the chosen starting point through the latest interval, the accumulated aggressive buy volume exceeded accumulated aggressive sell volume by 30 units.
Actual platform displays may calculate at a much finer level than this example and then present the result in chart bars. The arithmetic remains the same, but the reliability of the buy-versus-sell classification depends on the available data and the platform’s method.
Reading CVD alongside price: confirmation and divergence
CVD is most commonly interpreted alongside price rather than in isolation. When both price and CVD rise, the price advance is occurring alongside net aggressive buying; when both fall, the decline is occurring alongside net aggressive selling. Such alignment can support a reading that aggressive order flow is participating in the prevailing price move.
The more closely watched contrast is divergence. Price may rise while CVD is flat or falling, meaning the advance is not accompanied by increasing net aggressive buying in that data set. Price may also decline while CVD is stable or rising. TradingView’s footprint-chart guide characterizes such divergence as a possible sign of weakening participation, while stressing that it is not a standalone signal.
“Possible” is the operative word. A price/CVD mismatch is a prompt to examine the market more closely, not proof that a reversal must follow. Price can continue in its direction despite a divergence, and the divergence may reflect the instrument, time window, or classification method rather than a decisive shift in broader crypto positioning.
Price structure and nearby liquidity give the reading context. A trader looking at a divergence might ask whether price is approaching a prior area of interest, whether the move has held or rejected a level, and whether conditions in the relevant market are orderly. CVD contributes a view of executed aggression; it does not replace the price chart.

Why crypto CVD can differ across charts and exchanges
A CVD indicator is only as comprehensive as its underlying data. In crypto, a reading from one exchange’s BTC-USDT spot market is not automatically a reading for every BTC market. A perpetual contract, a spot pair, and another venue can have different trading activity, and a single instrument’s CVD may not represent aggregate market-wide buying and selling pressure.
Platform methodology can create further differences. Where tick-level bid/ask data is unavailable, many charting platforms estimate volume delta using lower-timeframe bars. TradingView says its volume-delta classification uses intrabar price direction, meaning its CVD can be an estimate rather than a direct reconstruction of every trade’s aggressor side. Its methodology and settings are outlined in the TradingView Help Center.
That does not make an estimated indicator unusable. It means comparisons should be made carefully. A difference between two CVD charts may arise because they use different exchanges, instruments, lower timeframes, trade-classification rules, or reset periods. Comparing their absolute readings without first checking those settings can be misleading.
Reset settings are especially easy to overlook. One chart may begin its running total at a session boundary; another may retain a longer history. Since CVD is cumulative by design, a change in the starting point can substantially alter the displayed level even if the more recent deltas are similar.
Using CVD with liquidity and price action
A practical CVD workflow starts by defining the market under observation. Confirm whether the chart uses a spot pair, a futures or perpetual contract, or another instrument; identify the venue; and check the chosen reset period. Those decisions define the scope of the claim a CVD reading can support.
Next, assess CVD in relation to the same market’s price action. Sustained positive or negative slope can show whether aggressive flow has been net one-sided during the measured period. A sharp change in slope may be worth noting, especially if it coincides with a change in price behaviour. Neither observation establishes a future outcome on its own.
Liquidity is the other essential comparison. Aggressive orders execute against resting liquidity, so price movement is shaped by both the flow that crosses the spread and the liquidity available to absorb it. A CVD reading describes one side of that interaction: executed, classified volume. It does not by itself show the full set of resting orders or guarantee how much liquidity will remain available.
For that reason, CVD is better treated as a contextual indicator than as a market-wide pressure gauge or automatic entry-and-exit tool. The durable interpretation is straightforward: positive delta adds to the line, negative delta subtracts from it, and the result reflects net aggressive execution within a selected data set. The harder and more important task is deciding how much weight that particular data set deserves.
Frequently Asked Questions
What does a rising CVD mean in crypto?
It means that, since the indicator’s reset point, classified aggressive buy volume has exceeded classified aggressive sell volume. It does not establish that all crypto markets are experiencing broader buying pressure.
Is CVD the same as trading volume?
No. Total volume counts traded quantity, whereas CVD tracks the accumulated difference between buy-side and sell-side aggressive execution. High total volume can produce a small delta when the two sides are closely balanced.
Why does CVD differ between exchanges or charting platforms?
The underlying venue or instrument may differ, along with the trade-classification method, available granularity, and reset setting. When direct tick-level bid/ask data is unavailable, some platforms estimate delta from lower-timeframe price movement.
Does bearish CVD divergence mean price will fall?
No. A rising price paired with flat or falling CVD can flag a participation mismatch, but it is not a prediction. Price action and liquidity context are needed before drawing a stronger conclusion.
Can CVD show market-wide crypto buying pressure?
Not from one exchange or one contract alone. A single CVD series describes the data it receives, such as a particular spot pair or perpetual market, rather than the entire crypto market.