Volume Imbalance Node

Per-Bar Buy vs Sell Volume Percentage Score

VolumePressureNo Parameters

Overview

The Volume Imbalance Node quantifies the balance between estimated buy and sell volume on each bar. Buy volume is approximated as the proportion of total volume attributed to upward price movement (close relative to the bar's low), and sell volume to downward price movement (close relative to the bar's high). The result is a percentage score from −100 to +100.

A value of +100 means all volume was buying pressure (close at the high), while −100 means all volume was selling pressure (close at the low). Zero indicates perfect balance. This bar-by-bar measure requires no warm-up period and responds instantly to changes in intrabar price structure.

Algorithm

range = high − low (if range = 0: imbalance = 0)
buyVol = volume × (close − low) / range
sellVol = volume × (high − close) / range
imbalance = (buyVol − sellVol) / (buyVol + sellVol) × 100
Output: imbalance ∈ [−100, +100]. No warm-up. Bar-by-bar computation.
+100 = close at high (all buying); −100 = close at low (all selling).

Parameters

No configurable parameters. Volume Imbalance is fully determined by each bar's OHLCV data.

Inputs & Outputs

SlotDirectionTypeDescription
inputInputOHLCVStandard OHLCV price and volume data
valuesOutput(number | null)[]Imbalance percentage (−100 = all selling, +100 = all buying)
timestampsOutputnumber[]Unix timestamps aligned to input

Use Cases

Candle Strength Assessment

Volume Imbalance scores each candle by buyer/seller strength. A bullish candle (close near high) with imbalance near +80 to +100 confirms that buyers dominated the full session. The same bullish candle with imbalance near +10 means buyers barely edged out sellers despite closing higher — a weak candle regardless of its direction.

Reversals at Extremes

Multiple consecutive imbalance readings near +90 to +100 (extreme buying) may indicate a climactic buying frenzy — often followed by a pullback as buyers become exhausted. Similarly, imbalance near −90 to −100 for several bars indicates capitulation selling, which often precedes sharp bounces.

Entry Timing within Trends

In an established uptrend, wait for a pullback bar with imbalance reading near zero or slightly negative (balanced to slightly selling). This identifies a low-conviction pullback where sellers aren't strongly dominating — the best risk/reward entry into the trend rather than chasing a highly positive imbalance bar.

Tips & Best Practices

Smooth for Cleaner Signals

Volume Imbalance is noisy on a bar-by-bar basis. Apply a 3–5 period SMA to smooth the output before using threshold crossings. A smoothed imbalance crossing above +30 and staying there provides a cleaner "sustained buying pressure" signal than individual bar readings.

Doji Candles Produce Zero

Candles where close ≈ midpoint (high+low)/2 produce imbalance near zero, and candles with zero range (flat bars) produce exactly zero. These neutral readings don't indicate balanced pressure — they indicate an uninformative bar. Filter them using a minimum range threshold before acting on imbalance signals.

Functionally Similar to Demand Index

Volume Imbalance and Demand Index measure the same underlying concept (buy vs sell pressure per bar) but with different formulas and output scales. Volume Imbalance uses a symmetrical percentage scale (−100 to +100) while Demand Index uses a ratio scale (0 to ∞, centered at 1). Both are valid — choose based on how you prefer to set thresholds.

Related Indicators