Price Volume Rank Node

Rolling Price-Volume Pattern Classification Score

VolumeRankingTrend-Following

Overview

The Price Volume Rank Node classifies each bar according to the price-volume relationship pattern and accumulates a rolling score. The four patterns reflect the classic Wyckoff volume interpretation: price up on high volume (+2, strongest bullish), price up on low volume (+1, weak bullish), price down on high volume (−2, strongest bearish), and price down on low volume (−1, weak bearish).

The rolling sum of these scores over the look-back period quantifies the net price-volume momentum over that window. Positive values indicate bullish price-volume patterns are dominating; negative values indicate bearish patterns. The bounded range of [−2×period, +2×period] makes thresholding straightforward.

Algorithm

Per-bar classification
score = +2 if close > prevClose AND volume > prevVolume (price up, volume up)
score = +1 if close > prevClose AND volume ≤ prevVolume (price up, volume down)
score = −2 if close < prevClose AND volume > prevVolume (price down, volume up)
score = −1 if close < prevClose AND volume ≤ prevVolume (price down, volume down)
score = 0 if close = prevClose (unchanged)
PVR[i] = rolling sum of score over period bars
Range: [−2×period, +2×period]. Warm-up: period bars.

Parameters

ParameterDefaultDescription
period14Rolling window for summing per-bar classification scores

Inputs & Outputs

SlotDirectionTypeDescription
inputInputOHLCVStandard OHLCV price and volume data
valuesOutput(number | null)[]Rolling PVR score (range −2×period to +2×period)
timestampsOutputnumber[]Unix timestamps aligned to input

Use Cases

Trend Strength Confirmation

A sustained high positive PVR score confirms that upward price moves are backed by rising volume — strong bullish price-volume confirmation. When PVR is rising alongside price, the trend is supported by volume participation and is more likely to continue.

Divergence-Based Reversals

When price makes a new high but PVR forms a lower peak, the recent price advance is being driven by lower-quality volume patterns (+1 instead of +2 bars). This deteriorating price-volume structure often precedes trend exhaustion and reversal.

Breakout Validation

A breakout accompanied by several consecutive +2 bars (price up on higher volume) drives PVR to high positive readings — confirming genuine breakout momentum. A breakout accompanied mostly by +1 bars (low volume) yields subdued PVR, signaling a potential false breakout.

Tips & Best Practices

Normalize by Period for Comparison

To compare PVR across different period settings, divide the output by (2 × period) to normalize to a −1 to +1 range. This makes PVR with period=14 directly comparable to PVR with period=21, enabling multi-period confluence analysis.

Volume Comparison is Relative, Not Absolute

The classification compares each bar's volume to the previous bar's volume — not to any absolute threshold. This makes the indicator self-adapting to regime changes in average volume (e.g., pre/post earnings) without needing recalibration. However, it means an above-average volume day followed by another above-average day is still classified as "volume down" if the second bar is smaller.

Combine with OBV for Cumulative View

PVR provides a rolling window view of recent price-volume quality, while OBV provides a cumulative view of total money flow. Use PVR for timing entries (recent pattern strength) and OBV for assessing the overall accumulation/distribution trend.

Related Indicators