Stochastic 指标:公式、参数与读法
随机指标(Stochastic)确定当前收盘价在最近 N 根K线高低区间中的位置,并以 0 到 100 的刻度表示。Senzoukria 提供的是慢速版本:原始 %K 线先平均一次,%D 再对其结果做第二次移动平均,默认参数为 14、3 和 3。
Senzoukria · 指标 · Updated September 2026
Stochastic — 动量, 显示在图表下方的独立面板中.
Stochastic 测量的是什么
原始 %K 等于收盘价减去窗口内最低价,除以同一窗口内最高价与最低价之差,再乘以 100。它由K线的最高价和最低价构成,因此读数表示的是区间内的位置,而不是速度或数量。收盘于窗口顶部得 100,收盘于底部得 0。当窗口完全走平、最高价等于最低价时,这个比值没有意义,该K线不返回数值,而不是给出占位值。两次移动平均都是简单平均,并会传递这种缺失:不完整或中断的窗口会让线条保持未定义,而不是跨越空缺取平均,因此绘制所用的周期始终是真实的周期。
公式:代码中的实现
这不是别处常见的定义,而是所发布代码实际计算的内容,记录在实现旁边:
Stochastique (Lane) — variante LENTE : fast %K = 100·(close − LL_N)/(HH_N − LL_N) (HH == LL → null) %K = SMA_kSmooth(fast %K) ; %D = SMA_dPeriod(%K) Les SMA propagent les trous (fenêtre incomplète → null). Défauts 14/3/3 (la config « slow stochastic » standard). Sorties : [%K, %D].
如何解读
- 高于 80 表示收盘价落在近期区间的上方五分之一;低于 20 表示落在下方五分之一。两者描述的都是位置,而不是衰竭。
- %K 上穿 %D 表示近期收盘在区间中的位置高于同一指标的较慢平均。两条线交叉频繁,大多数交叉发生在刻度中部。
- 在单边行情中,震荡指标常常贴近某一端并停留在那里。等待它离开该区域,与在它进入时采取行动,是两个不同的决定。
- 横盘市场会让两条线在整个刻度上来回扫动,因为区间狭窄时,每个收盘价都占区间的很大比例。
- 线条消失的片段标记的是完全没有区间的窗口,通常是停滞或非常清淡的时段。
参数与默认值
%K 周期默认 14,可在 1 到 200 之间调整,决定收盘价所对照的区间。%K 平滑默认 3,正是它把原始快线变成慢线;%D 周期同样为 3,对其再做一次平均。两个平滑值均可设为 1 到 50。把 %K 平滑设为 1 会保留原始快线,得到快速随机指标;提高任一数值都会以增加延迟为代价换取更少的交叉。
| 参数 | 类型 | 默认值 | 取值范围 |
|---|---|---|---|
| %K period | number | 14 | 1 – 200 |
| %K smoothing | number | 3 | 1 – 50 |
| %D period | number | 3 | 1 – 50 |
它无法显示的内容
窗口由两个极值定义,因此一个被数千手合约防守的高点与一个只被一笔成交触及的高点,对刻度的影响完全相同:公式中没有任何部分衡量这些价格背后的交易活动。两级平滑还会让转折在 %D 上出现之前多出几根K线的延迟。刻度相对于窗口而言,因此 2 个 tick 的区间和 40 个 tick 的区间都会产生 0 到 100 之间的数值,在面板上看起来一模一样。在按 tick 数或成交量而非时间生成的K线上,14 根K线的窗口在快市和慢市中覆盖的实际时间并不相同。
相关指标
其他语言版本
Frequently asked questions
- 快速随机指标和慢速随机指标有什么区别?
- 快速随机指标绘制原始 %K 线以及它的短期平均。慢速随机指标(即这里的默认版本)先平滑原始 %K,再对平滑后的线取平均得到 %D。慢速版本交叉更少、反应更晚,代价是每一个收盘价的体现不那么清晰。
- %K 线和 %D 线分别代表什么?
- %K 是收盘价在最近 14 根K线高低区间中经过平滑的位置。%D 是 %K 的 3 周期平均,因此是两者中较慢的一条。两者之间的距离反映了收盘价在近期区间内移动的快慢。
- 为什么上涨行情中随机指标一直停在 80 以上?
- 因为每个新的收盘价都落在区间顶部附近,而这个区间的高点又不断被同一段行情刷新。数值停留在 80 或以上,只是说明收盘价持续出现在近期区间的上部;该震荡指标有上下界,无法继续上升来表达更强的趋势。