The Cumulative Volume Delta (CVD) is an absolutely fundamental tool for many professional traders, especially those specializing in Day Trading or Scalping in high-liquidity markets (Futures, Crypto, Forex).
Unlike lagging indicators based on price (such as RSI or MACD), CVD gets to the root of market movement: Order Flow.
Why do professionals use it?
CVD measures the net difference between aggressive buying volume (market orders) and aggressive selling volume. While price shows where the market is, CVD shows who is in control.
- Identifying Absorption: This is its most powerful use. If the price is dropping while the CVD is rising, it means large “passive” buyers are absorbing all the aggressive selling. This is often a sign of an imminent reversal.
- Confirming Trend Strength: In a healthy trend, price and CVD move up together. If the price climbs but the CVD flattens or drops, the trend is losing steam—buyers are no longer “hitting the tape” aggressively.
- Spotting Divergences: Pros track divergences between price peaks and CVD peaks to anticipate false breakouts (bull traps/bear traps).
Who specifically uses it?
- Footprint Traders: They use CVD alongside Footprint charts to see the cumulative pressure over an entire session.
- Futures Traders (Indices/Gold/Oil): On these centralized exchanges, volume data is precise, making the CVD extremely reliable.
- Crypto Traders: Given the volatility and the heavy impact of market orders and liquidations in crypto, CVD has become an industry standard.
Limitations to keep in mind
While powerful, CVD is not a magic formula. It does not account for limit orders (passive liquidity) that have not yet been executed. A CVD exploding to the upside can still crash against a “wall” of hidden sell orders that are only visible on an Order Book or a Heatmap.
Pro Tip: CVD is most effective on lower timeframes (Intraday). On longer horizons (Weekly/Monthly), its utility diminishes as the delta tends to mean-revert or wash out over time.
Good news: QChartist now integrates order flow indicator CVD in build 324 !
Change Log:
2026-02-12:
- New indicator for separate canvas: CVD (Cumulative Volume Delta)
To make the indicator work, please first put the value of “counted bars:” (cntbarsedit)
from 1000 to 3000 ; then you have to load your symbol on
3 timeframes : Daily TF,1 Minute TF and 1 Hour TF (we visualize it on 1H)
Dont forget to put counted bars back to 1000 after using this indicator
I made this indicator greatly with the help of AI chat bot and it made me save
a lot of time.
On small caps cryptos, CVD should be >100k/<-100k before expecting a significant reversal - Recommended trading system improved in the trading_system.zip file
- build 323
2026-03-11:
- Fixed the CVD indicator, now it displays correct values
To make the indicator work, please first put the value of “counted bars:” (cntbarsedit)
from 1000 to 3000 ; then you have to load your symbol on
3 timeframes : Daily TF,1 Minute TF and 1 Hour TF (we visualize it on 1H)
Dont forget to put counted bars back to 1000 after using this indicator
On small caps cryptos, CVD should be >100k/<-100k before expecting a significant reversal - Recommended trading system improved in the trading_system.zip file
- Decreased tfintervalh1 value to 17280000 in QChartist.ini the way latest bars are
correctly downloaded on 1H charts
(please note that you’ll have to save and restore your data source api keys in a safe place
for this update) - build 324
The approximation of CVD indicator in QChartist assumes that the Conviction of a candle represents the Delta of that period. It typically uses the lowest timeframe available (M1) to build the data for higher timeframes (like H1 or D1).
Why Approximation is “Good Enough”
While it isn’t “True Delta” (which requires a Centralized Exchange like the CME), approximation is highly effective because of Arbitrage.
Because high-frequency trading bots link the Spot FX or crypto market (which you trade) to the Futures market (where real Delta happens), the price movement on your QChartist chart almost perfectly mirrors the aggressive buying/selling on the exchange. Therefore, a green M1 candle on QChartist is a very reliable signal that aggressive buying occurred on the Futures exchange.
Since you know the M1 candle is a proxy for aggressive orders:
- CVD Rising + Price Rising: Healthy trend (Aggressors are pushing and succeeding).
- CVD Falling + Price Rising: Exhaustion (Aggressors are stopping, price is moving on low liquidity).
- CVD Flat + Price Moving: Low conviction (The “Big Money” isn’t participating in the move).