首页 / 交易学院 / 小布知识库 / ATC高手访谈:简易策略制胜之道
ATC高手访谈:简易策略制胜之道
🤖

ATC高手访谈:简易策略制胜之道

从2007到2011,Moraru的EA开发心得与误区

MQL5开发 难度 · 进阶 2026-01-23 5 分钟阅读
#MQL5#EA开发#ATC#策略测试

受访者背景与访谈缘起

Andrei Moraru(社区ID:enivid)是一名来自乌克兰的程序员,自2007年起便是MQL社区与自动交易锦标赛(ATC)的活跃参与者。在2007年他曾接受过采访,当时刚起步研发交易策略。四年后的2011年,他再次进入社区视野,不仅持续输出外汇与EA相关的博客内容,还带着全新设计的Expert Advisor参加ATC 2011。本次访谈旨在了解他四年间交易观念的变化、对MQL5的适应情况,以及新EA的设计思路,对中文交易者理解‘从复杂到简单’的EA进化路径极具参考价值。

四年间的交易理念转变

Moraru明确指出,自上次访谈后他尝试了大量复杂与简单的策略,最终更倾向于简单策略。他减少使用技术指标作为信号发生器,将更多注意力放在头寸规模(position volume)管理上。他认为,基于海量统计数据的复杂系统仅具理论趣味,实盘效率低下;而简单、直观的系统在EA自动化交易中更为可靠。不过他也强调,手动交易时基本面分析依然非常重要。这一转变对许多沉迷‘完美模型’的中文开发者是一记警钟:过度拟合的复杂系统往往经不起实时行情检验。

✦ 经验提示
若你正构建EA,先问自己:策略逻辑能否用三句话讲清?若不能,大概率已陷入复杂度陷阱。

从MQL4到MQL5的切换体验

Moraru承认初学MQL5时因基础语法差异存在困难,但整体不难掌握。他指出MQL5的痛点在于‘使用时需记忆大量细节’,语言与IDE均未显著减轻开发负担。不过优势明显:借助类(classes)可轻松编写多货币策略,借助颜色缓冲区(color buffers)可更便捷地开发某些指标类型。对于中文用户,MQL5的面向对象特性虽增加入门成本,却是编写模块化、易维护EA的必经之路。建议从官方MQL5参考文档(https://www.mql5.com/files/pdf/mql5.pdf)系统学习。

新EA的设计与参数结构

2011年参赛EA相较前作极为精简:采用‘逆前仓方向开仓’的最简入场系统,首仓方向手动指定;使用固定手数并与前三次参赛EA不同,引入了追踪止损(trailing stop)。该EA仅用ATR一个指标来确定追踪止损幅度。参数方面,每货币对7个参数加1个全局参数,仅3个可优化。这种极简设计降低了过拟合概率,也便于实盘监控。对于想参加类似竞赛或实盘的中文交易者,先控制变量数再谈优化,才是稳健起点。

// 示例:基于ATR的追踪止损片段(概念演示)
double atr = iATR(Symbol(), PERIOD_CURRENT, 14, 0);
if(position_profit > 0){
   double new_sl = SymbolInfoDouble(Symbol(), SYMBOL_BID) - atr * 2;
   trade.PositionModify(position_ticket, new_sl, 0);
}

策略测试器的价值与陷阱

Moraru高度评价MetaTrader 5策略测试器,称其为MT5核心优势;其EA在demo前向测试与回测偏差极小。但他警告:用测试器做优化易致曲线拟合(curve-fitting),超级优化EA在真实账户常意外亏损。此外,多货币策略测试仍不透明,即便遵循官方建议,切换货币对设置仍存差异。中文开发者常误把‘回测优美’当‘实盘可行’,必须结合样本外与实盘小资金验证。

⚠ 常见坑
切勿将优化后的最大收益曲线直接用于实盘;请保留至少1/3样本外数据,并做前向测试。

分享动机与实盘计划

Moraru习惯分享自认有价值的MQL4/5作品,借社区反馈完善代码,也视作对使用他人成果的回馈。该EA赛前已在demo运行八月,温和资金管理下表现良好;他计划次年完善资金管理后上实盘,但明确提醒他人勿盲目跟用,因亏损风险真实存在。这反映出负责任开发者的态度:公开不等于荐股,策略需匹配个人风险承受。

成功公式的增补与竞赛收获

2007年他提出‘胜任的资金管理+稳定预测进出点’;2011年他补充经典原则‘截断亏损,让利润奔跑’,指出许多交易者低估此简单铁律。关于ATC价值:赛前严苛自动测试锤炼极限编程;赛中交流与分析对手EA最具启发;赛后复盘成败策略收益大。他本人从领跑者VNIK的多策略切换、以及金字塔加仓(pyramiding)威力中获得新灵感,纠正了‘多策略切换低效’的偏见。中文用户参与社区竞赛,重点不在名次,而在逼自己写出鲁棒系统。

常见问题

MQL5通过类(classes)简化多货币策略编写,通过颜色缓冲区便于特殊指标开发;策略测试器回测质量高。但需记忆较多细节,建议从官方PDF文档系统学习。
因为参数优化易产生曲线拟合,使EA仅贴合历史样本。应保留样本外数据、做前向测试,并以demo小资金验证后再实盘。
可行。如Moraru的2011 EA仅用ATR定追踪止损,配合逆前仓方向开仓与固定手数,反而降低过拟合。重点在逻辑简洁与资金管理。
初期因语法基础差异有难度,但语言本身不复杂;难点在开发时需记大量API。多写多货币类模板可加速适应。