开发跨平台网格 EA 交易(第三部分): 使用马丁格尔的基于修正的网格·进阶篇
🧮

开发跨平台网格 EA 交易(第三部分): 使用马丁格尔的基于修正的网格·进阶篇

(2/3)·前作网格EA要么长期不盈利要么回撤失控,本篇用逆势加仓+双重止损试探安全盈利边界

含代码示例 第 2/3 篇
把网格和马丁格尔叠一起,很多人以为是点差问题导致爆仓,其实是风险开关从没定义清楚。没有按步数或权益阈值断网,账户会在几根柱子内被吞掉。先想清楚退出机制,再谈盈利。

◍ 盘整趋势通吃下的标的选择与M5测试框架

网格类 EA 理论上既能吃盘整也能跟趋势,所以测试池必须跨市场铺开:外汇选 USDCAD、NZDUSD,美股选 SBUX、XOM、INTC、CMCSA、PG。原文提到股市里通常只有 1–2 个标的跑不出利润,因此这里只挑 EA 历史表现最硬的标的进测试,不代表其余标的就废了。 所有测试统一跑在 M5 周期。作者反复验证后认为,这对网格 EA 是最合适的时段,更低周期噪音大、更高周期网格触发太稀疏。 外汇对回测区间为 2010–2019,先用「1 分钟 OHLC」模式搜参,把捞到的最佳参数再丢进「基于真实报价的每一报价」模式重跑确认。美股标的数据只能从 2013 拉到 2019,代理没有更久的历史,优化和终测同样用「每一报价」真实模式。 选最优结果不看裸收益,而是盯「余额」和「最大恢复系数」两个维度——后者直接关联回撤后的复原能力,对网格策略比峰值利润更实在。外汇贵金属高杠杆,真上 MT5 跑这套请先用策略测试器验证自己经纪商的真实点差与库存费。

顺着前一根柱方向开仓的回测表现

把入场逻辑锁死在「上一根指定周期柱的方向」上:当 EA 无持仓时,若所选周期前一根柱为多头则首单买,为空头则首单卖。这样天然顺着局部趋势跑,不预测反转。我们跑了 D1、W1、MN 三档,外汇覆盖 9 年、股票覆盖 6 年。 回测里最该盯的是「恢复系数」= 利润 / 最大回撤。USDCAD 在 D1 下恢复系数 8.12,年收益约 90%,最大回撤 948.76,利润因子 1.68,9 年共 3577 笔、年均 397 笔,最多持仓步数 8,2017.02 触发过全仓止损。NZDUSD 恢复系数 8.03、年收益 89%、回撤 1404、利润因子 1.91。 股票侧 CMCSA 用算术加仓,恢复系数 7.74、年收益 129%、利润因子 3.7,但 6 年才 281 笔,年均仅 46 笔。PG 在 2013.01、2013.09、2014.11、2018.04 多次触止损,说明链上加仓遇横盘仍会被打。外汇与贵金属杠杆高,回撤数字只是历史样本,实盘可能放大,请先在 MT5 策略测试器用相同周期复跑再上资金。 「止损」列不是普通 SL,而是达到 EA 设置的最大步数后对所有未结头寸统一退出。恢复系数要跨市场比时得除测试年限:外汇 9 年系数 9 ≈ 年利 100%,股票 6 年系数 9 ≈ 年利 150%,不能直接横比数值。

「只用 D1 均线周期做入场筛选」

均线是被用得最久的趋势参照之一,但在 EA 里没必要换周期折腾。回测显示,D1 柱上的 MA 对这套逻辑最稳,所以我们只调周期参数(30–54 区间),时间框架锁死在日线。 入场解释压到最薄:EA 空仓时,现价高于 MA 就开多,现价低于 MA 就开空,不叠任何其他条件。这种裸用方式反而跑出了可复制的结果。 几个标的值得直接拿去验证:USDCAD 恢复系数 7.18、年收益约 79%、利润因子 1.72,1861 笔成交里最大连亏步数 8;CMCSA 仅做多,恢复系数 12.26、年收益约 204%、利润因子 11.35,但年均仅 36 笔。股票端整体略好于前一根 bar 跟随法,外汇则更偏向第一种。 测试里没触发止损的品种,权益曲线就是一条单调向上的斜线——USDCAD、NZDUSD、SBUX、XOM、INTC、CMCSA、PG 均属此类。外汇与贵金属杠杆高、滑点跳空频繁,均线穿越信号只是概率倾向,实盘前请在 MT5 用相同周期重跑一遍样本外数据。

◍ 数根单向柱后反向摸拐点的实测表现

这套反向入场逻辑来自一场线下研讨:演讲者认为,价格沿同一方向连续走出若干根 K 线后,出现修正的概率会抬升,此时反向介入可能吃到回调。理论听上去顺,但得用 MT5 历史数据说话。 我们跑了柱周期(M5/M15/H1/H4/D1)与单向柱数量(3–7)的两维优化。USDCAD 在 H4 上最优:恢复系数 7.75,年化约 86%,最大回撤 575.26,利润因子 2.09,总交易 1123 笔;NZDUSD 在 H1 上年化 68%、总交易 3224 笔,但回撤放大到 1184.53。 股票类标的在 M15 更突出:CMCSA 恢复系数 10.04、年化 167%、利润因子 16.1,但总交易仅 97 笔;XOM 与 INTC 分别带 2013.08/2015.01/2015.08 的止损标记和 13 次止损记录,说明拐点假突破在窄周期里照样咬人。 外汇与贵金属属高杠杆品种,这类「N 根柱后反向」只是概率倾斜,不是拐点保险。开 MT5 把单向柱阈值从 5 调到 3 或 7,看恢复系数怎么跳,比听演讲实在。

顺N根同向柱追势入场的回测表现

前一篇测的是反向接飞刀,这一篇反过来:连续出现 N 根同方向柱之后,顺着方向追进去。逻辑上说得通——价格持续朝一个方向推,往往意味着一段趋势刚启动,与其逆着猜顶底,不如搭车。 入场规则和「跟前一根」类似,但硬性要求是至少 3 根同向柱,且这些柱的周期必须小于 D1。回测在 M15、H1、H4、D1 上跑,同向柱数 N 从 3 到 7 遍历,挑出各品种最优的一组。 外汇端差异明显:USDCAD 在 D1 上 N=7 时恢复系数 7.39、年化约 82%、最大回撤 63.77%、利润因子 4.25,120 笔交易里年均才 13 笔;NZDUSD 同样 D1,利润因子仅 1.66、年化 54%,但交易数 1504 笔年均 167 笔,回撤却飙到 546.01%。 股票那边画风不同:XOM 在 H4、N 区间跑出恢复系数 12.52、年化 208%、利润因子 2.92;PG 在 M15 上年化 171%、利润因子 2.21 但交易数 1444 笔。SBUX、INTC、CMCSA 也都在 M15 上给出恢复系数 7~9、年化 123%~155% 的区间,且部分标注了链中算术加仓的时段。 外汇与贵金属杠杆高、跳空频繁,这类追势策略在 D1 上交易稀疏、回撤可能翻倍,实盘前务必在 MT5 用「每笔固定手数」重跑一遍,别直接信恢复系数。

「无入场条件直接开仓的回测表现」

把四种首仓触发逻辑全部关掉,EA 只要检测不到在场持仓,就按设置方向立刻发单:多单未被禁就永远先多,多单禁了就永远先空。这等于把马丁格尔策略退化成纯趋势跟随加仓机。 回测覆盖 USDCAD、NZDUSD 及数只美股差价合约。USDCAD 恢复系数 7.92、年化约 88%、最大回撤 1236、利润因子 1.98、总交易 2484 笔;CMCSA 在链中使用算术加仓,恢复系数 8.85、年化 147%、利润因子 2.9,但最大回撤仅 48.59。NZDUSD 在 2011.10、2013.04、2013.10 触发过止损,PG 更出现 6 次止损记录。 即使零入场过滤,只要顺着宏观趋势跑,马丁格尔仍可能产生正期望,股票类标的几乎都体现在买入侧。外汇与贵金属属高风险品种,无过滤开仓会放大连错概率,实盘前务必在 MT5 用策略测试器复跑上述品种。 不过首仓若引入哪怕一层趋势或动量过滤,样本里多数品种的恢复系数与回撤比还有优化空间,后续可对比开启条件后的曲线。

把多品种断网判断交给小布
文中提到按账户权益一刀切会糊掉单品种亏损,这类跨品种净值的实时拆解小布盯盘已内置,打开对应品种页即可看到分步回撤与步数预警,你只管定阈值。

常见问题

账户净值混了所有品种持仓,单品种走到第N步你根本看不出来,所以本篇改用固定步数断网,每个符号独立认赔重来。
小布暂不直接托管EA,但能把文中所说的步数、逆向点数、整体利润平仓线做成品种页监控卡,异动时推给你,省去自己写日志。
每次回测结果都飘,且无法固化逻辑;文章后续测了前柱、MA、N柱反向等五种入场来替代随机。
会,总利触发后市价平网遇滑点可能吞掉部分利润,参数里留缓冲比硬卡阈值更稳。
前者确认短期惯性再跟,后者看均值转向;回测段显示两者在震荡市表现分化明显,完整数据见本文第5节。