indicator · own pane · open source

Cumulative Volume Delta

Deepwick · @deepwickv1Updated 2 Oct 2026▲ 0 users
Running…
Loading chart…

About

Cumulative Volume Delta (CVD) is the running sum of volume signed by each bar's direction — the closest single-line approximation of net buy vs sell flow when only OHLCV is available.

  • Rising CVD = aggressive buyers winning the auction.
  • Falling CVD = aggressive sellers winning; divergences against price are a common reversal cue.

Source code

//@version=5
indicator("Cumulative Volume Delta", overlay=false)
src = input.source("close", "Source")
chg = src - src[1]
dir = chg > 0 ? 1 : chg < 0 ? -1 : 0
cvd = ta.cum(dir * volume)
hline(0, "Zero", color=color.gray)
p_CVD = plot(cvd, "CVD", color=color.blue, linewidth=2)
alertcondition(ta.crossover(cvd, ta.highest(cvd, 50)), "New 50-bar CVD high", "CVD printed a new 50-bar high")
alertcondition(ta.crossunder(cvd, ta.lowest(cvd, 50)), "New 50-bar CVD low", "CVD printed a new 50-bar low")

Comments

No comments yet.

Sign in to comment.