Summary: EA挂在MT5图表上却不交易?本文提供完整调试流程:检查EA图标是否激活、全局自动交易按钮是否开启、从Journal日志定位错误,并逐一解决Invalid Stops、资金不足等常见运行时错误。
步骤1:检查图表上的EA图标状态
查看挂载EA的图表右上角。如果图标是灰色(未激活)而不是蓝色(已激活),双击图表上的EA,进入“通用”选项卡,勾选“允许算法交易”和“允许实盘交易”,点击确定。截图位置:通用选项卡中两个选项均已勾选 [citation:3]。
步骤2:检查全局自动交易按钮
查看MT5顶部工具栏,找到“自动交易”按钮(机器人图标)。如果按钮上有一个红叉或被划掉,点击它以启用。无论单个EA如何设置,这个总开关必须打开才能交易。截图位置:顶部工具栏中高亮显示的自动交易按钮 [citation:3]。
步骤3:打开Journal日志选项卡定位错误
按Ctrl+T打开“工具箱”窗口,然后点击“Journal”(日志)选项卡。这里记录了MT5所有的交易尝试、警告和错误信息。寻找红色的错误消息,这些消息会直接告诉你EA不交易的原因。截图位置:Journal选项卡中显示红色错误信息 [citation:3]。
步骤4:解决“Invalid Stops”(无效止损)错误
如果你看到“Invalid stops”或“Error 130”,说明EA尝试设置的止损或止盈距离当前市场价格太近。每个经纪商都有最小距离要求。在EA参数中加大止损/止盈距离。你也可以打开手动下单窗口,查看经纪商的最小止损距离。截图位置:显示最小止损距离的下单窗口 [citation:3]。
步骤5:解决“Not Enough Money”(资金不足)错误
如果你看到“Not enough money”或“保证金不足”,说明账户余额或可用保证金不足以开立该手数的订单。在EA设置中降低手数、降低每笔交易的风险、平掉其他持仓,或者增加模拟账户余额。截图位置:EA输入参数中圈出手数设置区域 [citation:3]。
步骤6:解决“Market Closed”(市场关闭)错误
如果你看到“Market closed”,说明EA尝试在非活跃交易时段下单。这通常发生在周末、节假日,或者经纪商的交易时段之外。为你的EA策略添加时段过滤功能,或者只在活跃交易时段运行EA。截图位置:Journal选项卡中的Market Closed错误信息 [citation:3]。
步骤7:解决“Trade Context Busy”(交易上下文繁忙)错误
如果你看到“Trade context busy”,说明EA同时或过快发送了多个交易请求。这通常发生在“每次报价时运行”触发频率过高的情况下。在交易尝试之间添加一个小延迟,或使用“计数订单”过滤器来防止重复下单。截图位置:Trade context busy错误示例 [citation:3]。
步骤8:使用可视化模式进行深度调试
如果错误原因不明显,请在可视化模式下运行回测(策略测试器 → 可视化模式)。Journal日志会显示在图表旁边,你可以逐步观察价格走势、订单执行和EA逻辑。这是理解EA运行情况的最佳方式。截图位置:可视化模式下Journal面板可见的界面 [citation:3]。
参考来源: MetaQuotes官方帮助 - EA交易调试指南,Profectus.AI错误代码文档