Relative Volatility Index (RVI)

Relative Volatility Index (RVI)

1. Introduction

The Relative Volatility Index (RVI) is a technical indicator designed to measure the direction and magnitude of volatility. Unlike other volatility indicators that focus solely on the level of price fluctuations (such as Bollinger Bands or ATR), the RVI incorporates the trend direction, making it a valuable tool for identifying potential trade opportunities.

Developed in 1993 by Donald Dorsey, the RVI is often used in combination with trend-following indicators to confirm signals. It resembles the Relative Strength Index (RSI) but instead of measuring price momentum, it focuses on volatility direction.

2. Calculating the RVI

The RVI is calculated based on the standard deviation of price changes, smoothed over a predefined period. Here’s the step-by-step process:

  1. Standard Deviation Calculation:

    • The indicator computes the standard deviation (σ) of price over a selected period.
    • The standard deviation can be calculated using either the population or sample method.
  2. Directional Volatility Components:

    • If the closing price of the current bar is higher than the previous close, the volatility is considered positive.
    • If the closing price is lower, the volatility is negative.
  3. Smoothing the RVI:

    • The RVI is obtained by smoothing the ratio of positive volatility to total volatility over a set period.

The formula for the RVI is:

Values range from 0 to 100, where higher values indicate stronger upward volatility, and lower values signal downward volatility.

3. Configuration and Parameters

The RVI can be customized using several key parameters:

  • Standard Deviation Length (stdevLength): Defines the period for the standard deviation calculation (default: 10).
  • Smoothing Length (smoothLength): Defines the period used to smooth the RVI calculation (default: 14).
  • Overbought Level (obLevel): A predefined level where volatility suggests an overbought market (default: 80).
  • Oversold Level (osLevel): A predefined level where volatility suggests an oversold market (default: 20).
  • Moving Average Length (maLengthInput): Optional smoothing with a moving average (default: 14).
  • Bollinger Bands Activation (useBB): Allows the addition of Bollinger Bands around the RVI.

4. Interpretation and Trading Strategies

How to Use the RVI in Trading?

The RVI is commonly used to confirm trend strength and identify potential reversals:

  • Trend Confirmation:

    • A rising RVI suggests increasing bullish volatility, confirming an uptrend.
    • A falling RVI suggests increasing bearish volatility, confirming a downtrend.
  • Overbought/Oversold Signals:

    • If the RVI crosses above 80, it may indicate an overbought condition.
    • If the RVI drops below 20, it may signal an oversold condition.
  • Divergences:

    • If price makes a new high, but the RVI fails to do so, a bearish divergence may indicate weakening momentum.
    • If price makes a new low, but the RVI remains stable or rises, a bullish divergence may signal a potential reversal.

Strategy Ideas Using the RVI

  1. RVI + Moving Average:

    • Use a moving average of the RVI to filter out noise.
    • Buy when the RVI crosses above its moving average.
    • Sell when the RVI crosses below its moving average.
  2. RVI + Bollinger Bands:

    • If the RVI moves outside the upper Bollinger Band, it signals extreme bullish volatility.
    • If the RVI moves outside the lower Bollinger Band, it signals extreme bearish volatility.
  3. Breakout Confirmation:

    • Highlight breakouts by coloring the area where the RVI crosses key levels.
    • If RVI crosses above 80 and price breaks resistance, it confirms strong bullish momentum.

5. Implementation in ProRealTime

The RVI can be programmed in ProRealTime’s ProBuilder language, ensuring flexibility in customization. The implementation follows these key steps:

  1. Compute the standard deviation using the selected calculation method.
  2. Determine directional volatility (upward or downward).
  3. Apply smoothing to refine the final RVI value.
  4. Optionally, add a moving average and Bollinger Bands for additional analysis.
  5. Visualize the indicator with color-coded levels to highlight overbought and oversold zones.

The ProBuilder code follows these principles and allows easy parameter adjustments.

6. Conclusion

The Relative Volatility Index (RVI) is a powerful tool that provides insight into the direction of volatility, helping traders confirm trends and identify reversals. While it should not be used in isolation, combining it with moving averages, Bollinger Bands, or other momentum indicators can enhance its effectiveness.

Share this

Risk disclosure:

No information on this site is investment advice or a solicitation to buy or sell any financial instrument. Past performance is not indicative of future results. Trading may expose you to risk of loss greater than your deposits and is only suitable for experienced investors who have sufficient financial means to bear such risk.

ProRealTime ITF files and other attachments : How to import ITF files into ProRealTime platform?

PRC is also on YouTube, subscribe to our channel for exclusive content and tutorials

avatar
Register or

Likes

avatar avatar avatar
Related users ' posts
Bard I've also just noticed that changing the "Bands Deviation" setting from 1.25 to eg 3 doesn't...
bartekz Hi @Nicolas, Really impressed by your work. I am trying to replicate the Wave-PM indicator t...
Nicolas You don't have to replicate it, download the file and import it into your platform.
LucioleLucide Clean view, thanks for sharing
dertopen hi where i can found the window for candle configuration?
paolosab69 Ciao! . I have seen the pictures that explain this metod but i don't understand when is mome...
Thomas
6 years ago
Thomas Como? no intiendo. Can you write in english . It works! Download the itf file.
Thomas New Version comin soon...
CHARLESRACHELLE OLA NAO SERVE PARA MT4?
Marie-Eve Vergoz lorsque je copie les codes, le système me signale des erreurs à la ligne 12 et suivantes
Marie-Eve Vergoz sorry - tout est ok -
AlgoAlex
6 years ago
Marcot18 Alex ti sei superato
AlexF Esagerato!
jobswaps Sube como trazar lineas de tendencias a tantas barras
Frankiesc interesting indicator !! Thanks for sharing!!!
robertogozzi Thank you :)
JJ Tec Hola Las condiciones de entrada / salida vienen en el libro de J. Carter Mastering the trad...
Pixeldd Ich bekomme beim einfügen des Indikators einen Fehler angezeigt. Was bitte muss ich genau än...
HarryPro Hello, Firtly there appears to be a typo on line 6 "lenghkc=20" should this be "lengthkc=...
Nicolas En effet merci, erreur corrigée, la variable Risk affecte désormais comme il se doit les cal...
nader003 How can we get this indicator on MT4
Nicolas You can ask for private custom coding to our programming services: https://www.prorealcode.c...
sir_i Bonjour à tous, Je suis nouveau sur le forum et sur la plateforme, pourriez-vous me dire com...
Nicolas Il faut simplement l'appliquer sur le prix.
sir_i Merci pour la réponse, je ne suis pas familier avec l'application de cette procédure simple,...
Nicolas Il s'agit d'un indicateur compatible avec PRT v11 uniquement. Pour éviter les erreurs de cop...
Sébi Intéressant. Merci pour ce partage Nicolas. L'indicateur ne considère pas les divergences ...
Nicolas ok, pour les divergences chacun voit midi à sa porte je dirai :) Vu qu'il n'y a pas de formu...
mcha merci bien et félicitations pour la réactivité avec laquelle il a été mis dans la bibliothèq...
soulintact Great indicator Nicolas, thanks!
juanj
6 years ago
juanj I have actually completely redesigned this indicator with loads of improvements, so will res...
cdc.andersson Hello, when trying to include this wonderful Dynamic RSI on my trading system i get the erro...
Rafyone Bonjour Nicolas et bonne année lol J'ai une erreur qui apparait concernant drawbarchart une...
Nicolas Je pense que tu n'utilises pas le bon éditeur de code, cette instruction est compatible uniq...
Exalaxe Hey, i just noticed you optimized this strategy. Could i see your new version, please?
Andrea.1981 sorry i add my code but it not enter why i dont know
Andrea.1981 this is code simply stop , and you can see another version for stop / Codice principale...
AntoGH how did you backtest it ?
PastaPesto @AntoGH , I dont know if you are asking me, but my backtest was made in an IS of 4 years bet...
Ridder @PastaPesto Do you still running this and how is the results? Thanks
dau710 Are the Bulls Blue & the Bears Red?
dau710 Many thanks :)
ottimo Thank you Nicolas, great indicator, N. 1
tikigai Merci Nicolas! First Happy new Year 2020. Very good indicator BUT (yes the french "oui, m...
Nicolas Whats prorealtime version? Did you try in version prior to v11? indicator's call and loop ca...
lokbuscas is it possible to make a screener with this conditions??? thank you
achel I believe so but I leave it to Nicolas to decide if it is possible
Nicolas Please open a new topic in the screeners forum

Top