ADX/DMI 指标:公式、参数与读法
ADX/DMI 是 Welles Wilder 的趋向运动系统:+DI 和 −DI 显示近期波动区间中有多少来自新高、多少来自新低,ADX 则衡量这种分配有多么单边。它在独立面板中绘制三条线,默认周期为 14。
Senzoukria · 指标 · Updated September 2026
ADX/DMI — 动量, 显示在图表下方的独立面板中.
ADX/DMI 测量的是什么
每根K线产生一个上升运动(最高价减前一最高价)和一个下降运动(前一最低价减最低价);只有两者中较大的那个才计入,且必须为正,因此一根K线只会贡献 +DM 或 −DM,绝不会同时贡献两者。Wilder 滚动求和在周期内累计 +DM、−DM 和真实波幅,然后用各方向之和除以真实波幅之和,得到以百分比表示的 +DI 和 −DI。DX 是两条 DI 之差的绝对值相对于两者之和的比例,按照 Wilder 的约定,两者之和为零时 DX 为零。ADX 以前 N 个 DX 值的简单平均为起点,再用 Wilder 平滑向前推进,因此它是一个不含方向的强度指标。当窗口内平滑后的真实波幅为零时,DI 未定义,该K线的 DX 不会输入 ADX,平均值绝不会被虚构的数值推进。
公式:代码中的实现
这不是别处常见的定义,而是所发布代码实际计算的内容,记录在实现旁边:
ADX / DMI (Wilder, 1978) — lissage WILDER par sommes (S = S − S/N + x) : up = high − highₚ ; dn = lowₚ − low +DM = up si up > dn et up > 0, sinon 0 ; −DM = dn si dn > up et dn > 0 +DI = 100·S(+DM)/S(TR) ; −DI = 100·S(−DM)/S(TR) DX = 100·|+DI − −DI|/(+DI + −DI) (somme nulle → DX = 0, conv. Wilder) ADX = moyenne des N premiers DX, puis (ADX·(N−1) + DX)/N S(TR) = 0 (barres sans range) → DI null et le DX n'alimente PAS l'ADX (on n'accumule pas une valeur inventée). Défaut N=14 (Wilder). Sorties : [+DI, −DI, ADX].
如何解读
- +DI 高于 −DI 表示近期区间更多由新高而非新低构成;反之亦然。交叉标记的是力量对比发生变化的位置,而不是该交易的时点。
- ADX 上升表示两条 DI 之间的差距在扩大——压力正在变得单边。ADX 下降表示两者在靠拢,无论价格如何变动。
- ADX 在构造上不区分方向:强劲的下跌趋势和强劲的上涨趋势会产生同样高的读数。
- ADX 低而平、两条 DI 来回交叉,描述的是区间震荡,此时的交叉所含信息很少。
- ADX 从高位拐头向下,说明行情正在失去单边性,随后可能是暂停,也可能是反转。
参数与默认值
周期(14,Wilder 本人的取值)同时驱动 DI 平滑和 ADX 平滑;没有单独的 ADX 长度。周期越短,DI 交叉越频繁、ADX 摆动越快;周期越长,交叉越少且越晚。三种颜色仅用于显示,不影响计算。
| 参数 | 类型 | 默认值 | 取值范围 |
|---|---|---|---|
| Period | number | 14 | 1 – 200 |
它无法显示的内容
该系统只读取最高价、最低价和收盘价。它无法获取成交量、每笔成交的主动方或挂单流动性,因此无法区分由主动买方推动的趋势和在空荡订单簿上漂移的趋势。Wilder 平滑记忆很长,这使 ADX 在设计上就是滞后的,并会在趋势停止后仍维持高位若干根K线。当平滑后的真实波幅降为零时——在停滞或流动性不足市场中的填充K线上——DI 是未定义而不是零,这会在线条上留下缺口,这是正确的,但可能出人意料。
相关指标
其他语言版本
Frequently asked questions
- ADX 和 DMI 有什么区别?
- DMI 是一对方向线 +DI 和 −DI,表示区间的哪一方占优。ADX 由它们推导而来:它把两者之差归一化并平滑成一条线,描述市场有多么单边。DMI 携带方向,ADX 只携带这种失衡的强度。
- ADX 达到多少算趋势市场?
- 实践中普遍把 25 以上视为趋势、20 以下视为区间,但这些只是使用习惯,而不是公式本身给出的阈值。ADX 是经过两次平滑的比值,其常见范围取决于品种、K线类型和所用周期。ADX 线的方向往往比具体水平包含更多信息。
- 为什么行情结束后 ADX 仍保持高位?
- ADX 经过两次 Wilder 平滑,每个数值都带有对前一数值的加权记忆。方向性行情停止后,较早的 DX 值仍会在若干根K线内主导平均值。这是公式本身固有的特性;缩短周期可以减少延迟,代价是线条噪音更大。