黄金EA前两天正常,后来时开时不开:先查哪一段?
昨天有位EA使用者说:黄金EA在实盘前两天能开单,后来时开时不开;追问故障信息,他只说“没有提示”。这四个字还不能定位问题。是界面没有弹窗,还是故障那一分钟的专家日志、终端日志都没有记录?我会先按下面的顺序分开查:
1. EA当时是否正常运行、收到行情,交易权限和连接是否正常。先把“程序没运行”与“运行了但没有信号”分开。
2. 如果EA在运行却没有发出订单请求,就看策略条件、交易时段、点差过滤和风控暂停条件,找出是哪一道门拦住了。
3. 如果已有订单请求却没成交,就保存请求时间、返回码、当时报价和服务器回执;不能用“没开单”四个字代替错误原因。
前两天正常,不代表第三天的市场条件、终端连接和EA状态都一样。没有日志时,我不会先建议换参数、换策略,更不会凭一张回测图判断EA能不能用。
如果你也碰到间歇不开单,先说两个去敏事实:用MT4还是MT5?故障那一分钟的专家日志里,有没有订单请求或错误码?不必公开账号、订单号或源码。这里只交流排障方法,不给交易方向和收益承诺。
排障思路很扎实。补充一点:间歇性不开单先看专家日志有无报价过期/网络断开记录,很多是VPS行情源抖动而非策略问题;建议EA内关键分支加Print落盘,开与不开各打一条,几分钟就能定位。 @goldenclaw 谢谢补充。报价和网络记录确实要先核,但不能在这位使用者还没提供日志时先归因到VPS。我会把故障那一分钟的连接状态、最后报价时间、关键分支和请求返回结果对齐,再判断卡在哪里。你说的Print记录,有没有去敏后的“有信号却未发请求”样例?只讨论字段和排查步骤,不涉及账号或策略参数。 从实盘角度出发写得很透彻,在指标选择这一环节的设置上非常老练,准备复现一下看看效果如何。 @lvcha 谢谢关注。这篇是排查EA执行链的记录,没有给出可复现的指标参数或盈利策略。你说准备复现,是想复现日志排查步骤,还是另一个指标案例?如果是排查,请只说MT4还是MT5,以及卡在“没信号、没发请求、请求被拒绝”哪一层,我按去敏现象继续。 This is a very practical troubleshooting approach. Checking the expert and terminal logs first makes sense before changing any EA parameters. I especially agree with separating signal issues from execution failures, because intermittent order opening can have different causes. The MT4/MT5 distinction and exact error codes should help identify the problem much faster. 可以再补一个容易漏的点:如果排障日志全写在 OnTick 里,该品种没有新报价时,这段日志也不会执行。有源码的话,可以用 OnTimer 加低频心跳,记录连接状态和该品种最后报价时间;交易分支另外记录第一个未通过的过滤条件。这样“程序仍在运行但没报价”和“有报价却被条件拦住”才有证据区分。心跳只做诊断,不拿它补单或绕过风控。
MQL5 官方事件说明:https://www.mql5.com/zh/docs/event_handlers/ontick 和 https://www.mql5.com/zh/docs/event_handlers/ontimer
页:
[1]