相对活力指数 (RVI) 的计算基于这样的理念:在上升趋势中,收盘价通常高于开盘价。
而在下降趋势中则恰好相反。价格变动被划分为一个K线内的最高价区间,以标准化这个指数:
RVI = (CLOSE - OPEN) / (HIGH - LOW)
- OPEN - 开盘价;
- HIGH - 最高价;
- LOW - 最低价;
- CLOSE - 收盘价。
该振荡器经过平滑处理,以排除偶发的价格波动。信号线的生成方式相同。这种知名指标的变种主要优点在于,可以通过选择十种不同的算法来更改RVI和信号线的平滑算法:
- SMA - 简单移动平均;
- EMA - 指数移动平均;
- SMMA - 平滑移动平均;
- LWMA - 线性加权移动平均;
- JJMA - JMA 自适应平均;
- JurX - 超线性平滑;
- ParMA - 抛物线平滑;
- T3 - Tillson 多重指数平滑;
- VIDYA - 使用 Tushar Chande 算法的平滑;
- AMA - 使用 Perry Kaufman 算法的平滑。
需要注意的是,Phase 参数在不同平滑算法中有着完全不同的含义。
- 对于 JMA,Phase 是一个外部变量,变化范围为 -100 到 +100。
- 对于 T3,Phase 是平滑比率乘以100,以便于更好的可视化;
- 对于 VIDYA,Phase 是 CMO 周期,而对于 AMA,则是慢 EMA 周期;
- 对于 AMA,快速 EMA 周期是一个固定值,默认等于2。提升的幂次也为2。
该指标使用 SmoothAlgorithms.mqh 库类(必须复制到 terminal_data_folder\MQL5\Include 目录)。关于该类的使用,已在文章 “无需使用额外缓冲区的中间计算平均价格序列” 中详细描述。
