RSI 与 KDJ
RSI 算的是什么
公式其实很直白:取最近 N 天,把上涨的幅度加起来求平均,把下跌的幅度加起来求平均,然后看两者的比例。
- 如果这 N 天全是涨的,平均跌幅为 0,RSI = 100
- 如果全是跌的,平均涨幅为 0,RSI = 0
- 如果涨跌幅度相当,RSI = 50
关键在于:这个数字里没有任何关于「贵」或「便宜」的信息。它只回答一个问题:最近这段时间,涨的力量比跌的力量强多少。
所以「超买」的准确含义是「最近涨得比较急」,不是「涨得太多了该跌了」。这两句话之间没有逻辑关系,而把它们等同起来是这个指标最常见的误用。
「超买就卖」的实际代价
用前面几节那段行情实测。这段行情从 10.43 涨到最高 14.75:
如果按「RSI(14) 上穿 70 就卖出」操作
而且不止一次。整段行情里 RSI(14) 有 14 天处在 70 以上,如果每次都当卖出信号,你会在这段上涨里反复离场再追回来。
反过来的情况更值得注意:同样这 116 个交易日里,RSI(14) 只有 1 天低于 30。
这个不对称本身就说明问题:在一段上涨行情里,「超卖」几乎不出现。如果你在等 RSI 跌到 30 以下再买,你会一直等不到。而等到真的出现时,往往是趋势已经反转了。
70 和 30 是怎么来的
没有理论依据,是习惯。而且它们完全取决于你用多长的周期。
点下面的按钮切换周期,看同一段行情的 RSI 怎么变:
同一段行情、同一个 70 的阈值:RSI(6) 超买 25 天,RSI(24) 只有 4 天,差 6 倍多。
更极端的是取值范围:RSI(6) 能到 100 和 16,而 RSI(24) 全程最高只到 73、最低只到 37,从来没进过超卖区。
所以「这只票超买了」这句话,如果不说明周期,是没有意义的。用 RSI(24) 的人和用 RSI(6) 的人,看的是同一段行情,得出的结论可以完全相反。
KDJ:同一个思路,不同的算法
KDJ 问的问题稍有不同:今天的收盘价,在最近 N 天的价格区间里处在什么位置。
- 收在区间最高处,原始值 RSV = 100
- 收在区间最低处,RSV = 0
- K 是 RSV 的平滑,D 是 K 的平滑,J = 3K − 2D
注意最后一行:又是「平滑再平滑」的结构,跟 MACD 一样。所以 K 比 RSV 慢,D 比 K 更慢。
J 值是个特例:J = 3K − 2D 这个公式会放大 K 和 D 的差距,所以 J 经常跑到 0 以下或 100 以上。这不是异常,是公式决定的。把 J 值超过 100 当成什么特别信号,是对公式的误解。
| 对比 | RSI | KDJ |
|---|---|---|
| 衡量什么 | 涨跌力量的比例 | 收盘价在近期区间中的位置 |
| 用到的数据 | 只要收盘价 | 需要最高、最低、收盘 |
| 平滑层数 | 一层 | 两层(K 和 D) |
| 常见阈值 | 70 / 30 | 80 / 20 |
| 共同问题 | 阈值都是习惯不是推导;都随周期剧烈变化; 在趋势行情里都会长时间停在极值区 | |
那这类指标该怎么用
有两个用法相对可靠,都不涉及预测。
- 当波动状态的描述用。RSI 长期在 40 到 60 之间来回, 说明目前是震荡状态;RSI 反复触及 70 以上而很少跌破 40,说明是趋势状态。 这是对现状的分类,可以用来决定「要不要动手」, 正好接上 MACD 那一节 说的趋势过滤。
- 当仓位调节的参考用,而不是进出信号。 比如在趋势里,RSI 极高时不加仓(但也不减), 等它回落到中位再考虑。这跟「超买就卖」的区别是: 它调节的是节奏,不是方向。
要避免的用法只有一条,但很重要:不要用它来判断顶和底。
原因上面已经用数字说明了:在真正的趋势里,这类指标会长时间停在极值区,而那恰恰是趋势最强的阶段。用它找顶,等于系统性地在最强的行情里离场。
关于「钝化」
你可能听过「指标钝化」这个说法:指 RSI 或 KDJ 长期贴在高位不下来,信号「失灵」了。
钝化不是指标坏了,是指标在正常工作。
RSI 停在 80 以上,准确含义是「最近这段时间几乎每天都在涨」。这是一个正确的描述。问题出在使用者预期它会给出「该卖了」的信号,而它从来就不提供这个信息。
换句话说,「钝化」描述的是使用者的期待落空,不是指标的故障。把这一点想清楚,你就不需要「钝化了怎么办」这类技巧了。
今天就做这一件事
打开一只过去半年涨幅明显的票,挂上 RSI。
数一下:这半年里 RSI 有多少天在 70 以上?
然后假设每次上穿 70 都卖出,算算你会在哪些位置离场。
把这些离场价跟现价比一比。这个练习做完, 「超买就卖」这个念头基本就不会再出现了。