Downloading...
OPEN-SOURCE SCRIPT
Updated

Gabriel's Relative Strength Index

303
Gabriel’s RSI—The Reinvention of Relative Strength

Not your average RSI.

This is a fully reengineered Relative Strength Index that merges the power of advanced signal processing, adaptive smoothing, volume dynamics, and intelligent divergence detection into a single, modular toolkit designed for precision trading across all markets.

Whether you’re scalping crypto, swing trading equities, or dissecting futures contracts—Gabriel’s RSI adapts to your strategy with unrivaled control and clarity.

⚙️ 1. RSI Settings

RSI Length (Jurik): Set to 51 by default to mimic a 21-period standard RSI when Jurik smoothing is applied. Adjust lower (e.g., 22) to mimic a 9-period RSI. 32 would be almost ~14, 13.33 RSI.

RSI Source: The default is hlc3 for smoother RSI. Can be changed to any price-based series (close, open, etc.) for customization.

📡 VIX-Aware: Automatically switches to high/low/close during VIX spikes using a custom Z-score model if toggled. (I backtested it, and it catches bottoms better.) 📡

🎯 2. RSI Smoothing Options

MA Type: Smoothing applies to both RSI and its MA overlay simultaneously. I used to use the 56 EMA RSI, and it works well too.

Options: JMA, T3, Kalman, Laguerre, Super Smoother, ALMA, VWMA, LSMA, etc.

JMA: Best for adaptive recursive smoothing. A power of 2 and a phase of 50 are used.

T3: Smooth and lag-reduced, suitable for trend detection. The alpha is 0.7.

SMA + Bollinger Bands: Adds deviation-based envelopes for volatility spotting. BB StdDev: Only relevant if BBs are used. Controls bandwidth for overbought/oversold zones.

MA Length: Affects how smooth or reactive the RSI signal is.

📉 3. MACD Settings

Fast/Slow Length: Defaults (21/81) optimized for smoother MACD with SMA or T3. For Algo trading, EMA/JMA is best.

Signal Length: Shorter (e.g., 2) gives more reactive crossover signals; it can be increased.

Source: Default is close. Close works best for the settings I input. I also tuned some of the other MA types that worked for it.

MA Types: JMA and EMA reduce noise and increase signal generation. Select SMA for simplicity or T3 for trend-following.

Histogram: Bar colors signal strength and trend of MACD directly on your chart.

🔀 4. Directional Movement Index (DMI)

ADX Smoothing: High values (e.g., 100) offer strong trend confirmation with Hann Window smoothing 12, or 14 for either regular RMA or double smoothed.

DI Length: Affects DI+/- sensitivity. 100 ADX - 12/14 DI or 15 ADX - 35 DI are suggested, the latter for quicker boot time, as 100 bars is quite long.

Smoothing Type: Choose Hann Window for refined smoothing; RMA (SMMA) for simplicity. Double-smoothing is RMA -> Hann window, best of both types.

Volatility Type: ATR includes gaps for a full-range volatility; ADR is useful for gapless strategies, particularly OTC markets and intraday.

Plotted as area fills, 0 to 100 scaled.

Color-coded as Red (ADX), Orange (DI-), Blue (DI+).

📊 5. Volume Z-Score

%R Length: Normalizes volume to percentile range (73 swing, 112 exhaustion).

Z-Score Lengths: Compares short-term and long-term volume trends with Z-scores of volume.

Fast Z-Score < Slow Z-Score = Gives a Volume Squeeze.

Fast MA > Slow MA = Bullish Volume Divergence; volume has been fired. Not via Z-score, but instead via SMA, ALMA, and RMA of volume.

WPR Volume: Weighted %R used to highlight exhaustion/pivot points.

Plot volume bars after a volume squeeze has been fired; if bars aren't plotted, then it's under squeeze. Backtest on ES1! Prove it's good for catching bottoms below 15 minutes as well.

🧠 6. Divergence Engine

Pivot Settings: Pivot Period (12), Divergence minval Lookback (5), and max Lookback Bars (100) control sensitivity. Works well on any asset class; these are the optimal settings for the RSI.

Source Options: RSI, MACD, ADX, DI difference, or Volume %R.

Divergence Types: Regular (Mean Reversal), Hidden (Trend Continuation).

Heikin Ashi Mode: Enables use of HA candles on normal charts for smoother pivots. May distort values if your chart is H.A. so leave it unchecked then.

💥 7. Squeeze Momentum System (SQZMOM PRO)
Squeeze Types:

⚫ Wide (Black) — Regular Compression

🔴 Normal (Red) — Standard squeeze

🟡 Narrow (Yellow) — Golden squeeze

🟣 Very Narrow (Purple) — Extreme compression

🟢 Fired (Green) — Fired Squeeze = Breakout

Plotted on the very bottom of my indicator.

Momentum Bars:

🔷 Cyan = Rising

🔵 Blue = Pullback

🔴 Red = Falling

🟡 Yellow = Corrective

Plotted on the top of my indicator.

Reversal Signals: Dashed lines on momentum–JMA crossovers (DM-style pivot logic) ploted directly on the chart.

📈 8. Rate of Change (RoC)

RoC of Momentum: EMA-smoothed RoC on momentum for leading signals. Double smoothed, once and then another time for smoother signals.

RoC of Momentum → EMA → EMA → JMA Signal.

Signal Line: JMA used to filter noise and generate reversal signals.

Crossovers: Bullish/bearish signals based on RoC vs. signal line are plotted as triangles directly on your chart.

Optimized: Backtested for short-term setups like 1H or faster. Works on Daily timeframes as well for Futures and 24/7 Markets.

🕰️ 9. Multi-Timeframe Squeeze Settings

Each timeframe (Hourly, 4H, Daily, Weekly, Monthly) has:

Reversal Toggle: Enables dashed line DM-style pivots on crossovers.

MA Length: For Jurik MA smoothing on momentum.

BB/KC Thresholds: Define squeeze sensitivity per timeframe. A shorter BB/KC length, 17-14-12, responds better on lower timeframes.

Momentum Length: Tailors oscillator responsiveness; 20 is ideal.

🧮 10. BB Std. Deviation Scaling

Low-Pass Super Smoother : Smooths noise for BBs.

High-Pass Butterworth : Extracts cycles for BB Stdv. blend.

Root Mean Squared : Dynamic BB width adjustment based on market activity. True-range-based.

LP -> HP -> RMS -> Bollinger Band Multiplier (2.0)

Optional Intensify: Increases the squeeze rate * 4. Can be used for some option pricing strategies.

🧵 11. Moving Average Ribbon
4 optional MAs with full customization:

Choose from 13 MA types (incl. Kalman, Laguerre, T3, ALMA)

Color-coded for trend analysis (MA1–MA4 mimicking 9/21/50/200 periods)

Optional crossover alerts

🔔12. Alerts

RSI: Overbought/oversold reversals. Several types. (🦅 / 🕊️)

MACD: Histogram shift through zero line. (🐘 / 🐴)

DMI/ADX: Crossovers and strength conditions. The key level is the level where if DI/ADX is past this threshold, then it's considered to be trending. (🐬 / 🐋 / 🛡️)

Volume: Smart Money alerts on low-volume zones. May concentrate on ICT sessions. (🚨)

Squeeze: Alerts on all 5 squeeze states. (⚫, 🔴, 🟡, 🟣, 🟢)

Momentum: Momentum / JMA crosses and reversals. (🐂 / 🐻)

RoC: Bullish and bearish crosses. (📈 / 📉)

Divergences: Regular, hidden, and combined. (🐂 / 🐻 / 🐾 / 🐼)

MA Ribbon: Cross alert (⚔️)

VIX: VIX Z-Score past 2.0 (🏴‍☠️)

📊 13. Visual Output Summary
RSI Line + MA + Optional BB

MACD Histogram (Color Adaptive)

DMI/ADX Area Fills

%R Volume Bars (Smart Money)

Squeeze Dots (Circles)

Momentum Bars (Squares)

RoC Arrows (Cross Signals)

Pivot Break Lines (Dashed)

Auto-Divergence Lines & Labels

MA Ribbon Overlay (Optional)

✅ Best Practices ✅

Watch the slope of the RSI for pullbacks on a strong trend. Combine it with squeeze for exit timing.

Combine RSI Divergence with MACD histogram cross and Squeeze firing for precise entry.

Use Volume Z-Score to filter for institutional activity, and enter Long. Watch for reversals as well.

Watch RoC crossovers for fast, leading signals.

Enable Reversal Lines on 1H+ charts for breakout or breakdown pivots.

Use multi-timeframe thresholds for swing confirmation. The TFs I use the most are 2-5-15 minutes for futures and swinging with 1 hour daily and weekly. Those are the TFs I backtested.

An optional MA Ribbon is here as well; it supports 13 MA types.

🌎 Asset-Agnostic
MACD Automatically adjusts for Crypto, Forex, Stocks, Commodities, and Indices.

Custom ALMA, T3, Kalman, and Laguerre filters optimized per asset class and timeframe.

📚 Tech Highlights
Over 15,000 lines of modular, structured Pine Script v6 code.

Integration of Ehlers Cycle Theory and various other filters, one for each indicator.

Designed for visual clarity, multi-dimensional signal stacking, and low lag/high accuracy.

🌀 All 64 outputs are filled, so there might not be any more future updates. It's also a bit slow to load due to that.
Release Notes
I added new MA options for the Moving Average Ribbon.
Release Notes
I forgot something.
Release Notes
...
Release Notes
I added the TSI; as a divergence, it's the best for futures.
Release Notes
I improved coloring.

Disclaimer

The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.