股票期货

商品期货ATR止损与支撑位止损:波动率与市场结构的博弈

\[…

商品期货ATR止损与支撑位止损:波动率与市场结构的博弈

TR_t=\max\left(H_t-L_t,\ |H_t-C_{t-1}|,\ |L_t-C_{t-1}|\right)

\]

止损距离不是一个固定点数。固定点数假设市场波动率恒定。商品期货不满足这个假设。

同一个合约,在低波动阶段可能连续数个交易日维持窄幅运行。进入宏观数据、库存变化、交割月切换或夜盘跳空阶段后,日内波幅会迅速扩大。如果止损距离不随波动率调整,策略会在高波动阶段频繁触发;如果止损设置过宽,单笔损失又会突破账户风险预算。

ATR止损解决的是波动率问题。支撑位止损解决的是市场结构问题。两者不是同一类工具,也不存在可以脱离品种、周期和交易逻辑的固定优劣关系。

更稳定的做法,通常不是二选一,而是先确认结构失效位置,再使用ATR设置结构位外侧的缓冲区。

ATR止损的量化本质:只测波幅,不测方向

ATR由J. Welles Wilder于1978年提出。它的功能非常明确:量化市场波动率。

ATR不判断上涨或下跌。ATR上升,只说明单位周期内的真实波幅扩大。它不包含方向信息。将ATR上升直接解释为价格即将上涨,属于变量含义错误。

真实波幅比单纯高低价差多一层信息

真实波幅使用以下三个数值中的最大值:

1. 当日最高价减去当日最低价。

2. 当日最高价减去前一日收盘价的绝对值。

3. 当日最低价减去前一日收盘价的绝对值。

公式为:

\[

TR_t=\max\left(H_t-L_t,\ |H_t-C_{t-1}|,\ |L_t-C_{t-1}|\right)

\]

第一项记录日内波动。后两项记录跳空影响。

对于存在夜盘、隔夜信息和开盘跳空的商品期货,只使用当日最高价与最低价,可能低估真实风险。ATR将前收盘纳入计算,能够识别开盘价与前收盘之间的距离。

标准ATR通常使用14个周期作为计算参数。周期可以是日线,也可以是小时线、15分钟线或其他交易周期。周期改变后,ATR的统计含义也随之改变。

日线ATR回答的是:

这个合约近期每天通常承受多大的真实波幅?

15分钟ATR回答的是:

这个合约近期每个15分钟K线通常承受多大的真实波幅?

二者不能混用。用15分钟ATR给日线趋势策略设置止损,结果通常会显著偏窄。用日线ATR给超短线策略设置止损,结果通常会显著偏宽。

ATR止损的基本形式

多头持仓的动态止损价:

\[

Stop_{long}=P_{entry}-n\times ATR

\]

空头持仓的动态止损价:

\[

Stop_{short}=P_{entry}+n\times ATR

\]

其中:

  • \(P_{entry}\)是入场价格。
  • \(ATR\)是当前计算周期下的平均真实波幅。
  • \(n\)是止损倍数。

中短线交易中,常见的倍数范围是1.5倍至3倍ATR。这个范围不是最优参数。它只是常见的参数搜索区间。

倍数越小,止损越近。交易被正常波动触发的概率上升。倍数越大,止损越远。单笔价格风险扩大,持仓数量必须同步下降。

ATR止损的优点在于规则简单。给定周期、ATR算法和倍数后,结果可以重复。不同交易员对同一组数据计算,理论上应得到相同的止损距离。

这也是它适合量化交易的原因。

ATR止损的滞后性

ATR是历史波幅的统计结果。它不是即时波动率。

如果合约长期处于低波动状态,ATR会维持较低水平。突然出现大幅波动后,新的高TR值会进入计算窗口,ATR随后上升。这个过程存在滞后。

滞后会带来两个问题。

第一,波动率刚开始扩大时,原有止损可能仍然过近。价格先完成一次快速扩张,ATR才开始调整。

第二,波动率已经收缩时,ATR仍可能维持高位。策略此时继续使用较宽止损,风险效率下降。

ATR不是实时风险探测器。它是一个滚动统计量。滚动统计量必然受到窗口长度影响。

14周期ATR对近期波动变化反应较快,但稳定性较弱。更长周期的ATR更平滑,但会牺牲响应速度。参数选择必须与策略持仓周期匹配。

支撑位止损的结构逻辑:价格失效位置优先

支撑位止损不从波动率出发。它从交易逻辑出发。

如果多头交易的前提是价格守住某一低点、平台下沿、前期密集成交区或突破后的回踩区域,那么止损位置应当位于该结构失效之后。

这类止损关注的不是价格离入场点有多少个点,而是:

  • 交易成立所依赖的低点是否被有效跌破。
  • 突破结构是否重新回到原区间。
  • 回踩支撑是否转化为阻力。
  • 前期震荡区间是否被反向穿透。
  • 价格是否在关键水平外形成连续收盘。

支撑位止损的核心表达可以写成:

\[

Stop_{long}=S-\delta

\]

其中:

  • \(S\)是结构支撑位。
  • \(\delta\)是支撑位外侧的缓冲距离。

空头交易则对应阻力位上方:

\[

Stop_{short}=R+\delta

\]

其中\(R\)是阻力位。

结构位本身不是一个绝对精确的价格点。真实交易中,支撑和阻力通常表现为区域,而不是单一数值。直接把止损放在支撑位价格上,容易受到报价波动和短时穿刺影响。

因此,支撑位止损也需要缓冲区。问题在于缓冲区多大。

如果缓冲区固定为10个点,它无法适应不同波动阶段。如果缓冲区固定为某个百分比,它也未必适应不同合约的价格波动结构。

这正是ATR可以介入的位置。

支撑位止损的主观成分

支撑位止损比ATR止损更依赖定义规则。

以下几种结构都可能被称为支撑:

  • 前一波段低点。
  • 多次测试未破的水平位。
  • 横盘区间下沿。
  • 缺口或跳空起点。
  • 突破前的阻力位。
  • 均线附近的动态区域。
  • 前高回踩形成的价格平台。

如果没有明确的识别算法,不同交易员会得到不同支撑位。回测时也容易出现未来函数问题。

例如,使用后续K线确认一个局部低点,再把这个低点作为过去交易时的支撑位。这个支撑位在当时并不存在。回测结果会被污染。

支撑位算法至少需要定义以下内容:

1. 使用多少根K线确认局部高低点。

2. 支撑位是取最低价、收盘价,还是价格区域。

3. 多次测试时如何合并相近水平。

4. 穿透支撑后,使用影线判定还是收盘价判定。

5. 合约换月、涨跌停和夜盘数据如何处理。

6. 止损触发使用触价成交,还是下一根K线开盘成交。

这些细节不明确,支撑位止损就不是一个完整的交易规则。

支撑位止损与假突破

支撑位附近经常出现短时穿透。价格跌破支撑后快速收回,或者盘中跌破、收盘重新回到支撑上方。此类情况会触发过近的止损。

但不能因此得出“支撑位止损必然会被扫损”的结论。是否触发,取决于:

  • 支撑位识别方式。
  • 订单触发方式。
  • 交易周期。
  • 合约的最小变动价位。
  • 当前ATR水平。
  • 止损距离。
  • 行情是否存在跳空或流动性收缩。

支撑位止损的问题不是结构无效,而是结构价格与订单价格之间缺乏缓冲。

支撑位决定交易逻辑何时失效,ATR决定结构位外侧需要留出多少统计空间。

两类止损的直接比较

ATR止损和支撑位止损分别优化不同目标。前者降低波动率变化带来的参数失配,后者保持交易逻辑与价格结构的一致性。

参数ATR止损支撑位止损
核心依据历史真实波幅关键价格结构
主要解决的问题波动率变化交易逻辑失效
止损距离入场价加减ATR倍数支撑或阻力外侧
规则重复性取决于结构识别算法
对跳空的处理通过TR纳入前收盘需要额外设计
对震荡噪音的容忍度由ATR倍数决定由结构位与缓冲区决定
主要缺陷对波动变化存在滞后主观性和结构识别误差
对仓位管理的适配直接需要先计算结构距离
回测难度较低较高
适合场景规则化趋势跟踪、波动率调整结构突破、回踩、区间交易

不能只比较止损触发次数。

止损触发次数低,不代表策略质量高。止损较宽时,触发次数可能减少,但单笔亏损和资金占用增加。止损触发次数高,也不一定代表规则错误。趋势反转频繁、信号质量下降或交易成本上升,都可能造成相同结果。

应同时观察:

  • 单笔平均亏损。
  • 盈亏比。
  • 最大连续亏损次数。
  • 最大回撤。
  • 风险调整后收益。
  • 止损触发后的价格路径。
  • 交易成本占单笔风险的比例。
  • 不同波动率分位数下的表现。
  • 参数变化后的结果稳定性。

对于商品期货,品种之间的波动特征差异较大。黑色系、有色金属、能源和农产品不能共享同一套固定点数止损。即使是同一品种,主力合约切换和交割月临近也可能改变数据分布。

海龟法则的启示:ATR不只是止损工具

ATR在经典趋势交易体系中的重要性,不仅在于止损。

海龟交易法则使用ATR,也就是其体系中的“N值”,同时处理仓位管理和止损距离。核心公式为:

\[

Unit=\frac{Account\times RiskRatio}{ATR\times PointValue}

\]

其中:

  • \(Account\)是账户总额。
  • \(RiskRatio\)是单个单位允许承担的风险比例。
  • \(ATR\)是合约波动幅度。
  • \(PointValue\)是每点价格变动对应的合约价值。

这个公式的结果很直接。

ATR上升,单位仓位下降。ATR下降,单位仓位上升。单笔风险不应因为市场波动扩大而被动扩大。

这比单独调整止损距离更完整。止损位置和仓位大小必须同时计算。

用ATR计算结构止损下的仓位

如果止损采用支撑位加ATR缓冲区,真实止损距离不是单纯的\(n\times ATR\),而是:

\[

D_{long}=P_{entry}-\left(S-k\times ATR\right)

\]

多头仓位:

\[

Position=\frac{Account\times RiskRatio}{D_{long}\times PointValue}

\]

其中\(k\)是结构位外侧的ATR缓冲系数。

如果支撑位距离入场价格较近,结构止损距离可能较小。此时仓位不能直接放大到理论最大值,还需要考虑最小合约单位、保证金占用、涨跌停风险和滑点。

如果支撑位距离入场价格很远,仓位必须缩小。否则结构止损虽然合理,账户风险却会超出预算。

这也是许多主观交易计划失效的原因:只规定了止损价格,没有规定止损距离变化后的仓位调整。

风险比例不是越高越有效

风险比例应是策略设计参数,不是盈利目标的反向推导。

提高单笔风险比例,可能在一段有利样本中放大收益。但连续亏损同样会以更快速度扩大回撤。商品期货存在连续止损、跳空和流动性变化。仓位放大后,实际成交损失可能超过理论值。

回测时应将以下情况纳入:

  • 止损价与实际成交价不一致。
  • 夜盘与日盘之间发生跳空。
  • 价格直接跳过止损价。
  • 触及涨跌停后无法成交。
  • 主力合约切换造成价格序列不连续。
  • 手续费和滑点随成交量变化。
  • 同一账户多个品种同时出现风险事件。

ATR只能提供价格波动尺度。它不能替代资金管理。

进阶融合策略:结构位为锚,ATR提供缓冲

融合策略的逻辑只有两步:

第一步,确定交易逻辑失效的结构位置。

第二步,在结构位置外侧增加与当前波动率相关的缓冲区。

多头止损可以定义为:

\[

Stop_{long}=S-k\times ATR

\]

空头止损可以定义为:

\[

Stop_{short}=R+k\times ATR

\]

常见的缓冲系数为0.5至1倍ATR。

这不是固定结论。系数需要根据品种、周期、交易方式和成交机制进行测试。

为什么不直接使用支撑位价格

假设多头交易的支撑位为5000,当前ATR为60。

如果直接把止损设置在5000,价格只需要短时触及5000,订单就可能被触发。若使用0.5倍ATR缓冲,止损位置为4970。若使用1倍ATR缓冲,止损位置为4940。

两种设置对应不同风险:

  • 直接使用支撑位:结构保护强,噪音容忍度低。
  • 支撑位下方0.5倍ATR:保留结构约束,同时允许部分波动。
  • 支撑位下方1倍ATR:容忍度更高,但单笔风险增加。

实际仓位必须随止损距离重新计算。不能只把止损往外移动,而保持原有仓位不变。

为什么不直接使用ATR倍数

假设入场价格为5100,ATR为60。使用2倍ATR,多头止损为4980。

如果结构支撑位位于5030,那么4980已经低于结构位50个点。此时止损与交易逻辑可能不匹配。

价格跌至5030下方,原有支撑结构已经失效。但策略仍然等待价格继续下跌至4980。结果是亏损扩大,且止损位置没有新的结构依据。

ATR止损控制的是波动范围,不知道你的交易前提是什么。

趋势突破、区间反转和回踩确认的结构条件不同。统一使用2倍ATR,无法表达这些差异。

融合策略的规则化实现

为了避免主观调整,可以将融合策略拆成可回测的模块。

第一步:定义结构位

例如,使用过去若干根K线中的局部低点作为多头支撑位。确认窗口必须固定。不能在回测后挑选最符合结果的低点。

也可以使用突破前的区间下沿。区间定义应包含:

  • 最少持续周期。
  • 最高价与最低价的计算方法。
  • 允许的价格宽度。
  • 突破确认条件。
  • 回踩有效条件。

第二步:定义ATR

明确ATR周期。标准默认参数为14,但不能直接认为14适合所有策略。

同时明确:

  • 使用简单移动平均还是其他平滑方式。
  • 使用连续合约还是单个主力合约。
  • 夜盘数据是否纳入。
  • 换月时如何处理价格跳变。
  • ATR更新是在收盘后,还是每根K线结束后。

第三步:定义缓冲系数

缓冲系数可以从0.5、0.75和1.0开始测试。测试目标不是找到收益最高的单点,而是观察结果是否稳定。

如果只有0.73倍ATR有效,0.7和0.8都失效,通常意味着过拟合风险较高。

第四步:计算仓位

使用实际止损距离计算合约数量。公式为:

\[

Position=\left\lfloor

\frac{Account\times RiskRatio}

{Distance\times PointValue}

\right\rfloor

\]

结果需要向下取整到合约最小交易单位。

第五步:模拟成交偏差

回测不能假设止损总能在理想价格成交。至少需要测试:

  • 正常滑点。
  • 高波动阶段扩大滑点。
  • 跳空穿透止损。
  • 夜盘开盘直接越过止损。
  • 涨跌停无法平仓。

融合策略的优势在于结构逻辑更明确。它的代价是模型复杂度上升。复杂度上升会增加参数数量,也会增加过拟合空间。

结构位提供语义。ATR提供尺度。仓位管理把两者转换成账户风险。

止损倍数与周期的动态选择

止损参数不能脱离交易周期。

同一商品期货的5分钟、1小时和日线数据,波动分布不同。ATR倍数相同,不代表实际风险相同。

短周期策略

短周期策略的主要问题是微观噪音和交易成本。

ATR周期过短,止损会快速跟随局部波动变化。价格出现一根异常K线后,ATR可能被迅速抬高。随后仓位缩小,信号频率和资金利用率发生变化。

ATR倍数过小,则会产生连续止损。连续止损不一定来自方向错误,也可能来自止损距离小于正常噪音幅度。

短周期策略应重点观察:

  • 止损距离与平均价差的比例。
  • 止损距离与单根K线波幅的比例。
  • 交易成本占理论止损风险的比例。
  • 高频穿越结构位的频率。
  • 夜盘和日盘的波动差异。

如果止损距离只相当于一根普通K线的局部波动,结构位再准确,也可能缺乏执行空间。

中周期策略

中周期策略通常可以使用结构位和ATR缓冲区结合的方式。

支撑位定义交易逻辑。ATR定义容忍范围。仓位根据最终止损距离计算。

此时需要区分初始止损和移动止损。

初始止损用于控制入场判断错误。移动止损用于保护已经形成的浮动收益。二者不应使用完全相同的规则。

例如:

  • 初始止损:结构支撑位下方加0.5至1倍ATR。
  • 盈利后移动:使用近期高点下方若干倍ATR。
  • 趋势退出:跌破结构低点并满足收盘确认。

具体参数仍需通过样本外检验。不能因为某个规则在历史图表上看起来合理,就认为它具备统计优势。

长周期策略

长周期策略面对更大的跳空和持仓风险。

日线ATR可能较高。若使用3倍ATR,止损距离会明显扩大。仓位必须降低。对于杠杆合约,还要检查保证金占用是否允许持仓跨越数据公布、交割月和换月阶段。

长周期策略不适合只用盘中支撑位。盘中局部结构可能无法解释日线趋势失效。周期不一致会造成止损逻辑冲突。

一个可执行的原则是:

  • 入场信号和结构位使用同一主要周期。
  • ATR可以使用同周期,也可以使用更高周期作为风险上限。
  • 不使用低周期结构位覆盖高周期交易逻辑。
  • 任何跨周期组合都必须在回测中单独验证。

用波动率分层而不是固定倍数

可以根据ATR在历史窗口中的分位数,将市场状态分为低波动、中波动和高波动。

例如:

  • 低波动阶段:ATR位于历史较低分位。
  • 中波动阶段:ATR处于中间区域。
  • 高波动阶段:ATR位于历史较高分位。

这里不必先设定一个所谓最优阈值。重点是验证不同波动层级下,止损规则的表现是否一致。

在高波动阶段,简单扩大ATR倍数可能导致止损过远。更合理的做法通常包括:

  • 降低仓位。
  • 限制开仓频率。
  • 使用结构位而不是继续追踪价格。
  • 对跳空和涨跌停进行单独处理。
  • 暂停统计特性已经明显变化的品种。

波动率调整不等于无限放宽止损。

回测设计:不要只比较净利润

比较ATR止损与支撑位止损,至少需要使用同一入场信号。

如果入场规则、止损规则、仓位规则同时变化,最终结果无法说明差异来自哪里。正确的实验设计应固定其他变量,只替换止损模块。

基础实验矩阵

可以设置以下几组:

1. 固定点数止损。

2. 1.5倍ATR止损。

3. 2倍ATR止损。

4. 3倍ATR止损。

5. 支撑位直接止损。

6. 支撑位下方0.5倍ATR缓冲。

7. 支撑位下方1倍ATR缓冲。

多头和空头分别测试。不同商品期货分别测试。不同交易周期分别测试。

不要把所有合约拼接成一条收益曲线后得出统一结论。品种之间的波动率、合约乘数、交易时段和价格跳动单位都不同。

需要记录的指标

净利润只是结果变量,不足以判断止损质量。

应至少记录:

  • 总交易次数。
  • 胜率。
  • 平均盈利。
  • 平均亏损。
  • 最大单笔亏损。
  • 最大回撤。
  • 盈亏比。
  • 连续亏损次数。
  • 止损后最大有利变动。
  • 止损后最大不利变动。
  • 止损触发占全部离场的比例。
  • 不同ATR分位数下的止损表现。
  • 不同持仓时长下的止损表现。

“止损后价格立即反向上涨”并不能直接证明止损位置错误。需要区分两种情况:

  • 止损后价格只是正常反弹,随后继续原方向运行。
  • 止损后价格持续反向运行,原交易逻辑确实失效。

这两个结果对参数的含义不同。

检查参数稳定性

将ATR周期和倍数做网格测试时,不要只寻找收益峰值。

例如测试ATR周期10、14、20、30,倍数1.5、2.0、2.5、3.0。若结果在一片相邻参数区域内都相近,说明规则可能具有一定稳定性。

如果只有单一组合显著优于其他组合,需要警惕过拟合。

支撑位识别也存在同样问题。局部低点窗口、合并价格宽度、确认K线数量都可能变成隐性参数。

参数数量越多,样本外失效概率越高。

分割样本

至少要区分:

  • 训练区间。
  • 验证区间。
  • 样本外区间。

更严格的方式是滚动回测。使用过去一段时间优化参数,再在后续区间执行。然后滚动窗口。

这样可以观察参数是否随着市场波动结构变化而失效。

不要使用未来数据计算当时不可获得的ATR。不要在合约结束后用完整合约数据倒推交易期间的结构位。不要忽略换月造成的价格跳变。

这些错误会让回测曲线变得平滑,但不能改善真实执行。

实盘执行中的几个技术问题

止损触发价不等于成交价

ATR公式输出的是价格距离。订单实际成交还受到盘口深度、流动性、撮合规则和跳空影响。

当价格连续跳过止损位时,成交价可能比理论止损价更差。风险预算应为这种偏差保留空间。

如果模型将止损距离设计得很窄,却使用理想成交价回测,结果会系统性高估。

主力合约切换

商品期货主力合约切换时,价格序列可能出现不连续。直接在拼接数据上计算ATR,可能把换月价差误认为真实波动。

需要明确:

  • 使用单合约独立计算,还是使用复权连续合约。
  • 换月价差是否从TR中剔除。
  • 持仓迁移如何影响止损。
  • 新合约上市初期数据不足时如何计算ATR。

如果这些规则没有统一,跨合约比较没有统计意义。

涨跌停与流动性限制

止损策略最容易在极端行情中偏离理论。

价格触及涨跌停时,止损单可能无法立即成交。ATR缓冲区只能减少部分正常噪音,不能消除跳空和无法成交风险。

对存在涨跌停板的品种,应单独统计:

  • 触发止损时是否有可成交报价。
  • 止损后的实际滑点。
  • 连续涨跌停期间的风险暴露。
  • 夜盘到日盘的跳空幅度。
  • 交割月附近的流动性变化。

这类风险不能通过把ATR倍数从2改为3来完全解决。

订单类型

市价止损优先保证退出。限价止损优先控制成交价格,但存在无法成交风险。

如果策略的第一目标是限制尾部损失,不能只看理论价格。需要把订单类型写进回测规则。

订单类型不同,止损策略实际表现可能完全不同。

一个可复用的融合框架

下面的框架适用于需要结构判断、同时希望控制波动噪音的商品期货策略。

入场前

先计算当前周期ATR。确认ATR数据长度足够。检查主力合约和交易时段。

然后识别最近有效支撑或阻力。结构位必须由入场时已经存在的数据生成。

如果结构位距离入场价过远,放弃交易或降低仓位。不要为了获得更高的盈亏比,随意把结构位改到更近的位置。

入场时

设定结构缓冲系数。

多头:

\[

Stop=S-k\times ATR

\]

空头:

\[

Stop=R+k\times ATR

\]

计算实际价格距离。再根据账户风险比例、合约乘数和最小交易单位计算仓位。

如果理论仓位小于一个合约,应接受不交易。不能通过提高风险比例强行开仓。

持仓中

初始止损只能向有利方向移动,不能向不利方向扩大。否则回测中的风险上限失去意义。

移动止损可以使用以下逻辑之一:

  • 新结构位加ATR缓冲。
  • 近期高低点加ATR缓冲。
  • 入场价加固定风险单位。
  • 交易周期级别的跟踪ATR。

不同移动规则不要同时叠加。多个退出条件会导致归因困难。

离场后

记录离场原因:

  • 初始止损。
  • 移动止损。
  • 结构失效。
  • 趋势退出。
  • 时间退出。
  • 合约到期或换月。
  • 交易系统异常。

如果所有离场都被标记为“止损”,无法判断是ATR距离问题、结构识别问题,还是趋势信号本身质量下降。

参数优化的边界

ATR周期、ATR倍数和结构缓冲系数都可以优化。但优化目标必须受风险约束。

不建议只最大化净利润。可以使用综合目标:

  • 控制最大回撤。
  • 保持样本外收益。
  • 降低参数敏感性。
  • 限制连续亏损。
  • 保持不同品种之间的可迁移性。
  • 让交易成本变化不会立即摧毁策略。

参数优化的实际顺序可以简化为:

1. 先确定结构位定义。

2. 再确定ATR计算周期。

3. 再测试缓冲系数。

4. 最后测试仓位风险比例。

5. 进行样本外和滚动验证。

6. 加入滑点、手续费与成交限制。

7. 检查不同品种和不同波动阶段的稳定性。

不要先从收益曲线中挑选一个止损倍数,再反向解释它符合某种市场逻辑。那是结果驱动的叙事,不是模型设计。

商品期货不存在统一的最佳止损倍数。不同品种的波动率分布不同。相同品种在不同周期、不同合约阶段、不同交易时段,也会产生不同结果。

结论:止损不是价格预测,而是风险边界

ATR止损把止损距离转换为波动率单位。它可重复、易回测、适合仓位联动。但它存在统计滞后,也无法识别交易结构是否失效。

支撑位止损把退出条件绑定到价格结构。它更贴近交易逻辑,但结构识别存在主观性,且关键水平附近需要处理短时穿透。

两者的功能不同:

  • ATR负责测量波幅。
  • 支撑位负责定义失效。
  • 仓位管理负责限制账户损失。
  • 执行模型负责处理滑点、跳空和无法成交。

在商品期货中,较完整的止损框架通常是:

\[

\text{结构位}+\text{ATR缓冲区}+\text{风险比例仓位}

\]

缓冲区可以从0.5倍至1倍ATR开始测试。中短线ATR倍数可以从1.5倍至3倍建立参数区间。14周期是默认起点,不是最终答案。

最终参数不应由单次回测收益决定。应由样本外稳定性、回撤、成交偏差和跨波动阶段表现共同决定。

止损系统的目标不是避免所有亏损。那不可能实现。目标是让亏损具有预先定义的尺度,让模型在结构失效、波动扩大和执行偏差出现时仍然保持可计算。

相关阅读: ATR指标在股票止损中的动态应用:如何根据市场波动率调整保护性止损位.

常见问题

ATR止损和支撑位止损哪个更好?
两者解决的问题不同,不存在绝对优劣。ATR止损主要解决波动率变化带来的参数失配,而支撑位止损主要解决交易逻辑失效问题。
为什么支撑位止损容易被扫损?
支撑位附近常出现短时穿透或报价波动,若直接将止损设在支撑位上,缺乏足够的缓冲区,容易被市场噪音触发。
ATR止损的倍数应该设为多少?
中短线交易中,常见的倍数范围是1.5倍至3倍ATR。该范围仅为参数搜索区间,具体数值需根据品种、周期及策略回测稳定性来确定。
如何将ATR与支撑位结合使用?
可采用融合策略,即确定交易逻辑失效的结构位置后,在结构位外侧增加0.5至1倍ATR作为缓冲区,并据此重新计算仓位。
ATR止损是否包含方向信息?
不包含。ATR仅用于量化单位周期内的真实波幅,ATR上升仅代表波幅扩大,不能作为价格即将上涨或下跌的判断依据。