真实波动幅度均值(Average True Range,简称ATR)是一个衡量市场波动性的经典技术指标,由威尔斯·威尔德(J. Welles Wilder)《技术分析中的新概念》一书中首次提出。该指标的核心思想是通过计算真实波幅的滑动均值,来反映一定周期内价格波动的平均强度,从而帮助交易者判断风险、设置止损或调整仓位。下面从公式定义、计算逻辑、功能特点及实际使用方法等方面进行完整说明。
##一、ATR指标的公式与计算逻辑
ATR的构建分为两步:先计算每日的“真实波幅”(True Range,TR),再对TR进行N日平均。其中,真实波幅充分考虑了跳空缺口和价格极端变动的影响,其计算公式为:
TR = max( 最高价 - 最低 , |最高价 - 前一日收盘价| , |最低价 -前一日收盘价|也就是说,当日的真实波幅取以下三个差值中的最大值:
- 当日最高价与最低价之间的绝对距离;
- 当日最高价与交易日收盘价之间的差值,用于捕捉向上跳空的波幅;
- 最低价与上一交易日价之间的绝对差值,捕捉向下跳空的波幅。
- 简单移动平均法(SMA):
这种方法在早期的公式中较为常见,但容易受极值扰动。
- 德平滑法(Wilder's Smoothing,实际为RMA):
A_today = (前一日ATR × (n - 1) +当日TR) / n 这是目前大多数行情软件中的标准算法,默认参数n=14。该平滑方式赋予近期TR更大的权重,反应更灵敏,同时保留了历史波动的惯性。
二、ATR的功能与特点
ATR指标并非直接预测价格方向,而是专注于波动性的“量级”描述。其核心功能包括:
- 客观度量波动风险:ATR的数值直接表示单位周期内价格平均波动范围(如14日平均波动N个点数)。数值越高,说明市场波动越剧烈,风险越大;数值越低,市场越趋于平静。
- 动态止损参考:交易者常用“价格移动止损”策略,例如将止损距离设为“当前价格 ± 2倍ATR”,借助波动率自适应调整止损宽度,避免在正常波动中被轻易扫损,也能在快速行情中及时锁定利润。
- 仓位管理依据:在固定风险比例的仓位模型中,可用ATR计算交易仓位的头寸规模。例如,账户风险允许亏损1%且止损宽度为2倍ATR,则可开仓数量 = (账户资金 × 1%) (2 × ATR- 突破与趋势确认辅助:当ATR从低位快速攀升,往往预示趋势启动或行情加速;当ATR持续走低,则可能处于盘整阶段。结合价格走势,可以辅助过滤假突破。
三ATR指标在软件中的使用方法
大多数行情分析软件(如通达信、同花、文华财经、MT4/MT5等)都内置了ATR指标调出后即可自动计算并绘制曲线。如果需要手工计算或编写为智能交易策略,可按以下步骤操作:
- 选择周期:根据风格设定参数N。日内交易者常选7日或10日;波段交易者常用14日;中长线投资者可选用20日或更长周期。需要注意的是,N值越小,ATR曲线越灵敏,但信号噪音也越多。
- 调用公式源码:在软件中新建自定义指标时,可输入以下通达信/同花顺的常用源码:
TR := MAX(MAX(HIGH - LOW, ABS(H - REF(CLOSE,1))), ABS(L - REF(CLOSE1)));
AT : MA(TR, N);
其中N是参数,默认14;若需要Wilder平滑,可将第二行改为ATR : RMA(TR, N(部分软件使用SMA(TR, N, 1)近似实现)。
- 计算历史数值:首先从第一根K线开始,计算每根K线的TR值;然后对前N根TR求平均得到首个ATR;之后用递推公式逐步更新每日ATR值。熟练掌握流程后,在Excel或编程语言中也能轻松复现。
四、实战中的注意事项
- ATR提供的是波动范围的统计均值,并不能保证未来价格一定落在该范围内,实际使用中应把止损位设置得比ATR值稍宽一些,避免被偶然的极端波动触发。
- 在期货、外汇等杠杆品种中,ATR的会因合约乘数而不同,应使用ATR百分比或换算为账户币种进行统一衡量。
- 当ATR处于极低水平时,往往预示着变盘临近;当ATR急剧放大后出现回落,则可能是趋势进入尾声的信号。交易者可以结合布林带、均线等工具进行共振判断。







