OPEN-SOURCE SCRIPT
Volume Ignition Oscillator

Volume Ignition Oscillator (VIO)
Volume Ignition Oscillator flags potential exhaustion points after a sharp price move by combining three conditions: a recent large price swing, price sitting at a range extreme, and volume running hot relative to its recent average. When all three line up, the oscillator "ignites" — hence the name.
How it works
Big Move Detection — the script measures the price change over a lookback window (default 5 bars) against a multiple of ATR (default 2x, 14-period ATR). A move that clears this threshold opens a "watch window" of N bars (default 8) during which the indicator is active — up-moves open a top watch, down-moves open a bottom watch.
Range Position — price's position within the recent high/low range (default 20 bars) is calculated as a 0–1 value. The oscillator only engages when price is in the top zone (default ≥75%) during a top watch, or the bottom zone (default ≤25%) during a bottom watch.
Volume Surge — current volume is compared to its moving average (default 20-period SMA). The excess volume above that average scales the signal — the more volume expands beyond normal, the stronger the reading.
These three factors combine into a raw oscillator value, which is then EMA-smoothed. A slower EMA of the oscillator acts as a signal line.
Reading the indicator
Columns above zero (shaded toward red) = potential topping pressure: a big up-move, price near the highs, and volume ignition.
Columns below zero (shaded toward teal/green) = potential bottoming pressure: a big down-move, price near the lows, and volume ignition.
Column brightness/gradient scales with the strength of the current reading relative to the last 100 bars.
Background shading shows when a watch window is active and fades out as the window expires.
Triangle markers print when the oscillator crosses the signal threshold (default ±0.15): a down-triangle at the top signals possible short/exhaustion, an up-triangle at the bottom signals possible long/exhaustion.
Info panel (top-right, optional) shows the live oscillator value, volume ratio, range position %, and current watch zone.
Suggested use
VIO is designed as a mean-reversion / exhaustion tool, not a trend-following signal. It's best used to:
Spot potential climax moves after an extended impulsive swing on rising volume
Time partial profit-taking or tightened stops on existing trend positions
Screen for reversal candidates that can then be confirmed with price action, support/resistance, or another momentum tool
It is not intended as a standalone entry system — combine it with your own risk management and confirmation criteria. Like any exhaustion/reversal tool, it can trigger repeatedly during strong sustained trends, so treat signals as alerts to watch price action rather than automatic trade triggers.
Inputs
Big Move Detection — lookback bars, ATR length, move threshold (x ATR), post-move watch window length
Volume — volume moving average length
Range Position — range lookback, top/bottom zone thresholds
Signal — oscillator smoothing length, signal trigger level
Appearance — top/bottom colors, toggle for the info panel
Alerts
Two alert conditions are built in:
VIO Short Signal — fires on a top exhaustion cross
VIO Long Signal — fires on a bottom exhaustion cross
Volume Ignition Oscillator flags potential exhaustion points after a sharp price move by combining three conditions: a recent large price swing, price sitting at a range extreme, and volume running hot relative to its recent average. When all three line up, the oscillator "ignites" — hence the name.
How it works
Big Move Detection — the script measures the price change over a lookback window (default 5 bars) against a multiple of ATR (default 2x, 14-period ATR). A move that clears this threshold opens a "watch window" of N bars (default 8) during which the indicator is active — up-moves open a top watch, down-moves open a bottom watch.
Range Position — price's position within the recent high/low range (default 20 bars) is calculated as a 0–1 value. The oscillator only engages when price is in the top zone (default ≥75%) during a top watch, or the bottom zone (default ≤25%) during a bottom watch.
Volume Surge — current volume is compared to its moving average (default 20-period SMA). The excess volume above that average scales the signal — the more volume expands beyond normal, the stronger the reading.
These three factors combine into a raw oscillator value, which is then EMA-smoothed. A slower EMA of the oscillator acts as a signal line.
Reading the indicator
Columns above zero (shaded toward red) = potential topping pressure: a big up-move, price near the highs, and volume ignition.
Columns below zero (shaded toward teal/green) = potential bottoming pressure: a big down-move, price near the lows, and volume ignition.
Column brightness/gradient scales with the strength of the current reading relative to the last 100 bars.
Background shading shows when a watch window is active and fades out as the window expires.
Triangle markers print when the oscillator crosses the signal threshold (default ±0.15): a down-triangle at the top signals possible short/exhaustion, an up-triangle at the bottom signals possible long/exhaustion.
Info panel (top-right, optional) shows the live oscillator value, volume ratio, range position %, and current watch zone.
Suggested use
VIO is designed as a mean-reversion / exhaustion tool, not a trend-following signal. It's best used to:
Spot potential climax moves after an extended impulsive swing on rising volume
Time partial profit-taking or tightened stops on existing trend positions
Screen for reversal candidates that can then be confirmed with price action, support/resistance, or another momentum tool
It is not intended as a standalone entry system — combine it with your own risk management and confirmation criteria. Like any exhaustion/reversal tool, it can trigger repeatedly during strong sustained trends, so treat signals as alerts to watch price action rather than automatic trade triggers.
Inputs
Big Move Detection — lookback bars, ATR length, move threshold (x ATR), post-move watch window length
Volume — volume moving average length
Range Position — range lookback, top/bottom zone thresholds
Signal — oscillator smoothing length, signal trigger level
Appearance — top/bottom colors, toggle for the info panel
Alerts
Two alert conditions are built in:
VIO Short Signal — fires on a top exhaustion cross
VIO Long Signal — fires on a bottom exhaustion cross
Open-source Skript
Ganz im Sinne von TradingView hat dieser Autor sein/ihr Script als Open-Source veröffentlicht. Auf diese Weise können nun auch andere Trader das Script rezensieren und die Funktionalität überprüfen. Vielen Dank an den Autor! Sie können das Script kostenlos verwenden, aber eine Wiederveröffentlichung des Codes unterliegt unseren Hausregeln.
Haftungsausschluss
Die Informationen und Veröffentlichungen sind nicht als Finanz-, Anlage-, Handels- oder andere Arten von Ratschlägen oder Empfehlungen gedacht, die von TradingView bereitgestellt oder gebilligt werden, und stellen diese nicht dar. Lesen Sie mehr in den Nutzungsbedingungen.
Open-source Skript
Ganz im Sinne von TradingView hat dieser Autor sein/ihr Script als Open-Source veröffentlicht. Auf diese Weise können nun auch andere Trader das Script rezensieren und die Funktionalität überprüfen. Vielen Dank an den Autor! Sie können das Script kostenlos verwenden, aber eine Wiederveröffentlichung des Codes unterliegt unseren Hausregeln.
Haftungsausschluss
Die Informationen und Veröffentlichungen sind nicht als Finanz-, Anlage-, Handels- oder andere Arten von Ratschlägen oder Empfehlungen gedacht, die von TradingView bereitgestellt oder gebilligt werden, und stellen diese nicht dar. Lesen Sie mehr in den Nutzungsbedingungen.