OPEN-SOURCE SCRIPT

RSI Trend Navigator [QuantAlgo]

249
🟢 Overview

The RSI Trend Navigator integrates RSI momentum calculations with adaptive exponential moving averages and ATR-based volatility bands to generate trend-following signals. The indicator applies variable smoothing coefficients based on RSI readings and incorporates normalized momentum adjustments to position a trend line that responds to both price action and underlying momentum conditions.
ảnh chụp nhanh
🟢 How It Works

The indicator begins by calculating and smoothing the RSI to reduce short-term fluctuations while preserving momentum information:
Pine Script®
rsiValue = ta.rsi(source, rsiPeriod) smoothedRSI = ta.ema(rsiValue, rsiSmoothing) normalizedRSI = (smoothedRSI - 50) / 50

It then creates an adaptive smoothing coefficient that varies based on RSI positioning relative to the midpoint:
Pine Script®
adaptiveAlpha = smoothedRSI > 50 ? 2.0 / (trendPeriod * 0.5 + 1) : 2.0 / (trendPeriod * 1.5 + 1)

This coefficient drives an adaptive trend calculation that responds more quickly when RSI indicates bullish momentum and more slowly during bearish conditions:
Pine Script®
var float adaptiveTrend = source adaptiveTrend := adaptiveAlpha * source + (1 - adaptiveAlpha) * nz(adaptiveTrend[1], source)

The normalized RSI values are converted into price-based adjustments using ATR for volatility scaling:
Pine Script®
rsiAdjustment = normalizedRSI * ta.atr(14) * sensitivity rsiTrendValue = adaptiveTrend + rsiAdjustment

ATR-based bands are constructed around this RSI-adjusted trend value to create dynamic boundaries that constrain trend line positioning:
Pine Script®
atr = ta.atr(atrPeriod) deviation = atr * atrMultiplier upperBound = rsiTrendValue + deviation lowerBound = rsiTrendValue - deviation

The trend line positioning uses these band constraints to determine its final value:
Pine Script®
if upperBound < trendLine trendLine := upperBound if lowerBound > trendLine trendLine := lowerBound

Signal generation occurs through directional comparison of the trend line against its previous value to establish bullish and bearish states:
Pine Script®
trendUp = trendLine > trendLine[1] trendDown = trendLine < trendLine[1] if trendUp isBullish := true isBearish := false else if trendDown isBullish := false isBearish := true

The final output colors the trend line green during bullish states and red during bearish states, creating visual buy/long and sell/short opportunity signals based on the combined RSI momentum and volatility-adjusted trend positioning.
ảnh chụp nhanh
🟢 Signal Interpretation
  • Rising Trend Line (Green): Indicates upward momentum where RSI influence and adaptive smoothing favor continued price advancement = Potential buy/long positions
  • Declining Trend Line (Red): Indicates downward momentum where RSI influence and adaptive smoothing favor continued price decline = Potential sell/short positions
  • Flattening Trend Lines: Occur when momentum weakens and the trend line slope approaches neutral, suggesting potential consolidation before the next move
    ảnh chụp nhanh
  • Built-in Alert System: Automated notifications trigger when bullish or bearish states change, sending "RSI Trend Bullish Signal" or "RSI Trend Bearish Signal" messages for timely entry/exit
  • Color Bar Candles Option: Optional candle coloring feature that applies the same green/red trend colors to price bars, providing additional visual confirmation of the current trend direction

Thông báo miễn trừ trách nhiệm

Thông tin và ấn phẩm không có nghĩa là và không cấu thành, tài chính, đầu tư, kinh doanh, hoặc các loại lời khuyên hoặc khuyến nghị khác được cung cấp hoặc xác nhận bởi TradingView. Đọc thêm trong Điều khoản sử dụng.