OPEN-SOURCE SCRIPT
Rolling Volume Delta

█ OVERVIEW
Rolling Volume Delta (RVD) estimates net buying vs. selling pressure per bar, then weights that pressure by how much price actually moved — so a strong directional bar counts for more than a quiet, indecisive one. The result is summed over a rolling window, smoothed, and normalized against total volume so it reads consistently across different instruments and volume regimes.
█ CONCEPT
Most volume delta tools estimate buy/sell pressure and stop there. RVD adds one more step: it multiplies each bar's estimated delta by the magnitude of that bar's price change. The logic is that a bar where buyers dominate AND price actually moved higher represents more conviction than a bar with the same buy/sell split during a flat, choppy stretch. That weighted delta is then summed over a rolling window and smoothed, so the final line reflects sustained pressure rather than single-bar noise.
█ HOW IT WORKS
1. Buy/sell split: each bar's volume is divided between buy and sell based on where the close landed within that bar's high-low range (close near the high = buy-weighted, close near the low = sell-weighted).
2. Price weighting: that delta is multiplied by the percentage price change over a configurable lookback, so bars with bigger moves are weighted more heavily.
3. Rolling sum: the weighted delta is summed over a configurable lookback window.
4. Smoothing: an EMA is applied to reduce noise.
5. Normalization: the smoothed result is divided by total volume over the same window and expressed as a percentage, keeping the scale comparable across tickers and sessions.
█ HOW IT DIFFERS FROM OTHER VOLUME DELTA SCRIPTS
Other delta oscillators calculate buy/sell pressure and smooth it directly. RVD's price-weighting step means the indicator isn't just "how much delta happened" but "how much delta happened relative to how much the market actually moved" — filtering out high-volume, low-conviction chop from the signal.
█ SETTINGS
- Lookback Length — bars summed together for the rolling delta. Longer = smoother, slower.
- Smoothing — EMA length applied to the rolling sum.
- Momentum Lookback — bars back used to measure price change for weighting. Higher values emphasize sustained moves over single-bar spikes.
As bars carry more information on their own (higher timeframes), less summing and smoothing is needed for a clean read. Within any timeframe, trending conditions benefit from longer/smoother settings that confirm sustained pressure and filter chop, while ranging conditions benefit from shorter/quicker settings that catch reversals near the extremes at the cost of more false flips in the middle of the range.
Suggested starting points:
Timeframe | Condition | Length | Smoothing | Momentum Lookback
5-30 min | Trend / Price Discovery | 14-20 | 3-5 | 1-2
5-30 min | Range / Accumulation | 8-10 | 1-2 | 1
1-4 hour | Trend / Price Discovery | 10-14 | 2-3 | 2-4
1-4 hour | Range / Accumulation | 6-8 | 1-2 | 1-2
Daily+ | Trend / Price Discovery | 8-10 | 2 | 3-5
Daily+ | Range / Accumulation | 5-6 | 1 | 2
These are included in each input's tooltip in the settings popup as well.
█ NOTES
This is a volume-estimation tool based on standard OHLCV data (bar range and close position), not true tick-level buy/sell data — most retail data feeds don't provide that, so this is the same practical tradeoff most public volume delta scripts make. It's intended as a context tool for reading order flow alongside price action, not a standalone signal generator.
This publication is for educational purposes only and does not constitute financial advice. Past performance and visual patterns do not guarantee future results.
Rolling Volume Delta (RVD) estimates net buying vs. selling pressure per bar, then weights that pressure by how much price actually moved — so a strong directional bar counts for more than a quiet, indecisive one. The result is summed over a rolling window, smoothed, and normalized against total volume so it reads consistently across different instruments and volume regimes.
█ CONCEPT
Most volume delta tools estimate buy/sell pressure and stop there. RVD adds one more step: it multiplies each bar's estimated delta by the magnitude of that bar's price change. The logic is that a bar where buyers dominate AND price actually moved higher represents more conviction than a bar with the same buy/sell split during a flat, choppy stretch. That weighted delta is then summed over a rolling window and smoothed, so the final line reflects sustained pressure rather than single-bar noise.
█ HOW IT WORKS
1. Buy/sell split: each bar's volume is divided between buy and sell based on where the close landed within that bar's high-low range (close near the high = buy-weighted, close near the low = sell-weighted).
2. Price weighting: that delta is multiplied by the percentage price change over a configurable lookback, so bars with bigger moves are weighted more heavily.
3. Rolling sum: the weighted delta is summed over a configurable lookback window.
4. Smoothing: an EMA is applied to reduce noise.
5. Normalization: the smoothed result is divided by total volume over the same window and expressed as a percentage, keeping the scale comparable across tickers and sessions.
█ HOW IT DIFFERS FROM OTHER VOLUME DELTA SCRIPTS
Other delta oscillators calculate buy/sell pressure and smooth it directly. RVD's price-weighting step means the indicator isn't just "how much delta happened" but "how much delta happened relative to how much the market actually moved" — filtering out high-volume, low-conviction chop from the signal.
█ SETTINGS
- Lookback Length — bars summed together for the rolling delta. Longer = smoother, slower.
- Smoothing — EMA length applied to the rolling sum.
- Momentum Lookback — bars back used to measure price change for weighting. Higher values emphasize sustained moves over single-bar spikes.
As bars carry more information on their own (higher timeframes), less summing and smoothing is needed for a clean read. Within any timeframe, trending conditions benefit from longer/smoother settings that confirm sustained pressure and filter chop, while ranging conditions benefit from shorter/quicker settings that catch reversals near the extremes at the cost of more false flips in the middle of the range.
Suggested starting points:
Timeframe | Condition | Length | Smoothing | Momentum Lookback
5-30 min | Trend / Price Discovery | 14-20 | 3-5 | 1-2
5-30 min | Range / Accumulation | 8-10 | 1-2 | 1
1-4 hour | Trend / Price Discovery | 10-14 | 2-3 | 2-4
1-4 hour | Range / Accumulation | 6-8 | 1-2 | 1-2
Daily+ | Trend / Price Discovery | 8-10 | 2 | 3-5
Daily+ | Range / Accumulation | 5-6 | 1 | 2
These are included in each input's tooltip in the settings popup as well.
█ NOTES
This is a volume-estimation tool based on standard OHLCV data (bar range and close position), not true tick-level buy/sell data — most retail data feeds don't provide that, so this is the same practical tradeoff most public volume delta scripts make. It's intended as a context tool for reading order flow alongside price action, not a standalone signal generator.
This publication is for educational purposes only and does not constitute financial advice. Past performance and visual patterns do not guarantee future results.
Mã nguồn mở
Theo đúng tinh thần TradingView, tác giả của tập lệnh này đã công bố nó dưới dạng mã nguồn mở, để các nhà giao dịch có thể xem xét và xác minh chức năng. Chúc mừng tác giả! Mặc dù bạn có thể sử dụng miễn phí, hãy nhớ rằng việc công bố lại mã phải tuân theo Nội quy.
Thông báo miễn trừ trách nhiệm
Thông tin và các ấn phẩm này không nhằm mục đích, và không cấu thành, lời khuyên hoặc khuyến nghị về tài chính, đầu tư, giao dịch hay các loại khác do TradingView cung cấp hoặc xác nhận. Đọc thêm tại Điều khoản Sử dụng.
Mã nguồn mở
Theo đúng tinh thần TradingView, tác giả của tập lệnh này đã công bố nó dưới dạng mã nguồn mở, để các nhà giao dịch có thể xem xét và xác minh chức năng. Chúc mừng tác giả! Mặc dù bạn có thể sử dụng miễn phí, hãy nhớ rằng việc công bố lại mã phải tuân theo Nội quy.
Thông báo miễn trừ trách nhiệm
Thông tin và các ấn phẩm này không nhằm mục đích, và không cấu thành, lời khuyên hoặc khuyến nghị về tài chính, đầu tư, giao dịch hay các loại khác do TradingView cung cấp hoặc xác nhận. Đọc thêm tại Điều khoản Sử dụng.