OPEN-SOURCE SCRIPT

CVD Zones

3 951
CVD Zones maps cumulative volume delta aggression across price levels, building a thermal heatmap that reveals where institutional buyers and sellers have been genuinely active — not just where volume happened to trade.

Price has memory. Levels where aggressive order flow has historically concentrated tend to act as future support and resistance because the participants who built those positions are still there, defending them. A high-intensity bullish zone below current price represents a level where aggressive buyers absorbed supply repeatedly — that absorption does not disappear when price moves away. It becomes a floor that participants are motivated to protect. Conversely, a high-intensity bearish zone above price marks a level where sellers were persistent and in control.

CVD vs raw volume — why it matters

Most volume-based tools use raw volume. Raw volume tells you how much traded at a price level, but it says nothing about who was in control. A high-volume candle could be a battle between aggressive buyers and passive sellers, or it could be one-sided distribution. You cannot tell from volume alone.

The distinction that matters is between passive and aggressive order flow. Passive participants post limit orders and wait. They provide liquidity but do not move markets. Aggressive participants use market orders to take liquidity immediately at whatever price is available — they are the ones who actually drive price.

CVD Zones uses Cumulative Volume Delta to read that fingerprint. Each bar's volume is decomposed into aggressive buying and aggressive selling using the bar's price structure. That directional bias is accumulated into each price bin — so the heatmap reflects not just where activity occurred, but the nature and intent behind it.

Two CVD modes

Cumulative CVD — Accumulates total aggression per bin with directional coloring based on price position. Clean structural read of where the market has been most active.

Net CVD — Subtracts sell aggression from buy aggression per bin. Bins where buyers have dominated show bullish heat regardless of price position. Surfaces conviction rather than activity.

Hotspot overlay

In addition to the heatmap, CVD Zones includes an optional Hotspot Overlay that automatically identifies the highest-conviction price bins and renders them as labeled zones. Each hotspot displays the buy/sell aggression split inside the bin, giving you an immediate read on who controlled that level. A proximity filter based on ATR ensures hotspots remain meaningfully spaced rather than clustering at a single area.

snapshot

Settings worth knowing

Profile Depth — Controls how much historical data builds the CVD profile. Shallow (100 bars), Balanced (300 bars), or Deep (600 bars).

CVD Threshold % — Filters out low-conviction bars from the calculation. Only meaningful aggression events contribute to the heatmap.

Gradient Normalization — Linear, Square Root, or Cube Root scaling. Square Root and Cube Root modes surface faint bins without collapsing contrast on instruments with uneven volume distribution.

Volume-Weighted Midpoint — Assigns each bar to its bin using typical price (HLC/3) rather than close, more accurately reflecting where the bar actually traded.

Color Themes — Seven built-in themes (Traditional, Modern, Heatwave, Stealth, Aurora, Magma, Plasma) plus a fully Custom option.

Notes

Deep Profile is the recommended setting for most use cases. On lower-end hardware or symbols with very large bar histories, reducing Profile Depth to Balanced or Shallow will resolve any loading issues. The heatmap remains fully functional — you are simply trading historical depth for stability.

CVD Zones builds on the bin framework from Liquidity Thermal Map by BigBeluga.

Wyłączenie odpowiedzialności

Informacje i publikacje nie stanowią i nie powinny być traktowane jako porady finansowe, inwestycyjne, tradingowe ani jakiekolwiek inne rekomendacje dostarczane lub zatwierdzone przez TradingView. Więcej informacji znajduje się w Warunkach użytkowania.