OPEN-SOURCE SCRIPT

RSI: chart overlay

292

This indicator maps RSI thresholds directly onto price. Since the EMA of price aligns with RSI’s 50-line, it draws a volatility-based band around the EMA to reveal levels such as 70 and 30.

By converting RSI values into visible price bands, the overlay lets you see exactly where price would have to move to hit traditional RSI boundaries. These bands adapt in real time to both price movement and market volatility, keeping the classic RSI logic intact while presenting it in the context of price action. This approach helps traders interpret RSI signals without leaving the main chart window.

The calculation uses the same components as the RSI: alternative derivation script: Wilder’s EMA for smoothing, a volatility-based unit for scaling, and a normalization factor. The result is a dynamic band structure on the chart, representing RSI boundary levels in actual price terms.

Key components and calculation breakdown:
  1. Wilder’s EMA
    Used as the anchor point for measuring price position.
    Pine Script®
    myEMA = ta.rma(close, Length)
  2. Volatility Unit
    Derived from the EMA of absolute close-to-close price changes.
    Pine Script®
    CC_vol = ta.rma(math.abs(close - close[1]), Length)
  3. Normalization Factor
    Scales the volatility unit to align with the RSI formula’s structure.
    Pine Script®
    normalization_factor = 1 / (Length - 1)
  4. Upper and Lower Boundaries
    Defines price bands corresponding to selected RSI threshold values.
    Pine Script®
    up_b = myEMA + ((upper - 50) / 50) * (CC_vol / normalization_factor) down_b = myEMA - ((50 - lower) / 50) * (CC_vol / normalization_factor)
  5. Inputs
    • RSI length
    • Upper boundary – RSI level above 50
    • Lower boundary – RSI level below 50
    • ON/OFF toggle for 50-point line (EMA of close prices)
    • ON/OFF toggle for overbought/oversold coloring (use with line chart)



Interpretation:
  • Each band on the chart represents a chosen RSI level.
  • When price touches a band, RSI is at that threshold.
  • The distance between moving average and bands adjusts automatically with volatility and your selected RSI length.
  • All calculations remain fully consistent with standard RSI values.




Feedback and code suggestions are welcome, especially regarding implementation efficiency and customization.

Pernyataan Penyangkalan

Informasi dan publikasi tidak dimaksudkan untuk menjadi, dan bukan merupakan saran keuangan, investasi, perdagangan, atau rekomendasi lainnya yang diberikan atau didukung oleh TradingView. Baca selengkapnya di Persyaratan Penggunaan.