Relative Vigor Index 指标:公式、参数与读法
相对活力指数(RVI)将每根K线收盘相对开盘的位置,与该K线完整的高低区间进行比较,再在一个窗口内汇总。它绘制两条线:RVI 及其信号线,默认周期为 10。
Senzoukria · 指标 · Updated September 2026
Relative Vigor Index — 动量, 显示在图表下方的独立面板中.
Relative Vigor Index 测量的是什么
每根K线的分子是收盘价减开盘价,分母是最高价减最低价。两者都先经过对称的四根K线加权(权重 1、2、2、1,除以 6),再在周期内求和。这种加权既不是简单平均,也不是指数平均:它把最大权重放在四根K线的中间,在过滤噪音的同时,相位只偏移一根半K线多一点。这个比值背后的逻辑是:有信念的市场会收在它开盘后所朝向的那个极值附近;除以区间则消除了品种本身的价格尺度。信号线对 RVI 再次使用完全相同的四根K线加权,遵循 Ehlers 的做法,而不是普通的四周期平均。如果窗口内平滑后的区间之和为零(出现在停滞的时段或填充K线上),该K线不输出任何值,而不是输出零。
公式:代码中的实现
这不是别处常见的定义,而是所发布代码实际计算的内容,记录在实现旁边:
RVI — Relative Vigor Index (John Ehlers / StockCharts). Mesure si la barre FERME dans le sens où elle s'est OUVERTE, rapporté à son amplitude : num = close − open ; den = high − low SW4(x)[i] = ( x[i] + 2·x[i−1] + 2·x[i−2] + x[i−3] ) / 6 ← « lissé sur 4 barres » RVI = Σ_N SW4(num) / Σ_N SW4(den) signal = SW4(RVI) Le lissage est un WMA SYMÉTRIQUE 1-2-2-1 (pas une SMA, pas une EMA, pas du Wilder) : poids maximum au CENTRE de la fenêtre, ce qui filtre le bruit sans décaler la phase de plus d'une barre et demie. POURQUOI ce ratio : un marché vigoureux ferme près de son extrême dans le sens de l'ouverture ; diviser par le range rend la mesure sans échelle, donc comparable d'un instrument à l'autre. `period` (défaut 10, la valeur StockCharts) agrège ensuite numérateur et dénominateur DÉJÀ lissés — mettre period = 1 rend exactement la forme minimale « SW4(num)/SW4(den) ». Le signal réutilise le MÊME SW4 (convention d'Ehlers, pas une SMA 4). Σ SW4(den) NULLE (les 4 barres de la fenêtre sans range — séance figée, barres de remplissage) → null, JAMAIS 0 : sans amplitude, « fermer dans le sens de l'ouverture » n'a pas de sens. Warm-up : 3 barres pour le SW4, plus N − 1 pour l'agrégation ; le signal en coûte 3 de plus. Sorties : [RVI, signal].
如何解读
- RVI 为正,表示窗口内收盘高于开盘的K线占主导,并按这些K线的宽度加权;为负则相反。
- RVI 与信号线交叉,标记的是近期比值偏离其自身四根K线加权平均的位置。两条线在构造上就很接近,所以交叉很常见。
- 数值在零附近徘徊,描述的是收盘接近开盘的K线,这与K线本身很小是两种不同的情况。
- 离零轴的距离受限于开盘到收盘的移动实际占了每根K线区间的多少,因此一根收在区间中部的宽幅K线贡献很小。
- 由于平滑是居中的,这条线会在变化发生后大约两根K线内做出反应。对滤波后的序列来说这已经很快,但它并不是提前预警。
参数与默认值
周期默认 10(StockCharts 的取值),可设 1 到 200,汇总的是已经平滑过的分子与分母。周期设为 1 时,指标退化为最基本的形式:四根K线加权的分子除以四根K线加权的分母。预热需要 3 根K线用于加权,加上周期减一根用于汇总,信号线还要再多 3 根。
| 参数 | 类型 | 默认值 | 取值范围 |
|---|---|---|---|
| Period | number | 10 | 1 – 200 |
它无法显示的内容
RVI 依赖每根K线的开盘价,因此K线的构建方式主导了读数:在 tick、成交量或区间K线上,开盘价就是上一根K线结束的位置,这使得“收盘减开盘”的含义与时间K线在时段开始处截然不同。一根在稀薄流动性中收在高点附近的K线,与一根顶着大量挂单卖盘收在那里的K线,得出的比值相同,因为公式从不关心这些价格上成交了什么。在震荡行情中两条线反复交叉而不含方向信息;一段没有区间的K线会让这条线完全消失,而不是变平。
相关指标
- Stochastic — 动量
- Stoch RSI — 动量
- CCI — 动量
- ROC — 动量
- Williams %R — 动量
- Momentum — 动量
其他语言版本
Frequently asked questions
- 相对活力指数(RVI)衡量的是什么?
- 它衡量K线是否朝开盘后的方向收盘,并以K线自身的区间进行缩放。分子是收盘减开盘,分母是最高减最低,两者都经过平滑并在周期内求和,因此输出描述的是开盘到收盘的移动占据了可用区间的多少。
- RVI 为什么使用 1-2-2-1 加权?
- 这种对称的四根K线加权把权重集中在窗口中间,在过滤噪音的同时只让结果延迟约一根半K线。简单移动平均对四根K线一视同仁,相位偏移更大;指数平均则对最新K线权重最大,并在后面拖着一条长尾。
- RVI 的信号线是什么?
- 信号线是将 RVI 序列再经过与分子、分母相同的 1-2-2-1 四根K线加权,这是 Ehlers 的做法,而不是四周期简单平均。它在 RVI 线本身之外还需要额外 3 根K线的预热。