r/Forexstrategy 上有个帖子,原话是这样:「我花了大概 11 个小时,在 Grok、ChatGPT 和付费版 Claude 之间来回踢代码,反复重写一个在 MT5 里死活编译不过的 EA。」
底下一堆人接话,因为大家都干过同一件事:2026 年了,AI 这么强,写个交易机器人不就是一句话的事?于是你打开 ChatGPT,输入"帮我写一个 RSI 超卖买入的 MT5 EA",满怀期待地复制进 MetaEditor,按下编译——然后看着一屏幕红色报错。
这篇就讲清楚一件事:AI 到底能不能帮你写 EA。结论先放这儿,省得你也去耗那 11 个小时。
30 秒版答案:能写代码,写不出会赚钱的代码。AI 能把一个策略翻译成能编译的 MQL5,但它没法告诉你这个策略到底有没有真实优势——而后者才是 EA 值不值钱的全部。它写得出语法,写不出 edge。
第一关:它真能写出能跑的 EA 吗?
能,但"一句话十分钟搞定"是教程骗你的。
有人做过一次完整实测(<a href="https://www.mql5.com/en/blogs/post/770331" target="_blank" rel="noopener">mql5.com 上的公开记录</a>,注意这是单个开发者的自述,不是统计结论):让 ChatGPT 写一个 MT5 的 EA,从第一次粘贴代码到真正编译通过,花了约 35 分钟、改了 3 轮。第一次编译报错一屏,典型的几类:
- 算持仓数量的函数里用了没声明的变量
- RSI 调用用的是 MQL4 式的参数写法,在 MQL5 里不适用(MQL5 的
iRSI返回的是指标句柄,得再用CopyBuffer取值) - 订单代码块少了个分号
- 手数计算有隐式类型转换警告
- 用了
AccountFreeMargin这种在 MQL5 里根本不存在的函数——它是 MQL4 的(MQL5 要用AccountInfoDouble(ACCOUNT_MARGIN_FREE))
最后这条是病根。MQL4 和 MQL5 是两套语言,函数名、写法都有差异,而 AI 的训练数据里两者混在一起。它生成代码时是在"猜"——有时猜对,经常猜错,然后把 MT4 的语法塞进你的 MT5 文件里。
我们团队天天写 MQL5,这些坑太熟了。AI 在这一关的真实水平是:给懂 MQL5 的人当加速器很好用——写样板、补注释、一行行帮你 debug 报错(注意是一行行,你要是把一屏报错一次性全甩给它,它会越改越乱)。但给完全不懂的人,它就是个会自信地写出错误代码的工具。论坛上那句吐槽很到位:"AI 生成的代码烂得很,但你一行一行喂给它改,它干得还不错。"
所以第一关的真相:能过,但前提是你已经看得懂代码。看不懂的话,那 11 个小时就是你的了。
第二关:编译通过了,它能赚钱吗?
不能。而且这一关,再多的耐心也救不了你。
还是那个实测,编译通过之后:12 个月回测,亏 4.2%,87 笔交易;不死心,拿 200 美元上真实账户跑了 6 周,亏 9.4%(同样是上面那篇单例记录里的数字)。亏在哪?点差被低估、滑点没算、broker 后缀没处理对、新闻波动直接打穿——这些实盘细节,你要是不明确要求,AI 写代码时常常不会替你完整处理。
但这还不是最根本的问题。最根本的是一句话,值得你记住:
你让 AI 写一个烂策略,它会忠实地帮你实现一个烂策略。
ChatGPT 不会拦着你。你说"RSI 低于 30 就买",它就给你写一个 RSI 低于 30 就买的 EA,写得工工整整。但它根本没法告诉你"RSI 低于 30 就买"这件事到底赚不赚钱——这需要的是交易经验,不是写代码的能力。而决定一个 EA 值不值得存在的,恰恰就是这个判断。
ForexFactory 上有个更典型的<a href="https://www.forexfactory.com/thread/1359724" target="_blank" rel="noopener">案例</a>:有人用 ChatGPT 4/5 加 Claude,每天搞至少 2 个小时,连着干了一个月,他自己形容需要"绝对的死磕精神"。最后成果呢?EA"能跑,但不赚钱"。
一个月的死磕,换来一个"能跑但不赚钱"的东西。这不是 AI 不够强,是你让它做了一件它做不到的事。
第三关:为什么 AI 写的 EA 注定要骗你?
就算你运气好,回测曲线很漂亮——别高兴太早,这里有两个 AI 特别容易踩、而你又看不出来的坑。
坑一:前视偏差(look-ahead bias)。 说人话就是:回测代码偷看了未来。让大模型从零写回测,特别容易写出这种 bug,必须人工逐行核对"信号生成的时间"和"成交的时间"。为什么 AI 特别容易犯?因为它倾向于用上数据表里所有能拿到的数据,包括那些在做决策那一刻其实还不存在的数据。最经典的版本:用当根 K 线的收盘价生成信号,却假设能在这同一根 K 线内成交——可现实里,这根 K 线的收盘价要等它收完才知道,你下单时根本拿不到。回测里你"赚翻了",实盘里那个价不存在。(注意:如果是用收盘价生成信号、等下一根 K 线开盘再成交,那是合法的,不算偏差——区别就在成交时间。)
坑二:过拟合。 统计学上有个经典结论:拿一组纯随机生成的数据(里面根本没有任何规律),只要给的参数足够多、反复筛选得足够狠,照样能筛出一个回测盈利的"策略"。换句话说,单独一条漂亮的回测曲线不足以证明真实优势——它可能只是你(或 AI)在噪音里硬抠出来的巧合。要排除这种巧合,得靠样本外测试、walk-forward、算上真实成本,而不是看回测那条线有多漂亮。
r/algotrading 上有句话,是无数人亏完钱之后的总结,特别戳:
「很多人最后才明白,他们交易的根本不是策略,是回测。」
AI 会让这个陷阱更深,因为它能在几秒钟内给你生成一个回测漂亮的 EA,快到你来不及怀疑。配上那句老经验法则——"回测里看到的回撤,实盘按 2-3 倍预估"——你就明白为什么一个 AI 写的、回测翻倍的 EA,上了实盘往往血亏。
那些"AI 写的 EA 七年盈利 331%"是怎么回事?
你搜 AI EA 的时候肯定见过这种话术:某某 AI 生成的 EA,7 年回报 331%、胜率 65.9%、盈利因子 1.51……数字精确得不得了。
先别急着否定,但要会查。这种话术的问题不在数字本身,而在能不能核实:
- 这类亮眼数字,很多是回测结果——而回测可以靠过拟合和前视偏差造出任何曲线,所以光看曲线说明不了问题;
- 就算页面声称是"verified 实盘信号",也要看它有没有给出公开、可点击、能让你独立核对的链接(Myfxbook、FXBlue、MQL5 Signals 这类都行)——只甩几张截图、没有可点开的链接,就不足以采信;
- "AI 驱动"这个标签,很多交易者已经把它当成需要额外警惕的营销词了——真正靠谱的人聊 EA,第一句问的是实盘记录,不是 AI 含量。
所以下次见到"AI 智能 EA 7 年 331%",你的第一反应不该是心动,而该是问一句:"有没有公开可点开的实盘链接?是实盘还是回测?"——光这一个问题就能筛掉一大批。怎么系统地识别 EA 骗局,我们在<a href="/zh/classroom/ea-scam-red-flags">EA 骗局识别</a>里写过完整清单。
AI 到底该用来干嘛?
别误会,我们不是说 AI 没用——我们团队自己每天都在用 AI 辅助开发。关键是用对地方:
适合让 AI 做的: 把你已经想清楚的策略逻辑翻译成 MQL5、写重复的样板代码、一行行帮你 debug 编译错误、给代码加注释、批量改参数。这些都是"执行层"的活,AI 是很好的加速器。
别指望 AI 做的: 设计策略、判断一个策略有没有真实优势、保证盈利、独立帮你做可信的回测。这些是"判断层"的活,需要的是真金白银砸出来的交易经验。
一句话:AI 是给懂行的人加速的,不是给小白发牌的。 你越懂交易和 MQL5,AI 对你越有用;你越是想"用 AI 绕过学习",它就越会用一个编译不过、或者回测骗你的 EA 把那 11 个小时还给你。怎么判断一个策略值不值得写成 EA,<a href="/zh/classroom/how-to-choose-ea">选 EA 指南</a>里有思路;想自己回测验证的话,先读<a href="/zh/classroom/ea-backtest-guide">回测指南</a>,至少别掉进前视偏差的坑。
所以,自己写还是直接买?
回到最开始那个问题。AI 帮不了你的,恰恰是整件事里最难的那部分——验证一个策略到底有没有真实优势。
而验证优势只有一个办法:看它在真实资金、足够长的时间、可独立核对的记录上跑成什么样。这也正好回答了交易圈那个最尖锐的质疑——"真能赚钱的系统,凭什么卖给你?"
答案不在于代码是谁写的(你写、AI 写、还是开发者写,都不重要),而在于这套逻辑有没有用真钱在 Myfxbook 上公开跑过足够久。一个挂着两年实盘验证记录的 EA,和一个 ChatGPT 十分钟生成、回测漂亮的 EA,差的不是代码质量,是"被现实检验过"这四个字。
所以与其花 11 个小时调一个大概率编译不过、就算跑起来回测也在骗你的 EA,更划算的做法是:直接去看那些有可验证实盘记录的成品——把"买 EA"这件事,重新理解成"买一段被真钱验证过的优势"。<a href="/zh/products">FXTool 的 EA</a> 我们都在实盘账户上跑、公开结果,挑的时候第一眼看实盘记录和回撤,而不是看谁的宣传词里 AI 含量更高。
常见问题
ChatGPT 能写 MT4/MT5 的 EA 吗?
能写出代码,但首次编译经常报错、通常要多轮调试,而且容易把 MQL4 和 MQL5 的语法混用(比如用 MQL5 里不存在的 AccountFreeMargin)。适合已经懂 MQL5 的人当加速工具,不适合零基础的人指望它一步到位。
AI 写的 EA 能盈利吗? 能编译 ≠ 能盈利。AI 会忠实地实现你给的策略,但它无法判断这个策略本身有没有优势。公开的实测案例里,AI 生成的 EA 回测和实盘都是亏损的。真正决定盈亏的是策略本身,不是写代码的工具。
为什么 AI 写的 EA 回测好看,实盘就亏? 两个原因:一是前视偏差,AI 写的回测代码容易偷用未来数据(比如用收盘价算当天信号);二是过拟合,参数够多时连随机数据都能"回测盈利"。再加上 AI 默认忽略点差、滑点、新闻波动,实盘自然比回测差。
用 AI 学写 EA 值得吗? 作为学习工具值得——它能帮你快速看到代码长什么样、debug 报错。但别把它当成"绕过学习交易"的捷径。AI 给懂行的人加速,不会替你建立交易判断力。
"AI 智能 EA 七年盈利 331%"是真的吗? 不能直接说真或假,但要会核实:除非它给出公开、可点击、能独立核对的实盘链接(Myfxbook、FXBlue、MQL5 Signals 等,不是截图),否则不足以采信。这类数字很多来自可造假的回测,而"AI 驱动"在交易圈里已经是个需要额外警惕的营销词。
总结
- AI 能写出能编译的 MQL5,但首次经常报错、常混用 MQL4 语法,需要你看得懂代码
- 编译通过 ≠ 能赚钱——AI 会忠实实现一个烂策略,它判断不了策略有没有优势
- AI 写的回测特别容易有前视偏差和过拟合,回测好看实盘亏是常态
- "AI EA 七年 331%"这类话术基本是假的,认准可验证的 Myfxbook 实盘链接
- AI 是给懂行的人加速的工具,不是绕过学习的捷径;买 EA 的本质是买"被真钱验证过的优势",不是买代码
想挑一个看实盘记录而不是看宣传词的 EA,从<a href="/zh/classroom/how-to-choose-ea">选 EA 指南</a>开始;想识别那些 AI 噱头骗局,看<a href="/zh/classroom/ea-scam-red-flags">EA 骗局识别</a>。
风险提示:外汇和差价合约交易使用杠杆,存在重大亏损风险,可能损失全部本金。本文为 EA 开发与选择的教学内容,不构成投资建议。文中引用的第三方实测数据来自公开来源,仅供参考。
关于作者:FXTool 团队每天都在开发和测试 MetaTrader 交易工具。我们在实盘账户上运行每一款上架的 EA,并公开结果。本文来自我们开发 50+ 款 EA、服务数千名交易者的实战经验。