2026年9月28日
117+ 次浏览

ATR指标是什么?不报买卖,但决定你的止损距离和仓位大小

很多人的止损是一个固定的数字:不管行情安静还是剧烈,一律放同样的点数。

安静的时候,这个距离也许刚好。行情一变剧烈,同样的距离可能只是一根 K 线的正常起伏——单子一次又一次被扫出场。

ATR指标就是用来量「现在晃多大」的尺。它不会告诉你该买还是该卖,但它决定,你的止损该放多远。

这是 MASQuant 迈思量化「交易学院 · 指标的真相」第五篇。新手实务的〈止损怎么设?〉讲过:止损要放在理由不成立的位置,而且距离要比价格平常的晃动大。这一篇把量「平常晃多大」的那把尺拿出来细看——ATR 怎么算、怎么用它设止损,以及止损放宽之后,仓位为什么一定要跟着缩小。

先讲结论

ATR 不报买卖,但它决定止损的距离,跟仓位的大小。

止损要跟着波动呼吸;止损放宽了,仓位就要跟着缩小。

ATR指标是什么?量「平常晃多大」的尺

ATR 是 Average True Range 的缩写,中文叫平均真实波幅(也有人译作平均真实区间),由 J. Welles Wilder 在 1978 年的著作《New Concepts in Technical Trading Systems》中提出——RSI 也出自同一本书。

白话说,ATR 量的是:最近 14 根 K 线,平均每一根晃多大。 数字越大,行情越剧烈;数字越小,行情越安静。

用之前,先记住两个特性:

  • 它没有方向。 ATR 只量幅度,不管涨跌。大涨会让 ATR 变大,大跌也会。ATR 往上,不代表要涨;ATR 往下,也不代表要跌。
  • 它的单位就是报价的单位,不是百分比。 所以不同产品的 ATR 不能直接比大小;想比的话,常见做法是把 ATR 除以价格,换成百分比再看。

真实波幅(TR):为什么不只看最高减最低

ATR 平均的对象,不是单纯的「最高 − 最低」,而是真实波幅(True Range,TR)。一根 K 线的真实波幅,取下面三个数字里最大的那一个:

TR = 以下三者取最大:
① 当根最高 − 当根最低
② | 当根最高 − 前一根收盘 |
③ | 当根最低 − 前一根收盘 |

后面两项,是为了把跳空算进去。举个好算的例子(这是举例用的整数,不是行情数据):

前一根收盘 100,这一根跳空高开,最高 105、最低 103

① 105 − 103 = 2
② | 105 − 100 | = 5
③ | 103 − 100 | = 3

TR = 5

只看最高减最低,会以为这根 K 线只晃了 2;但从前一根收盘算起,价格其实走了 5。对止损来说,这个 5 才是真的——跳空跳过去的那一段,你的单子一样要承受。

ATR 怎么算:14 根、Wilder 平滑

有了每一根的 TR,ATR 就是把它们平均起来。最常见的默认是 14 根,平均的方式叫 Wilder 平滑:

第一个 ATR = 前 14 根 TR 的简单平均
之后每一根:
今天的 ATR =(昨天的 ATR × 13 + 今天的 TR)÷ 14

这个算法有一个很重要的后果:每一根新 K 线,只占 14 分之 1 的份量。

再举个好算的例子(举例用的数字,不是行情数据):昨天的 ATR 是 1.0,今天突然来一根 TR = 4.0 的大 K 线:

(1.0 × 13 + 4.0)÷ 14 = 17 ÷ 14 ≈ 1.21

一根大 K 线进来,ATR 只从 1.0 动到大约 1.21。要连续好几根都变大,ATR 才会真的抬上去。所以 ATR 是滞后的:行情刚变剧烈的头几根,它还没跟上;行情刚安静下来,它也还高高挂着。

几个计算上的细节:

  • 严格说,Wilder 平滑也保留了更早 K 线的一点点份量(越旧越小),白话理解成「最近 14 根平均晃多大」就够用了。
  • 有些看盘软件的 ATR 用简单平均而不是 Wilder 平滑,不同平台看到的数字可能差一点。
  • 设止损时,通常用已经收盘的那根 K 线算出来的 ATR;还没收完的 K 线,ATR 会跟着跳。
  • ATR 跟着 K 线周期走:5 分钟图量的是每 5 分钟晃多大,日线量的是每天晃多大。

看一段行情:安静的时候,和剧烈的时候

视频里用的是一段程序实算的示意行情(不是真实产品)。前面很安静,每根 K 线都很小,ATR 也很低;接着行情突然变剧烈,K 线一根比一根大,ATR 跟着放大。

示意图里,安静段的 ATR 大约是 0.48,剧烈段大约是 1.71——放大了三倍多。

笔记本手绘示意图:前段 K 线很小、下方的 ATR 线很低;后段 K 线一根比一根大,ATR 线跟着抬高到三倍多

同一个产品,晃动的幅度可以在一段时间内差好几倍。这时候,止损如果一直用同一个距离,会怎么样?

固定止损 vs 2 倍 ATR 止损

固定止损:照安静的时候设,距离一直不变

假设你的止损,是照安静那段的晃动设的,之后距离一直不变。

在安静段,它也许刚好。到了剧烈段,同样的距离只剩下一根 K 线的正常起伏,价格随便一晃就碰到——也就是〈止损怎么设〉说的「被洗出场」。

示意图里,同一段剧烈行情,固定止损一次又一次被扫出场,一共 16 次。

(示意图的数法:每根 K 线收盘后,在「收盘价 − 止损距离」挂一次多单止损,下一根的最低价碰到就算被扫一次。固定止损的距离 = 安静段平均 ATR 的 2 倍,约 0.96。)

2 倍 ATR 止损:跟着波动呼吸

改用「2 倍 ATR」当止损距离:

做多:止损 = 进场价 − 2 × ATR
做空:止损 = 进场价 + 2 × ATR

行情剧烈,ATR 变大,止损自动放宽;行情安静,ATR 变小,止损自动收紧。换算成止损距离,示意图里同样是 2 倍 ATR,安静段大约是 0.96,剧烈段大约是 3.4。

同一段剧烈行情、同一套数法,2 倍 ATR 止损(距离 = 当根 ATR 的 2 倍)只被扫出场 2 次——少了一大截。

笔记本手绘示意图:同一段剧烈行情,照安静时设的固定止损被价格一次又一次碰到;跟着 2 倍 ATR 放宽的止损,只被碰到两次

止损不是固定的点数,它要跟着波动呼吸。

但有两件事要讲清楚。

第一,被扫的次数少,不等于比较会赚。 止损放宽之后,每一次真的止损,价格都已经走了比较远。这一笔会亏多少钱,要看仓位下多大(下一段);这组止损放在你的产品上整体表现如何,要回测才知道。

第二,「呼吸」指的是每一笔新进场的止损距离。 止损距离依进场当下的 ATR 决定;单子进场之后,不要因为 ATR 变大,就把止损往外搬——那就是〈止损怎么设〉说的「单子一亏,就把止损往后搬」,事先算好的最大亏损会跟着消失。如果要用 ATR 做移动止损,常见的规则是止损只往有利的方向移,不往回放宽。

止损放宽了,仓位就要跟着缩小

止损距离变了,手数就要跟着变。公式在〈一手怎么算?〉拆过,〈止损怎么设〉也用过,这里只把止损距离换成 ATR:

止损距离 = 倍数 × ATR
手数 = 可承受亏损 ÷(止损距离 × 一格的价值)

举个好算的例子(这是举例用的整数,不是行情数据):同一个产品,安静时 ATR 5 点,剧烈时变成 15 点(三倍),止损都用 2 倍 ATR:

行情 ATR 止损距离(2 倍 ATR) 手数 最大亏损(相对值)
安静 5 点 10 点 3 手 10 × 3 = 30
剧烈,手数没改 15 点 30 点 3 手 30 × 3 = 90
剧烈,手数跟着缩 15 点 30 点 1 手 30 × 1 = 30

同一个产品,每一点代表的金额相同,所以直接比「距离 × 手数」就好。止损放宽三倍、手数没改,最大亏损就变成三倍;手数跟着缩成三分之一,最多会亏的钱才会一样。

止损放宽了,仓位就要跟着缩小,最多会亏的钱才不会变大。

反过来,行情安静、止损收紧时,同样的可承受亏损,算出来的手数会变大。那只是「止损刚好被打到时,亏损等于你设定的金额」的手数;要不要下到这么多,仍然是你自己的风险决定。

几个但书:

  • 算出来的手数,照平台的最小下单单位往下取整,不要往上。如果只下最小单位,止损被打到时的亏损都会超过你的可承受亏损,照〈止损怎么设〉的逻辑,这笔不做。
  • 止损不保证照设定价格成交。跳空或行情急动时可能滑点,实际亏损会比算出来的大;止损越近、手数越大,同样的滑点,影响也越大。
  • ATR 是用过去的 K 线算的,是滞后的:行情刚变剧烈的头几根,用 ATR 设的止损一样可能被扫;突发消息或跳空,它也不会事先告诉你。

2 倍只是示范:倍数没有标准答案

视频用 2 倍 ATR,是为了示范「止损跟着波动走」这件事,不是在说 2 倍是正确答案。 1 倍、1.5 倍、2 倍、3 倍都有人用,要看:

  • 产品:有的产品常有长影线或跳空,止损可能需要更多倍的空间。
  • 周期:5 分钟图和日线的 ATR 可以差很多,用哪个周期的 ATR,要跟你打算持有的时间对得上。
  • 策略:你的进场理由,需要给价格多少空间,才会被证明是错的。
  • 成本:止损距离很近时,点差占止损的比例会变高。

倍数大小,是一组取舍:

倍数 止损 被扫的机会 手数(同样的可承受亏损) 同样价格变动的盈亏
小 近 较高 较大 较大
大 远 较低 较小 较小

单看同一笔交易,止损放得越远,被碰到的机会只会更小、不会更大;但手数也跟着变小。哪一个倍数整体比较适合,没办法用想的,要拿你的产品、你的周期实际测试。

ATR 止损也有两种用法,可以依你的策略选:

  1. 当检查:照〈止损怎么设〉,先找「理由不成立」的位置,再确认这个距离至少大于某个倍数的 ATR。位置由结构决定,ATR 负责确认它不在正常晃动里。
  2. 直接当止损:止损 = 进场价 ± 倍数 × ATR,就是视频示范的做法。好处是规则明确、可以写成条件回测;限制是它只知道波动,不知道你的进场理由在哪里失效。

另外,ATR 的参数 14 也不是非用不可。参数越短,ATR 反应越快、也越跳;越长越平滑,也越慢。

常见误用

一、把 ATR 当成买卖信号

ATR 往上,只代表晃得比较大,不代表要涨;急跌一样会让 ATR 变大。ATR 不报买卖,想用它判断方向,等于拿尺去当指南针。

二、拿不同产品、不同周期的 ATR 直接比

ATR 的单位是报价单位,黄金和欧元兑美元的 ATR 数字没有可比性;5 分钟图和日线的 ATR 也不能混用。

三、止损放宽了,手数没跟着缩

ATR 放大三倍、止损跟着放宽三倍,手数却没改,最大亏损就跟着变三倍。用 ATR 设止损,一定要连手数一起算。

四、进场后看 ATR 变大,把止损往外搬

ATR 决定的是进场时的止损距离。进场后把止损往外搬,等于事后改掉看错的定义,事先算好的最大亏损就不存在了。往缩小风险的方向调整,是另一回事。

常见问题

ATR指标是什么?

ATR(Average True Range,平均真实波幅)由 J. Welles Wilder 提出,衡量最近一段期间(常见默认 14 根 K 线)每根 K 线平均的波动幅度,数字越大代表行情越剧烈。它没有方向、不报买卖,常用来决定止损距离与仓位大小。

ATR 怎么算?

先算每根 K 线的真实波幅 TR:当根最高减最低、当根最高减前一根收盘的绝对值、当根最低减前一根收盘的绝对值,三者取最大。再用 Wilder 平滑把 TR 平均:第一个 ATR 是前 14 根 TR 的简单平均,之后每根是「昨天的 ATR × 13 加上今天的 TR,再除以 14」。

ATR 止损要设几倍?

没有标准答案。1 倍、1.5 倍、2 倍、3 倍都有人用,取决于产品、周期、策略与交易成本。倍数越大,止损越远、被扫的机会越低,但手数也要越小。适合的倍数应该拿自己的产品实际回测决定,不是固定规则。

ATR 变大,代表要涨还是要跌?

都不代表。ATR 只衡量波动幅度,不衡量方向。大涨和大跌都会让 ATR 变大,所以不能单独用 ATR 判断买卖。

用 ATR 设止损,仓位大小怎么算?

止损距离 = 倍数 × ATR,手数 = 可承受亏损 ÷(止损距离 × 一格的价值)。ATR 放大、止损放宽时,手数要跟着缩小,最大亏损才不会变大。前提是止损照设定价格成交;跳空或急动时可能滑点,实际亏损可能更大。

ATR 的参数一定要用 14 吗?

不一定。14 是最常见的默认值,不是标准答案。参数越短,ATR 对波动变化反应越快,但也越不稳定;参数越长越平滑,但反应越慢。用哪个参数,应该跟止损倍数一起测试决定。

结语

RSI、KD、MACD 这些指标,常被拿来找进出场。ATR 不一样,它不报买卖,它回答的是另一个问题:现在晃多大——以及,你的止损该放多远、仓位该下多大。

ATR 不报买卖,但它决定止损的距离,跟仓位的大小。

几倍 ATR 才适合你的产品?用我们的 AI 策略助理回测验证就知道。

把你的进场条件连同「止损 = 2 倍 ATR」写成一句话,丢进 MASQuant 迈思量化的 AI 策略助理,按下去就开始回测;回测环境纳入点差、滑点、市场流动性变化与交易执行延迟这些真实市场摩擦。把 2 倍换成 1.5 倍、3 倍再跑一次,看看哪个倍数在你的产品上被扫得太频繁、哪个又放得太远。回测告诉你的是「这组条件在过去的行情里表现如何」,不是未来的保证,也不会替你决定该冒多少风险。

想法,经过验证,才叫策略。

文中图表与数字来自程序计算的示意行情,不代表任何产品的真实走势。

风险揭露:CFD 属于高风险金融产品,可能导致快速资金损失。过往业绩不代表未来结果,所有策略与回测仅供参考,不构成投资建议。交易前请充分了解本公司风险揭露条款。

延伸阅读:

发表评论