分类
策略
难度
进阶
适用场景
策略设计MT5 操作风险管理

移动止损

移动止损是一种只朝盈利方向移动、绝不回退的止损。它把浮动盈利变成持仓下方的一道地板,于是决定离场时机的是价格的回撤幅度,而不是事先拍定的目标位。

亦称:追踪止损, 跟踪止损, 动态止损

更新于 · 审阅于

一句话讲清

一种跟着价格往上走、却绝不跟着往下退的止损。它给盈利单留出继续奔跑的空间,把离场位设在行情已经走过的价位上。和任何止损一样,它只是一个触发条件,遇到跳空仍可能以更差的价格成交。

为什么重要

固定目标位必须在谁也不知道行情能走多远的时候就定下来。移动止损把这个猜测换成一条规则:一直持有,直到市场收回既定的幅度为止。这条规则值多少钱,取决于一套策略的盈利单有多不均匀。

  • 它免去了预测行情幅度的需要——而这恰恰是固定目标位最不擅长的预测。
  • 它只朝一个方向收紧。会放松的移动止损等于把止损挪离价格,那会破坏支撑这笔持仓的风险计算。
  • 它的价值因策略而异。在这里实测的 24 份公开记录中,把每笔盈利单都截到该记录自身盈利单的中位数,有一份仍保留了毛利的 98.16%,另一份只剩 1.27%。

在 MetaTrader 5 中

在 MT5 的什么位置

  • 工具箱(Toolbox)→ 交易(Trade)→ 右键点击持仓 → 移动止损(Trailing Stop)——终端自带的功能,提供若干点数预设外加自定义数值
  • ⚠ 这个移动止损跑在终端里,不在服务器上。关闭 MetaTrader 它就不再移动,但它最后写入的那个止损位仍然有效
  • 策略测试器(Strategy Tester)→ 输入参数(Inputs)——EA 的追踪距离与启动阈值都是输入参数,这一对参数很容易过拟合

EA 如何使用它

  • 每次运行时,EA 会根据当前价格算出一个候选止损位,只有当它优于当前生效的止损位时才发送。
  • 很多实现会等待一个启动阈值,通常是一倍止损距离的浮盈,这样第一个有利方向的跳动就不会把止损拖到保本位。
  • 只在 K 线收盘时追踪,而不是每个跳动都追踪,可以大幅减少修改订单的次数,而结果通常几乎不变。

常见设置

设置项 常见取值 备注
追踪距离(ATR) 2–3 × ATR(14) 低于大约 1.5 × ATR,移动止损就落在普通回撤范围之内,会过早结束趋势单。
启动阈值 浮盈达到 1 倍止损距离之后 防止交易还没走出任何行情,移动止损就把止损拉到保本位。
步长(最小改进幅度) 5–10 pips 没有步长,EA 几乎每个跳动都会修改订单,而经纪商会对此限流。
更新频率 每根 K 线收盘时一次 逐跳动追踪会让请求量成倍增加,却极少改善结果。

常见运行问题

  • 发送过于频繁的修改会被拒绝或限流,此时移动止损会悄无声息地落后于价格。
  • 追踪距离短于该品种的止损位限制(stops level)时,每次发送都会被拒绝,止损因此一步也推不动。
  • 跳空越过移动止损的方式,和越过固定止损一模一样。那个价位是触发条件,不是对成交价的承诺。

相关 MT5 函数

CTrade::PositionModify(ticket, sl, tp)
每一次追踪都要经过的调用——每推进一步就是一次修改。
PositionGetDouble(POSITION_SL)
当前生效的止损位,候选止损必须先胜过它才会被发送。
SymbolInfoInteger(symbol, SYMBOL_TRADE_FREEZE_LEVEL)
在这个距离之内,持仓根本无法被修改。

示例

在 1.0800 建立多单,移动止损 20 点。止损跟随最高点推进且绝不后退,于是由回撤来挑选离场位。

入场
1.0800
价格上涨至
1.0850
止损移到 1.0830。
价格上涨至
1.0880
止损移到 1.0860,并且不会退回。
价格回撤,交易平仓于
1.0860
80 点的行进幅度中留下 60 点。

如果用 40 点的固定目标,会在 1.0840 结束。两者是对行情能走多远下了不同的赌注。

计算 1.0880 − 20 pips = 1.0860

结果 保住 60 点,交回 20 点——这就是不去预测顶部的代价

怎么使用

移动止损夹在两种代价之间。太紧,趋势提前结束;太松,行情的大部分会被交回去。距离就是全部的决策。

区间 含义
追踪距离低于约 1.5 × ATR 普通回撤就会把持仓打掉,策略因此永远吃不到大行情。
追踪距离为 2–3 × ATR 趋势策略常用的工作区间:位于噪音之外,又近到足以守住行情的大部分。
追踪距离宽于目前已经走出的幅度 止损仍在入场价后方,因此在它被触发之前,全部浮盈都可能被交回去。
没有阈值,从第一个跳动就开始追踪 立刻把止损拉到保本位,把正常波动变成一堆平本单。
  • 在争论距离之前,先量一量自己的盈利单有多不均匀。如果最大的十分之一盈利单所占的毛利份额,只比按比例应得的十分之一多出一点点,那移动止损几乎没有什么可守的。
  • 追踪距离要单独做样本外验证。距离与启动阈值凑在一起,留下了拟合噪音的空间。

上架 EA 的离场是采用移动止损还是固定目标,写在它的策略说明里,而公开的成交台账显示这些离场实际实现了什么。本页每一个实测数字都来自那些台账(EXP-EXIT-SHAPE-001),以平仓交易为口径。

常见误区

追得太紧,任何趋势都活不下来

落在普通回撤之内的移动止损,会把趋势策略变成一套披着趋势策略入场规则的剥头皮打法。胜率上升,平均盈利崩塌;而对于依赖最大几笔盈利单的策略,期望值通常也跟着一起崩。

以为移动止损能防跳空

它和其他止损一样,只是一个触发价格。周末或消息面的跳空穿过这个价位时,持仓会以下一个可成交的价格平掉。

从盈利分布不同的策略照搬追踪距离

这里实测的 24 份记录,在把盈利单截到各自盈利单中位数之后,保留的毛利从 1.27% 到 98.16% 不等。同一条规则,结果截然相反。

把追踪距离优化到回测的最优值

那个距离是拟合某一段历史的回撤得来的。一个在相邻参数上都能存活的数值,比一根窄峰的顶点有价值得多。

深入说明

在 MT5 里怎么设,以及关掉终端后什么会停

MetaTrader 自带的移动止损是一项终端功能,不是经纪商替你保管的订单。

  1. 打开工具箱(Toolbox)→ 交易(Trade),右键点击持仓,选择移动止损 (Trailing Stop)。
  2. 选一个点数预设,或用自定义(Custom)手动输入距离。(None)可以 再把它关掉。
  3. 每一步推进都是一次真实的订单修改,因此该品种的止损位限制与冻结距离依然全部 适用。
  4. 让终端保持运行。关闭 MetaTrader 后,它最后写入的止损仍在服务器上生效,但 追踪不会再往前推进。

第 4 步是那种看起来像成功的失败。持仓上依旧挂着止损,图表上依旧画着那条线, 也没有任何地方报错。EA 自己写的追踪代码也存在同样的依赖。

24 份公开台账揭示的离场形态

每个上架页面都附有它的平仓交易清单,因此每一次离场的距离和它产生的金额都可以 直接读出来——总共 17,357 笔交易。

测量项(24 份记录,17,357 笔平仓交易)中位数区间或数量
在入场价反方向平掉的离场:距离落在该品种中位数 ±2% 以内83.78%24 份中有 17 份超过 50%
在有利方向平掉的离场:同一区间26.30%24 份中有 7 份超过 50%
最大十分之一盈利单占毛利的份额25.64%11.85% 至 34.08%
单笔最大盈利单占毛利的份额1.17%最高 4.89%
把盈利单截到盈利单中位数后保留的毛利62.83%1.27% 至 98.16%
同一算法,截到盈利单中位数的两倍84.76%

关于距离的这两行并不对称,而且这种不对称只朝一个方向倾斜。没有任何一份记录在 重复自己盈利一侧距离的同时不重复亏损一侧的距离,反过来的却有十份:固定止损配 上一个落点四处散开的盈利侧。尾部也比趋势圈子里的传说更薄。单笔最大盈利单最多 只占一份记录毛利的 4.89%,所以这里的毛利是分散在许多笔盈利单上的,而不是压在 某一笔身上。

这种形态可以和每个上架页面自己声明的做法相互对照。有六份记录在公开的策略说明 中声明使用追踪式离场,而这六份全部落在离散的那一组里——它们盈利一侧的距离聚集 在中位数 2.06%,最高的一份是 38.35%,没有一份达到 50%。其余十八份的中位数是 35.03%,其中七份超过 50%。

相关术语与接下来该读什么

先量一量盈利单的不均匀程度,再去挑距离。 平均真实波幅提供了尺度, 波动率告诉你这把尺子是否还与当初调参时的那把 一致,而参数优化讲的正是 一个追踪距离必须通过的相邻取值检验。

常见问题

EA 的移动止损距离设多少合适?
对趋势策略而言,2 到 3 倍 ATR 是常用的工作区间:位于普通回撤之外,又近到足以守住行情的大部分。低于约 1.5 倍 ATR,移动止损会在正常波动中就把交易平掉,抹掉了这套策略本来要捕捉的那些延展趋势。
关掉 MetaTrader 之后移动止损还有效吗?
已经挂上的止损位仍然有效,因为它位于经纪商的服务器上。追踪这个动作则不然:终端自带的移动止损和 EA 里的追踪代码,都需要终端保持运行才能发出下一次修改。这正是无人值守的 EA 要托管在 VPS 上的原因。
移动止损比固定止盈更好吗?
只有对那些盈利单没有天然离场位的策略才更好。趋势跟踪会受益,因为行情的幅度事先无法得知。均值回归通常不会:价格本就预期会回到某个特定价位,越过它继续持有只会把盈利交回去。
我的移动止损为什么不动了?
通常是止损已经进入经纪商规定的最小距离之内,或者持仓落在冻结距离(freeze level)之内、修改被拒绝。请求被限流时,从外面看是一样的——移动止损是落后于价格,而不是停住了。
怎么判断到底值不值得加移动止损?
把盈利单按大小排序,看最大的十分之一对毛利的贡献有多少。在这里实测的 24 份记录中,那十分之一承担的中位数是 25.64%,大约是一组大小均匀的盈利单本该占有份额的两倍半。如果它接近自己那份均等份额,说明盈利单本来就很均匀,没有多少尾部可守。