If you're diving into the world of trading, you've probably come across the Relative Vigor Index (RVI). This nifty technical indicator helps traders gauge market momentum by comparing the closing and opening prices. Here’s the scoop: in a bullish market, the closing price typically exceeds the opening price, while in a bearish market, it’s the opposite. Essentially, the RVI measures the energy or 'vigor' behind price movements based on where prices end at the close.
To keep things balanced with the daily trading range, the RVI normalizes price changes by dividing the price difference by the maximum price range for the day. To smooth out the calculations, we often use a Simple Moving Average, and a period of 10 is generally ideal. To add clarity, a signal line is constructed, using a 4-period symmetrically weighted moving average of the RVI values. When these lines align, it signals a potential buy or sell opportunity.

Relative Vigor Index Indicator
How to Calculate RVI:
To get a handle on the RVI, you'll find it's calculated much like the Stochastic Oscillator. However, while the Stochastic focuses on the minimum price, the RVI compares closing levels to opening levels. The formula you’ll use is:
RVI = (CLOSE - OPEN) / (HIGH - LOW)
Where:
OPEN - Opening price;
HIGH - Highest price;
LOW - Lowest price;
CLOSE - Closing price.
Typically, the RVI is represented by two lines:
1. The first line is calculated similarly to the RVI, but instead of using the close and open prices, you’ll use the sums of 4-period symmetrically weighted moving averages:
MovAverage = (CLOSE-OPEN) + 2 * (CLOSE-1 - OPEN-1) + 2 * (CLOSE-2 - OPEN-2) + (CLOSE-3 - OPEN-3)
Where:
- CLOSE - Current close price;
- CLOSE-1, CLOSE-2, CLOSE-3 - Close prices from 1, 2, and 3 periods ago;
- OPEN - Current open price;
- OPEN-1, OPEN-2, OPEN-3 - Open prices from 1, 2, and 3 periods ago.
Next, you’ll calculate the 4-period symmetrically weighted moving average of the denominator:
RangeAverage = (HIGH-LOW) + 2 x (HIGH-1 - LOW-1) + 2 x (HIGH-2 - LOW-2) + (HIGH-3 - LOW-3)
Where:
- HIGH - Maximum price of the last bar;
- HIGH-1, HIGH-2, HIGH-3 - Maximum prices from 1, 2, and 3 periods ago;
- LOW - Minimum price of the last bar;
- LOW-1, LOW-2, LOW-3 - Minimum prices from 1, 2, and 3 periods ago.
Once you’ve got those moving averages, you can sum them over the last 4 periods, whether that’s hours or days:

2. The second line is simply the 4-period symmetrically weighted moving average of the first line:
RVIsignal = (RVIaverage + 2 * RVIaverage-1 + 2 * RVIaverage-2 + RVIaverage-3)/6
Related Posts
- Mastering the Open Range Breakout Indicator for MetaTrader 5
- Unlock Trading Insights with Volume Profile + Range v6.0 for MetaTrader 5
- Hourly Buffers for Data Collection in MetaTrader 5: A Simple Guide
- ID Lite Info MA: A Comprehensive Indicator for MetaTrader 5
- Maximize Your Trading Potential with the ColorX2MA_Alert Indicator for MetaTrader 5