什么是 ATR(平均真实波幅)?定义仓位的波动率数字
ATR 衡量每根 K 线的平均波动。公式、为什么它是仓位管理与止损的正确工具、ATR 倍数框架,以及四个陷阱。

平均真实波幅(ATR)是 N 根 K 线"真实波幅"的平均值,真实波幅取(当日高 − 低)、(当日高 − 昨收)、(昨收 − 当日低)三者中的最大值。 它是大多数散户没在用、却最重要的指标。ATR 不给入场信号。它告诉你更有用的东西:这只股票在典型 K 线上动多少,这样你才能在尊重底层波动率的前提下定仓位和设止损。同样 1% 的止损,放在高 ATR 的股票上和放在低 ATR 的股票上,根本不是同一笔交易。
核心要点
- 公式:
真实波幅 = max(高 − 低,|高 − 昨收|,|低 − 昨收|)。然后ATR(N) = 最近 N 根 K 线 TR 的平均。默认 N = 14(Wilder 平滑)。 - ATR 是美元单位(例如 $1.85),不是百分比。同一只股票在不同价格上的 ATR 不同。ATR / 股价 = 百分比等价值。
- 仓位管理:常见规则"1× ATR 初始止损、每笔 0.5–1% 组合风险"。ATR 越大 → 仓位越小,保持美元风险恒定。
- 波动率体制会切换。 一只股票的 ATR 可以在财报、宏观冲击或新闻前后几个月内翻倍。体制变了就要重新校准止损与仓位。
- ATR 方向中性。 它不告诉你股票要往哪走。配 均线组、MACD 或其他方向工具。
ATR 怎么算?
每根 K 线的"真实波幅"干净处理隔夜跳空:
TR[t] = max(
High[t] − Low[t],
|High[t] − Close[t-1]|,
|Low[t] − Close[t-1]|
)
第一项是当日内的振幅。第二、第三项分别捕捉跳空高开和跳空低开 —— 实际从前收盘起算的价格变动比当日自己的振幅更大。"真实"二字的含义就是:包括跳空在内的最大可能变动。
然后用 Wilder 平滑(与 RSI 用的相同指数平滑)对 N 根求平均:
ATR[t] = (ATR[t-1] × (N-1) + TR[t]) / N
几乎所有平台默认 N = 14。Wilder 平滑意味着每个新 TR 的权重是 1/N(N = 14 时约 7.1%),剩余按递推方式向前携带。
ATR 到底告诉你什么?
ATR 是一个美元数:"100 美元股票上 ATR = $1.85"意味着典型 K 线的运动(含隔夜跳空)是 $1.85。这比百分比波动率在几方面更直接有用:
- 止损是美元事件。 你的止损是否被触发取决于美元变动,不是百分比。
- 每股风险才是仓位的正确单位。 美元 ATR = 每股预期美元变动 = 正确的每股风险参考。
- 跨股票比较用 ATR% 更诚实。 ATR / 当前股价 = ATR%,在不同价位的股票之间可直接比较。
| 股票 | 股价 | ATR | ATR% | 解读 |
|---|---|---|---|---|
| 超大盘(如 KO) | $60 | $0.45 | 0.75% | 低波动 —— 大型稳定生意 |
| 大盘科技(如 AAPL) | $180 | $2.40 | 1.3% | 中等波动 |
| 成长股(如 PLTR) | $35 | $1.20 | 3.4% | 偏高波动 |
| 小盘 | $25 | $1.30 | 5.2% | 高波动 —— 需要更宽止损 |
规律:大型稳定生意 ATR% 低;小盘、成长、新闻驱动的票 ATR% 高。跨股票的差异很大,对仓位管理意义重大。
ATR 倍数止损框架
ATR 最常见的实战用法是按 ATR 的倍数设初始止损:
- 1× ATR 止损:紧。适合高确信度的设置,留给噪声的空间最小。频繁被触发。
- 2× ATR 止损:标准。多数波段系统默认 2× ATR。过滤掉常规噪声;捕捉真实反转。
- 3× ATR 止损:宽。用于长期持仓,希望挺过适度回撤。
举例:$180 的 AAPL,ATR = $2.40:
| 止损 | 止损距离 | 止损价 | 每股风险 |
|---|---|---|---|
| 1× ATR | $2.40 | $177.60 | $2.40 |
| 2× ATR | $4.80 | $175.20 | $4.80 |
| 3× ATR | $7.20 | $172.80 | $7.20 |
10 万美元账户每笔 1% 组合风险($1000 风险预算):
| 止损倍数 | 股数(2× ATR 风险 = $4.80/股) | 仓位美元规模 |
|---|---|---|
| 2× ATR($4.80 风险/股) | $1000 / $4.80 = 208 股 | 208 × $180 = $37,440 |
ATR 倍数框架自动给高 ATR 股票更小仓位、低 ATR 股票更大仓位,保持每笔美元风险恒定。这是从固定股数或固定美元仓位升级出来的、最简单且有意义的改进。
为什么波动率体制重要
ATR 不是静态的 —— 它随波动率体制切换而变。三种模式要识别:
-
财报扩张:ATR 在财报前后 2–3 个交易日通常上升 50–100%,之后回落。基于财报前 ATR 设置的止损可能被例行的财报日波动打掉。
-
宏观冲击扩张:整个市场的 ATR 在 VIX 飙升时(利率决议、地缘事件、银行业压力)同步走宽。14 期 ATR 会在 7–10 个交易日内反映出来;持仓进入新体制时应该重新定仓。
-
突破前的压缩:ATR 连续数周下降,常常先于一次锐利的方向性行情。"ATR 收口"天然与 布林带收口 一起 —— 两者衡量的是同一个蓄势现象。
PickSkill 面板把 ATR 作为持续跟踪指标呈现,便于一眼看出体制切换。
使用 ATR 的四个陷阱
-
不用 ATR 设止损。 固定百分比止损(如"永远 5% 止损")忽视了一个事实:5% 在安静股票和波动股票上,触发噪声 vs 真反转的频率完全不同。基于 ATR 的止损是噪声感知的。
-
用 ATR 判方向。 ATR 按构造方向中性 —— 它告诉你股票动多少,不告诉你往哪走。把"高 ATR"当看空、"低 ATR"当看多,是范畴错误。配方向工具。
-
不为体制调整 ATR。 用最近 14 根平静市 K 线算的 ATR,低估了下一体制要面对的波动率。体制切换(财报、新闻、宏观)后,给 ATR 7–10 根 K 线反映新常态,再用它调新仓。
-
把 ATR 与已实现波动率(sigma)混淆。 两者都衡量波动率,但数学不同。已实现波动率是日收益率的标准差,期权定价用它。ATR 是平均真实波幅,对止损与仓位更直观。二者方向上一致,但数值不能互换。
ATR 在多信号工作流中的位置
ATR 是给其他一切定仓位的波动率层:
| 层 | 工具 | 回答的问题 |
|---|---|---|
| 方向 | 均线组、MACD、趋势过滤 | 市场往哪走? |
| 形态 | 背离、支撑 / 阻力 | 有可行的形态吗? |
| 触发 | %K 穿 %D、MACD 线交叉 | 何时动手? |
| 波动 / 仓位 | ATR | 仓位该多大?止损放哪? |
| 确认 | 成交量、资金流 | 这次行情有参与度支撑吗? |
散户交易里最被跳过的一层就是波动率。没有它,仓位是任意的,止损要么太紧(被洗)、要么太宽(亏损过大)。
ATR 在 A 股的表现
A 股微观结构改变 ATR 的解读:
- 涨停 / 跌停日把 K 线区间封在涨跌停价(主板 ±10%)。涨停日真实波幅恰好等于涨停幅度;连续涨停日上算的 ATR 会超调真实波动率。PickSkill 的 A 股面板把涨跌停日 K 线标为离群点。
- T+1 结算把日内波动压缩到次日开盘。A 股跳空日频率高于美股大盘,真实波幅公式里的跳空处理更重要。
- 停牌产生不连续。复牌后的 ATR 读数,头 5–10 根要打折。
更广的市场专属玩法见 A 股最佳指标。
在你的组合上看 ATR。 在 /chat 里问"对每只持仓,展示当前 ATR、ATR% 以及相对 60 日均值的变化。标记 ATR 高于 60 日均值 1.5 倍以上的票 —— 这些是需要重新校准止损的体制切换名字。"
常用追问
- "对 [代码],按 1% 组合风险算 2× ATR 止损,告诉我我应该持有多少股。"
- "筛选 S&P 500 里过去 8 周 ATR 压缩 30%+ 的票 —— 布林收口候选。"
- "对比我持仓的当前 ATR 与 12 个月区间。哪些处于低波动极端(潜在突破)?哪些处于高波动极端(暂时回避)?"
- "回测 [代码] 过去 5 年 2× ATR 移动止损 vs 固定 5% 止损的效果。"
延伸阅读
- Investopedia 关于 ATR 的词条 —— 完整参考。
- J. Welles Wilder Jr.,《技术交易系统中的新概念》 —— 开发者对真实波幅与 ATR 的原始论述。
FAQ
波动率应该用 ATR 还是标准差? 止损与仓位用 ATR —— 它是美元单位,直接可用。统计分析和期权定价用标准差(或年化已实现波动率 σ) —— 它是百分比单位,假设正态。二者方向一致,但回答的是不同问题。
止损用哪个 ATR 倍数? 2× ATR 是波段交易最常见的起点。1× ATR 紧(频繁触发,适合极高确信度的设置);3× ATR 宽(用于希望挺过适度回撤的持仓交易)。选哪个看持有期与个人对洗盘 vs 大额亏损的容忍度。
为什么 ATR 是美元单位而不是百分比? ATR 由 Wilder 为商品期货设计,美元计价的风险才是自然单位。对股票,美元 ATR 仍然是止损与仓位决策的正确单位(你的止损是美元事件,不是百分比事件)。跨股票比较时除以当前股价得到 ATR%。
ATR 与布林带宽度的关系? 都衡量波动率,但公式不同。布林带宽用收盘价的标准差;ATR 用真实波幅(包含跳空)。当二者背离(ATR 上升但带宽下降),通常意味着跳空驱动的波动 —— 日内振幅在扩大但收盘价仍在窄带内。这是个有用的体制识别信号。
ATR 要为拆股调整吗? 要 —— 任何基于每根 K 线价格的指标做历史对比都需要拆股调整。多数平台自动处理;在未做拆股调整的原始历史数据上手算 ATR 会在拆股日产生假体制切换。PickSkill 面板全程用拆股调整后的价格。