OPEN-SOURCE SCRIPT

ATR Adaptive RSI Oscillator

Atualizado
The "ATR Adaptive RSI Oscillator" is a versatile technical analysis tool designed to help traders make informed decisions in dynamic market conditions. It combines the Relative Strength Index (RSI) with the Average True Range (ATR) to provide adaptive and responsive insights into price trends.

Key Features:

  • Adaptive RSI Periods: The indicator introduces the concept of adaptive RSI periods based on the ATR (Average True Range) of the market. When enabled, it dynamically adjusts the RSI calculation period, offering longer periods during high volatility and shorter periods during low volatility. This adaptability enhances the accuracy of RSI signals across varying market conditions.

  • Volume-Based Smoothing: The indicator includes a smoothing feature that computes a time-decayed weighted moving average of RSI values over the last two bars, using volume-based weights. This approach offers a time-sensitive smoothing effect, reducing noise for a clearer view of trend strength compared to the standard RSI.

  • Divergence Detection: Traders can enable divergence detection to identify potential reversal points in the market. The indicator highlights regular bullish and bearish divergences, providing valuable insights into market sentiment shifts.

  • Customizable Parameters: Traders have the flexibility to customize various parameters, including RSI length, adaptive mode, ATR length, and divergence settings, to tailor the indicator to their trading strategy.

  • Overbought and Oversold Levels: The indicator includes overbought (OB) and oversold (OS) boundary lines that can be adjusted to suit individual preferences. These levels help traders identify potential reversal zones.


The "ATR Adaptive RSI Oscillator" is a powerful tool for traders seeking to adapt their trading strategies to changing market dynamics. Whether you're a trend follower or a contrarian trader, this indicator provides valuable insights to support your decision-making process.
Notas de Lançamento
Change Log:

1. Some bug fixes

2. Added logic to enhance the calculation of dynamic/adaptive RSI length, now derived from a Normal Distribution based on a larger data sample.
Normal Distribution: The Normal Distribution is a statistical concept used to model the distribution of data. It is characterized by two key parameters: the mean (average) and the standard deviation (a measure of data dispersion).

  • Identifying Data Points (ATR) : The primary objective of utilizing this dataset and Normal Distribution is to identify specific data points that meet predefined criteria.
  • Criteria Exceeding One Standard Deviation (1st Z-Score Range): The selection criteria involve identifying ATRs that deviate from the mean by more than one standard deviation. In simpler terms, we focus on data points that fall outside the range of one standard deviation above and below the mean.
  • Adaptive RSI Length: The adaptive RSI length is dynamically determined based on the characteristics of the dataset and the criteria mentioned above. Specifically, when data points exceed one standard deviation from the mean, indicating increased volatility or divergence from the norm, the RSI calculation period is adjusted. This adaptive approach ensures that the RSI indicator responds effectively to changing market conditions."
Notas de Lançamento
Bugfix: The 'over1ZscoreAtr' array, which was previously limited to 100, has now been configured to match the 'i_sampleSize' input
Notas de Lançamento
  • Added z-score. The Z-scores multiplier acts as a filtering mechanism, offering insights into the degree to which each data point (ATR) deviates from the mean in terms of standard deviations.
  • Made minor changes and added input constraints.

Notas de Lançamento
Code refactor
  • Code Refactor
  • Added dynamic color for "RSI plot".
  • Added a switch to control the appearance of the RSI length boost histogram.
Notas de Lançamento
Bug fixes
Notas de Lançamento
changed z-score default value to 2
Notas de Lançamento
Added original RSI plot
Notas de Lançamento
  • Code refactor
  • Incorporated an indicator description as comments within the code to provide better context and understanding
Notas de Lançamento
Technical Optimizations:

  • Normalized ATR values to align with the boosted range of RSI lengths, refining the adaptive mechanism.
  • Simplified RSI calculations for various periods and implemented a new method for adaptive length determination based on ATR conditions.


Code Refinements:

  • Adopted camelCase naming convention throughout the script for improved readability and standardization.
  • Added minimalistic and informative comments to aid in understanding the script's functionality.
Notas de Lançamento
Minor bug fixes
Notas de Lançamento
Function to Calculate Dynamic Length for ATR Adaptive Indicators added
Notas de Lançamento
Code refactor
Notas de Lançamento
Change Log:

  • Improved RSI calculation efficiency and accuracy.
  • Optimized code for faster execution and better resource management.
Notas de Lançamento
Changes include:

  • Improvements to the non-adaptive mode functionality.
  • Resolved issues with runtime errors.
  • Enhanced data collection for the default length when not using adaptive mode.
Notas de Lançamento
Updated documentation for functions (documentation strings)
adaptiversiATRAverage True Range (ATR)Bands and ChannelsdivergencesRelative Strength Index (RSI)smoothingvolatilty

Script de código aberto

No verdadeiro espírito do TradingView, o autor desse script o publicou como código aberto, para que os traders possam compreendê-lo e analisá-lo. Parabéns ao autor! Você pode usá-lo gratuitamente, mas a reutilização desse código em publicações é regida pelas Regras da Casa. Você pode favoritá-lo para usá-lo em um gráfico.

Quer usar esse script no gráfico?


Também em:

Aviso legal