核心要点
- 定义:ATR对选定周期内的真实波幅取平均值,并以价格单位表示结果。它衡量的是价格波动的幅度,而非方向。
- 公式:真实波幅取三项测量值中的最大值;在出现跳空的交易日,前收盘价会决定其数值。怀尔德平滑法赋予最新一根K线1/14的权重。
- 数值解读:ATR上升表示波幅扩大,下降表示波幅收窄。未经标准化的ATR数值不能直接用于跨资产比较,需先将其换算为占价格的百分比。
- 应用:止损位与入场价的距离设为ATR的某个倍数,再以风险预算除以该止损距离来确定仓位规模。
什么是平均真实波幅(ATR)?
ATR衡量指定周期内每根K线的平均价格波幅,以交易品种本身的价格单位表示。
怀尔德为存在跳空的市场设计了这一指标。在大宗商品市场,开盘价可能远高于或远低于前收盘价,仅根据当期最高价与最低价计算的波幅无法反映这部分跳空。因此,真实波幅将前收盘价纳入参考,而ATR则对这些涵盖范围更广的数值取平均。
由于公式使用绝对值,幅度相同的大幅下跌与大幅上涨会产生相同的读数。因此,ATR是一种描述性的滞后指标,通常需要与能够判断价格方向的工具搭配使用。
平均真实波幅公式详解
真实波幅取三项测量值中的最大值,ATR则是选定周期内这些数值的平滑平均值。怀尔德希望用一个数值概括每根K线所涵盖的完整价格波幅,包括相对于前收盘价的任何跳空。
第1步:计算真实波幅
单根K线的真实波幅取以下三项中的最大值:当期最高价减去当期最低价、当期最高价减去前收盘价所得差值的绝对值,以及当期最低价减去前收盘价所得差值的绝对值。取绝对值意味着只记录距离,不保留正负号,因为怀尔德衡量的是价格变动的幅度,而非方向。
哪一项最大,取决于K线的具体形态:
- 当前收盘价处于当期K线的价格区间内时,最高价减去最低价的值最大。
- 当价格向上跳空时,当期最低价高于前收盘价,此时最高价减去前收盘价的值最大。
- 当价格向下跳空时,当期最高价低于前收盘价,此时最低价减去前收盘价所得差值的绝对值最大。

同一规则通常也可简写为:取最高价与前收盘价中的较高者,减去最低价与前收盘价中的较低者。这种写法更便于在电子表格中计算。
第2步:首个ATR值采用简单平均
由于尚无前一期ATR,首个ATR值为前14个真实波幅的算术平均值。这个初始读数并非通过怀尔德平滑公式得出,却为后续所有数值设定了起点。
第3步:后续ATR值采用怀尔德平滑法
后续ATR值采用怀尔德平滑法计算:将前一期ATR乘以13,加上当期真实波幅,再将总和除以14。
TR = max(最高价 - 最低价,|最高价 - 前收盘价|,|最低价 - 前收盘价|)
ATR =((前一期ATR × 13)+ 当期TR)/ 14
13和14体现的是权重,并非任意设定的常数。最新一根K线占新数值的1/14,此前全部历史数据合计占其余的13/14。这种加权方式使曲线更平滑,也正是该指标产生滞后的机制原因。
计算示例:15根K线,包含两个跳空交易日
下表采用一组示例日线数据,列出了每根K线的真实波幅。首个ATR值出现在第14根K线,第15根K线展示了平滑计算步骤。第1根K线没有前收盘价,因此其真实波幅就是102.00减去99.00。第2根K线出现首次跳空:该K线本身的波幅为2.00,但前收盘价100.50低于最低价101.00,因此最高价减去前收盘价得到2.50,为三项中的最大值。若表格只按最高价减去最低价计算,则只会记录2.00。
| K线序号 | 最高价 | 最低价 | 前收盘价 | 真实波幅 | ATR |
|---|---|---|---|---|---|
| 1 | 102.00 | 99.00 | 无 | 3.00 | |
| 2 | 103.00 | 101.00 | 100.50 | 2.50 | |
| 3 | 104.00 | 101.50 | 102.00 | 2.50 | |
| 4 | 105.00 | 102.00 | 103.00 | 3.00 | |
| 5 | 106.00 | 103.00 | 104.00 | 3.00 | |
| 6 | 103.00 | 99.50 | 105.00 | 5.50 | |
| 7 | 101.00 | 98.00 | 100.00 | 3.00 | |
| 8 | 100.00 | 96.00 | 99.00 | 4.00 | |
| 9 | 97.00 | 94.00 | 96.50 | 3.00 | |
| 10 | 98.00 | 95.00 | 95.00 | 3.00 | |
| 11 | 99.50 | 96.00 | 97.00 | 3.50 | |
| 12 | 104.00 | 98.50 | 99.00 | 5.50 | |
| 13 | 105.00 | 102.00 | 103.00 | 3.00 | |
| 14 | 106.00 | 103.00 | 104.00 | 3.00 | 3.39 |
| 15 | 107.00 | 104.00 | 105.50 | 3.00 | 3.36 |
第6根K线的跳空最为明显。前一期收盘价为105.00,下一根K线的价格区间为99.50至103.00,整体低于该收盘价,因此最低价减去前收盘价所得差值的绝对值为5.50,而K线本身的波幅仅为3.50。第12根K线则说明了另一种情况:其本身波幅较大,达到5.50,但前收盘价99.00处于其价格区间内,因此最高价减去最低价的值最大。
首个ATR将第1至第14根K线的真实波幅相加,总和为47.50,再除以14,得到3.39。第15根K线采用平滑计算:3.39乘以13得44.11,加上当期真实波幅3.00得47.11,再除以14,得到3.36。
如何解读平均真实波幅数值
ATR水平、ATR上升与ATR下降
ATR的绝对数值反映当前的平均波幅。对于价格为100美元的交易品种,3.39的读数意味着近期每根K线的平均波幅约为3.39。

曲线斜率反映波动是在增强还是减弱。波幅扩大往往伴随方向性行情的启动,波幅收窄则常见于盘整阶段。在波动剧烈的市场中,ATR会迅速上升;在波动较小的市场中,较低的ATR值可能持续数周。
为什么不能直接比较不同资产的ATR值
ATR以价格单位计量,因此会随资产价格的高低而变化。即使两只股票的波动百分比相近,一只交易价格在25美元附近的股票,其ATR通常也远小于交易价格在250美元附近的股票。一只从70跌至20的股票,在下跌前后的ATR数值尺度也会不同,因此难以将其历史序列视为一个连续、统一的指标来解读。
ATR%:比较波动性的标准化方法
将ATR除以价格,即可把原始数值转换为百分比,从而比较不同交易品种、不同时期的价格波动性。本文采用的计算方式为ATR除以收盘价,再乘以100。只要计算口径保持一致,其他口径也可使用,因为目的在于相对比较,而非建立绝对标准。
| 资产 | 价格 | ATR | ATR占价格的百分比 |
|---|---|---|---|
| Nvidia | 115.74 | 7.20 | 6.2% |
| Johnson & Johnson | 162.84 | 2.73 | 1.7% |
| S&P 500指数 | 5,614.56 | 100.34 | 1.8% |
数据由嘉信理财于2025年4月发布,反映2025年3月下旬的价格。百分比已四舍五入。
这张表回答了原始ATR数值无法回答的问题。Nvidia的ATR为7.20,占价格的6.2%,意味着该交易品种在一个普通交易日内的波幅约为其价值的6%,与第二行1.7%的读数所体现的波动状态不同。跨品种衡量市场波动性,需要使用比例数值,而非原始数值。
平均真实波幅带与波动率通道
并不存在一个统一标准、名为“ATR带”的指标。这个说法通常指在移动平均线上下各加减固定倍数的ATR所绘制的带状区域,肯特纳通道采用的正是这种构建方式。
通常所说的"ATR带"是什么
ATR带以价格的移动平均线为基础,加上或减去ATR的某个倍数构建而成。常见设置为20周期移动平均线和2倍ATR,但各平台的默认设置可能不同。
倍数决定带宽。倍数越大,价格触及带线的频率越低;倍数越小,价格穿越带线的频率越高。在市场波动剧烈时,即使周期设置不变,带宽也会扩大。
ATR带与布林带的比较
两者都是围绕移动平均线构建的波动率包络带,区别在于决定带宽的因素不同。

| 属性 | ATR带(肯特纳构建方式) | 布林带 |
|---|---|---|
| 带宽决定因素 | 包含跳空的K线平均波幅 | 收盘价的标准差 |
| 是否对跳空作出反应 | 是,通过真实波幅反映 | 否,仅使用收盘价 |
| 典型用途 | 趋势跟踪、突破交易、移动止损参考 | 均值回归、识别带宽收窄 |
实际差别体现在反应方式上。由于真实波幅能够捕捉跳空,ATR带会在跳空发生时立即变宽;仅基于收盘价构建的布林带则不会以相同方式反应。这两个指标都不是方向性信号。
如何在交易策略中使用ATR指标
ATR用于量化风险,而不是生成入场信号。止损位与入场价的距离设为ATR的某个倍数,再以风险预算除以该止损距离来确定仓位规模。
使用ATR设置止损
ATR止损将止损位与入场价的距离设为当前ATR的某个倍数,使止损距离能够适应波动变化。它依据的是平均波幅,而非支撑位和阻力位,因此某个止损价位在图表上可能看似随意,却与该交易品种近期的波动幅度相称。
沿用上文的计算示例,假设ATR为3.39、入场价为100.00,则1倍ATR的止损位为96.61,2倍为93.22,3倍为89.83。倍数决定了这笔交易在平仓前能够承受多大的正常价格波动。
ATR仓位规模计算公式
仓位规模等于风险预算除以止损距离,并根据交易品种的每点价值进行调整。
仓位规模 = 风险预算 /(ATR × 倍数 × 每点价值)

对于股票仓位,每点价值为1。假设账户净值为50,000,风险预算为1%,即500,ATR为3.39,倍数为2,则止损距离为6.78。因此,仓位为500除以6.78,向下取整后为73股。
对于假设每点价值为50的期货合约,每份合约的风险为6.78乘以50,即339。同样的500风险预算可对应1.47份合约,因此实际可持有1份合约。
每点价值必须以交易品种的合约规格为准,不能从指标中获取。
如何选择倍数:1倍、1.5倍、2倍还是3倍
脱离具体情境,并不存在最优倍数。在风险预算固定的情况下,每一种选择都需要在止损触发频率与仓位规模之间权衡。
| 倍数 止损距离(ATR为3.39) 入场价为100.00时的止损价 以50,000的1%为风险预算时的股数 止损触发敏感度 |
|---|
| 倍数 | 止损距离 | 止损价 |
|---|---|---|
| 1倍 | 3.39 | 96.61 |
| 1.5倍 | 5.09 | 94.91 |
| 2倍 | 6.78 | 93.22 |
| 3倍 | 10.17 | 89.83 |
规律始终一致:止损距离越宽,因正常价格波动而被平仓的可能性越低,同一风险预算所能支持的仓位规模也越小。这些是算术关系带来的结果,而非回测结论,因此在没有明确测试的情况下,不能认定某个倍数更优。交易计划应在入场前明确倍数和风险预算。
ATR移动止损
移动止损会随ATR变化而重新计算,因此出场价位同时跟随价格和波动变化。如果ATR从3.39升至4.20,倍数为2,止损距离就会从6.78扩大至8.40。其权衡与固定ATR止损相同:在波动较大的上涨过程中给予交易更多空间,但在行情反转时也会回吐更多收益。
使用ATR辅助确认突破与识别盘整
价格突破的同时ATR扩大,表明行情可能更有力度,因为价格离开原有区间时,平均波幅也在扩大。价格横盘期间ATR收缩,则反映市场处于盘整状态。两种读数都不能确认方向,ATR也无法识别支撑位和阻力位。
ATR设置:计算周期、图表周期与周期长度选择
短周期与长周期
较短的计算周期赋予近期K线更高权重,转向也更快,但曲线噪声更多,止损距离几乎会随每根K线变化。
较长的计算周期更平滑、反应更慢,因此可能仍在反映一种已经结束的波动状态。2至10周期适合反映近期波动,20至50周期适合反映较长期波动;这些范围体现的是反应速度,而非准确性。周期选择应依据交易风格,而不是沿用图表默认值。
让ATR计算周期与图表时间周期相匹配
计算周期按图表上的K线根数计数,因此同一设置在不同图表上覆盖的时间长度可能相差很大。
| 图表时间周期 | 常用计算周期 | 覆盖时间 | 主要不足 |
|---|---|---|---|
| 5分钟 | 14 | 约70分钟 | 对日内噪声敏感 |
| 15分钟 | 14 | 约3.5小时 | 仍主要受交易时段内噪声影响 |
| 1小时 | 14 | 约14小时 | 无法捕捉跨多个交易时段的结构 |
| 日线 | 14 | 14个交易日 | 对波动状态变化反应较慢 |
| 周线 | 14 | 14周 | 反应非常慢,仅适用于长期分析 |
5分钟图上的14周期ATR与日线图上的14周期ATR,除了设置数值相同外,并无其他共同之处。前者描述过去约1小时,后者描述过去约3周。
只有知道在哪里找到并调整参数,设置才有意义,而不同平台在这方面有所差异。
如何在MT4/MT5上设置ATR
MetaTrader 4和MetaTrader 5均内置平均真实波幅这一标准指标,默认周期为14。可依次通过“插入”“指标”“震荡指标”菜单找到它。
- 打开图表:先选择交易品种和时间周期,因为ATR的计算周期按该图表上的K线根数计数。
- 插入指标:依次选择“插入”“指标”“震荡指标”“平均真实波幅”。按Ctrl+N打开“导航”面板,也可找到相同的指标列表。
- 设置周期:默认值为14。仅在持仓周期与默认设置不匹配时修改,并在该图表上的所有比较中保持相同数值。
- 确认并放置指标:点击“确定”,然后将ATR线拖入独立子窗口,避免压缩价格刻度。

ATR的局限性与常见误读
ATR描述的是过去的波幅,因此具有滞后性,无法指示方向,其绝对数值也不能用于跨资产比较。
- 不提供方向信息。公式采用绝对值,因此幅度相同的上涨与下跌会产生完全相同的读数。
- 计算机制决定其滞后性。最新一根K线仅占每个新数值的1/14,因此跳空会立即体现在真实波幅中,但只会逐步传导至平均值。
- 无法直接进行跨资产比较。数值以价格单位表示,因此在百分比波动性相近时,价格为250美元的交易品种,其ATR通常高于价格为25美元的交易品种。
- 结构性变化后可比性失效。拆股、大幅价格调整,或导致交易品种价格水平改变的持续趋势,都可能使早期ATR值无法与当前值比较。
有一种概念性误解值得直接澄清:ATR有时被描述为衡量趋势强度的指标,但事实并非如此。它衡量的是价格变动的幅度,而较大的波幅既可能出现在顺趋势行情中,也可能出现在逆趋势行情或无明确方向的市场中。单独使用ATR也无法有效管理风险,因为它只提供一项输入,其余风险管理框架仍需由其他工具和规则补足。
ATR与其他波动性指标的比较
ATR、标准差、布林带、肯特纳通道和VIX都描述波动性,但它们采用不同的输入数据,回答的问题也不同。
| 指标 | 输入数据 | 单位 | 回答的问题 |
|---|---|---|---|
| ATR | N个周期内的最高价、最低价和前收盘价 | 价格单位 | 每根K线的平均波幅有多大? |
| 标准差 | 相邻收盘价之间的收益率 | 百分比或价格单位 | 收益率的离散程度有多大? |
| 布林带 | 移动平均线加上或减去收盘价离散程度的某个倍数 | 价格单位 | 相对于价格自身的离散程度,当前价格处于什么位置? |
| 肯特纳通道 | 移动平均线加上或减去ATR的某个倍数 | 价格单位 | 相对于平均波幅,当前价格处于什么位置? |
| VIX | S&P 500期权价格 | 年化百分点 | 期权市场预期的波动性有多大? |
最重要的区别在于已实现波动与隐含波动。ATR、标准差、布林带和肯特纳通道描述已经发生的价格变动,而VIX描述期权价格中反映的市场预期。此外,对历史价格整体加减一个常数不会改变ATR,因此它很适合用于向后调整的期货价格序列。
ATR也不同于方向和动量工具。相对强弱指数包含方向信息,而ATR刻意排除了这类信息;移动平均线、平均趋向指数等指标则用于分析趋势。用ATR判断波动幅度,用方向或动量指标判断走势方向。
平均真实波幅常见问题
平均真实波幅能告诉您什么?
它以价格单位表示选定周期内价格变动的平均幅度,是衡量市场波动性的直接指标。ATR上升意味着波幅扩大,下降意味着波幅收窄,但不提供任何方向信息。
ATR适合日内交易吗?
ATR有助于在日内图表上设置止损距离和仓位规模。它不产生入场信号,且短周期读数噪声较多。与能够判断方向的工具搭配使用时,效果最佳。
交易中的2 ATR是什么意思?
2 ATR指等于当前ATR值两倍的距离。将止损设在距离入场价2 ATR的位置,意味着止损距离为平均波幅的两倍。与1 ATR止损相比,它给予交易更大的波动空间,但在风险预算相同时,需要采用更小的仓位。
如何使用ATR设置止损和止盈?
常见做法是在入场价下方某个ATR倍数处设置止损,并以更大的ATR倍数设置目标位,从而用波动幅度同时界定收益与风险。倍数的选择仍需根据持仓周期和风险承受能力判断。
最佳ATR周期是多少?
不存在普遍适用的最佳周期。14是怀尔德的默认设置,7至10周期反应更快,20至50周期则反映变化较慢的波动状态。合适的选择应与交易的持仓周期相匹配。
为什么MT4和TradingView上的ATR不同?
不同平台在平滑方法、首根可见K线之前加载的历史数据量,以及四舍五入方式上存在差异,因此出现小幅差别属于正常情况。比较ATR值时,应在同一平台内进行,而不是跨两个平台比较。
















