金融, 趋势

平均趋向adx

Average Directional Movement

趋势动量探测仪:平均趋向指数(ADX指标)全解析 一、ADX 是什么?为什么它能衡量趋势“强度”? 在金融技术分析中,仅仅知道价格上涨或下跌是不够的,我们更想知道的是:趋势是否“强势”、是否“有持续性”? 平均趋向指数(Average Directional Index,简称 ADX) 正是为此而生。它并不判断趋势方向,而是衡量趋势的“强度”。 趋势强,顺势交易;趋势弱,震荡思维。 …

趋势动量探测仪:平均趋向指数(ADX指标)全解析


一、ADX 是什么?为什么它能衡量趋势“强度”?

在金融技术分析中,仅仅知道价格上涨或下跌是不够的,我们更想知道的是:趋势是否“强势”、是否“有持续性”?

平均趋向指数(Average Directional Index,简称 ADX) 正是为此而生。它并不判断趋势方向,而是衡量趋势的“强度”。

趋势强,顺势交易;趋势弱,震荡思维。


二、pandas_ta 中 ADX 的函数结构

使用 pandas_ta.adx() 可方便地获得如下四个指标:

指标名 含义
ADX_14 趋势强度指数
ADXR_14_2 平滑的趋势强度(加权平均)
DMP_14 +DI(正向运动指标)
DMN_14 -DI(负向运动指标)

调用方式如下:

import pandas_ta as ta

df = ta.adx(
    high=df['high'],
    low=df['low'],
    close=df['close'],
    length=14,
    adxr_length=2
)

三、ADX原理剖析:由哪些部分组成?

ADX 是由两条“方向运动指标”衍生而来:

  1. +DI(DMP):衡量上涨动能
  2. -DI(DMN):衡量下跌动能
  3. ADX:是 +DI 与 -DI 差值的绝对值的加权平均

具体公式简化如下:

$$ \text{ADX} = \text{MA} \left( \frac{|\text{+DI} - \text{-DI}|}{\text{+DI} + \text{-DI}} \times 100 \right) $$

并辅以 ADXR(平滑版ADX),作为信号滤波器。


四、常见用法与信号解读

判断趋势强度

  • ADX < 20:趋势较弱,震荡区间
  • ADX > 25:趋势强劲,可考虑跟随
  • ADX > 40:趋势非常强,但也可能“过热”

判断趋势方向

  • 若 +DI > -DI:上升趋势
  • 若 -DI > +DI:下降趋势

结合如下交易逻辑:

if df["ADX_14"].iloc[-1] > 25:
    if df["DMP_14"].iloc[-1] > df["DMN_14"].iloc[-1]:
        print("趋势向上且强势,可考虑做多")
    else:
        print("趋势向下且强势,可考虑做空")

五、图表实战:趋势增强信号识别

我们可以将 ADX 与 +DI、-DI 绘制到一个图表中,辅助识别信号:

import matplotlib.pyplot as plt

df[["ADX_14", "DMP_14", "DMN_14"]].plot(figsize=(12, 6), title="ADX 趋势强度与方向")
plt.axhline(y=25, color='gray', linestyle='--', label='趋势强弱分界线')
plt.legend()
plt.show()

视觉上,一旦 ADX 突破 25,说明市场有明显的方向性,不再是震荡。


六、与其他指标的组合策略

为了避免ADX单独指标“趋势滞后”的特性,常与以下指标组合使用:

  • 布林带或ATR:过滤震荡时期
  • MACD / 均线突破:提供入场方向
  • RSI:避免趋势过度扩张陷阱

七、pandas_ta 输出结构说明

pandas_ta 返回的是一个含有以下4列的 DataFrame

列名 说明
ADX_14 主指标,趋势强度
ADXR_14_2 平滑版趋势强度
DMP_14 正向动能指标
DMN_14 负向动能指标

可以轻松与价格线、布林带等在K线图中合并可视化。


八、总结:为什么“平均趋向动量指标”值得纳入你的系统?

无论你是日内交易者还是波段投资者,判断当前市场是“震荡”还是“趋势”是最基础也是最重要的判断。而ADX 提供了客观、标准化的趋势强度评分,帮助你:

  • 避免震荡期做趋势单的亏损
  • 捕捉趋势启动时的“上车机会”
  • 在趋势衰退前及时减仓止盈

凭借 pandas_ta 的简单调用能力,你可以轻松将 ADX 纳入交易系统中,打造属于自己的趋势动量滤波器。


👉 中文名称建议:平均趋向动量指标 该名称兼顾了 ADX 衡量趋势方向强度的特征,同时突出了它对正负方向运动的融合处理,既贴近原意,又便于中文用户理解与检索。