Volume & money flowCumulative Volume Delta · CVD
A running sum of buying minus selling volume, tracking net order-flow pressure over time.
Works in most conditionsEngine-computed on a fixed sample series
What it is
Cumulative Volume Delta (CVD) is an order-flow tool that tracks the running total of the difference between buying volume and selling volume, the net of trades executed by aggressive buyers versus aggressive sellers. Volume delta for a single bar is the volume that traded on the offer or uptick, which is aggressive buying, minus the volume that traded on the bid or downtick, which is aggressive selling; CVD accumulates that delta bar after bar into a continuous line. Its purpose is to reveal who is in control beneath the surface of price, whether aggressive buyers or sellers are driving activity, and to expose when that hidden pressure disagrees with price. The question it answers is not where price is but who is doing the pushing, and whether their effort is being rewarded with movement or absorbed. It is a staple of futures and order-flow trading.
How it is calculated
For each transaction, trades are classified by aggressor: volume that lifts the offer counts as positive buying and volume that hits the bid counts as negative selling. The per-bar volume delta is total buying volume minus total selling volume, and Cumulative Volume Delta is simply the running sum of those per-bar deltas across the session or chart. Accurate CVD requires trade-level data with bid and ask classification, which is available in futures and other centralised markets; where such data is missing, platforms approximate the aggressor using the uptick and downtick rule, which is less precise. Unlike price-derived indicators, CVD is built directly from the order flow, so it reflects executed aggression rather than any transformation of high, low, and close. The line rises when aggressive buying dominates and falls when aggressive selling does.
Reading it, step by step
The most powerful read of CVD is divergence against price. When price makes a new high but CVD fails to make a new high, aggressive buyers are pushing but their effort is being absorbed by passive sellers, a warning the rally may stall or reverse. When price makes a new low but CVD makes a higher low, aggressive selling is being absorbed by buyers, hinting at a bottom. Confirmation is the opposite: price and CVD making new highs together shows aggressive buyers are genuinely driving the move. The slope of CVD shows the current balance of aggression, and flat CVD during a price move signals that the move lacks aggressive backing. The key concept is absorption: large effort in the delta with little price result reveals a strong opposing passive participant.
Best timeframes and settings
CVD is primarily an intraday order-flow tool used on futures and other centralised markets with reliable trade data, on timeframes from tick and one-minute up to hourly charts. It is typically reset each session so the cumulative total reflects the current day's flow, though some traders run it continuously. There are no smoothing periods in the classic form; the setting is really the bar interval and the reset convention. It is most meaningful on liquid instruments such as index and commodity futures and large-cap stocks, where aggressor classification is accurate and order flow is deep. On markets without true trade data, such as much of spot forex, CVD is approximated and less trustworthy. The trade-off is data quality: the finer and more accurate the trade classification, the more reliable the delta.
When and where to use it
Use Cumulative Volume Delta when you want to see the aggression behind price, to confirm that a breakout has real buying force, or to catch absorption and divergence that warn a move is failing. It is most valuable to intraday futures and order-flow traders on liquid instruments, where it exposes the interaction between aggressive and passive participants that price alone hides. It shines at key levels such as support, resistance, and prior value areas, where you want to know whether aggressors are breaking through or being absorbed. It is not a standalone system and offers little on illiquid instruments or markets without proper trade data. Reach for it when the question is who is in control at this level, and pair it with price structure to act.
Strategies that use it
Divergence reversal: at a new price high with CVD failing to confirm, look to fade the move as absorption, entering short on a price trigger with a stop above the high, and mirror this at new lows for longs. Breakout confirmation: trust a breakout through resistance only when CVD is rising and making new highs alongside price, showing aggressive buyers are genuinely driving it, and be wary when price breaks out but CVD stalls. Absorption at levels: watch for heavy delta with little price movement at support or resistance, signalling a large passive participant absorbing the aggression, and trade in the direction of the absorbing side once price confirms. In each case CVD reveals the aggression while price structure defines the entry and risk.
Combining it with other indicators
CVD is most powerful alongside price structure, including support, resistance, and value areas from a volume profile, where absorption and divergence become actionable. Volume profile and footprint charts complement it, showing where in price the delta occurred. A higher-timeframe trend read keeps CVD divergences in context, so you fade rallies in a downtrend rather than fighting a strong uptrend. Traditional volume and momentum tools can corroborate the aggression story. The consistent approach is to use CVD as the order-flow lens, telling you who is aggressing and whether it is working, while price levels and profile tools tell you where that battle matters most.
Where it fails
CVD's biggest vulnerability is data quality: without accurate trade-level aggressor classification it is only an approximation, and on markets lacking true trade data it can mislead. Aggressor tagging itself is imperfect, since a trade at the bid or offer does not always reveal true intent, and large passive players can distort the picture. Divergences can persist, so absorption can continue far longer than expected before price responds, or price can simply keep going. It is a specialist tool that demands an understanding of order flow, and naive use invites misreading. The remedies are to use it only on liquid instruments with reliable data, to combine it with price levels rather than trading it raw, and to treat divergence as a warning that still needs price confirmation.
A worked example
Imagine an index future grinding to a new intraday high. Over the final push, price ticks up from 4,500 to a fresh high of 4,505, but the Cumulative Volume Delta, which had been climbing all morning, fails to exceed its earlier peak, because each new price tick is met by heavy volume on the bid, so aggressive buying is being absorbed by passive sellers. This bearish divergence says the rally's new high is not backed by net aggressive buying and the effort is being soaked up. An order-flow trader watching this would prepare to fade the high, waiting for price to roll over and print a lower high or a bearish reversal on the tape, then entering short with a stop above 4,505, reading the CVD divergence as evidence that a large seller absorbed the buyers and the uptrend is likely exhausting.