昨晚跑一个欧美M15的均值回归EA,同一套参数、同一段历史数据,在MT5测试器里勾选和不勾选那个点差随机化,结果让我有点意外:不勾的时候净利润曲线平滑得像人造的,勾上之后最大回撤直接从8.2%窜到14.7%,最终收益缩水了将近四成。我当时盯着报告愣了几秒,才想起来这个选项默认是关着的,很多人压根没注意过它。
先说清楚这个选项在哪儿。MT5策略测试器里,点差设置那一栏,选“自定义”之后下面会多出一个“点差随机化”的勾选框,旁边还能填一个波动范围。它的作用不是简单地把固定点差换成一个随机数,而是按照你设定的区间去模拟真实市场中点差的动态变化——比如欧美盘交接时点差会从1.2个点扩到2.5甚至3个点,非农那几分钟更夸张。说白了,它是在回测里复现流动性波动的混沌感。
那到底该不该勾?我的结论是:看你的EA交易频率和持仓周期,不能一刀切。
具体我平时怎么设?以欧美为例,我的经纪商平均点差1.4,非农能到4.0我在测试器里会这么填:
踩过的坑也说一个。有次我偷懒,把波动范围设成
还有个细节容易忽略:MT5的随机化是在每笔订单成交时重新抽样的,不是按bar抽。这意味着同一根K线里如果你有加仓或者分批进场,每笔单子的点差可能都不一样,这更接近实盘但也会让回测结果波动更大。如果你EA有网格或者马丁成分,勾上之后一定要多看几个不同随机种子的结果,别只看一次。
最后说个心态上的事。勾上点差随机化之后,回测收益大概率会比你预期的低一截,曲线也没那么好看。但这不是EA变差了,是你的预期终于落地了。回测里虚高的那部分利润,实盘迟早会从你账户里扣走。
你们平时跑测试器的时候,这个选项是默认勾上还是关着的?有没有人试过同一个EA在不同随机种子下表现差异特别大的情况,贴图聊聊。
补充一句:那个随机化范围别填太大,我一开始设太宽,结果回测出来的曲线跟实盘完全是两回事,后来收窄到跟平时观察到的点差波动差不多才靠谱。
先说清楚这个选项在哪儿。MT5策略测试器里,点差设置那一栏,选“自定义”之后下面会多出一个“点差随机化”的勾选框,旁边还能填一个波动范围。它的作用不是简单地把固定点差换成一个随机数,而是按照你设定的区间去模拟真实市场中点差的动态变化——比如欧美盘交接时点差会从1.2个点扩到2.5甚至3个点,非农那几分钟更夸张。说白了,它是在回测里复现流动性波动的混沌感。
那到底该不该勾?我的结论是:看你的EA交易频率和持仓周期,不能一刀切。
- 如果你做的是日内高频剥头皮,持仓几分钟到半小时,那必须勾。不勾的话回测等于在告诉你“点差永远1.2”,实盘一遇到点差扩到2.5,你那几个点的利润直接归零。我去年有个镑美 scalp EA就是这么被坑的,回测夏普1.8,实盘跑了三周亏了6%。
- 如果你做的是H1级别的趋势跟踪,持仓几小时到几天,点差波动对单笔盈亏影响不到总利润的5%,勾不勾差别不大,但勾上更稳妥,至少心理预期不会跑偏。
- 如果你纯粹想对比两套参数哪个“理论最优”,可以先不勾,把固定点差设成经纪商的平均点差再加0.3个点做保守估计,快速筛一遍,然后再对入围的参数勾上随机化复测。
具体我平时怎么设?以欧美为例,我的经纪商平均点差1.4,非农能到4.0我在测试器里会这么填:
- 自定义点差填1.4
- 随机化波动范围填1.0,也就是点差在1.4到2.4之间浮动
- 如果是黄金,平均点差2.8,波动范围我会拉到1.5甚至2.0,因为黄金的点差弹性比欧美大得多
踩过的坑也说一个。有次我偷懒,把波动范围设成
5.0,想“模拟极端行情”,结果回测出来全是亏损单,我差点把EA删了。后来才反应过来,范围设太大等于每次开仓都在最差点差上成交,这不符合统计分布,真实市场里高点差只是尾部事件,不是常态。所以波动范围别超过平均点差的1.5倍,这是我自己的经验阈值。还有个细节容易忽略:MT5的随机化是在每笔订单成交时重新抽样的,不是按bar抽。这意味着同一根K线里如果你有加仓或者分批进场,每笔单子的点差可能都不一样,这更接近实盘但也会让回测结果波动更大。如果你EA有网格或者马丁成分,勾上之后一定要多看几个不同随机种子的结果,别只看一次。
最后说个心态上的事。勾上点差随机化之后,回测收益大概率会比你预期的低一截,曲线也没那么好看。但这不是EA变差了,是你的预期终于落地了。回测里虚高的那部分利润,实盘迟早会从你账户里扣走。
你们平时跑测试器的时候,这个选项是默认勾上还是关着的?有没有人试过同一个EA在不同随机种子下表现差异特别大的情况,贴图聊聊。
补充一句:那个随机化范围别填太大,我一开始设太宽,结果回测出来的曲线跟实盘完全是两回事,后来收窄到跟平时观察到的点差波动差不多才靠谱。
