Python交易客
楼主
2026-9-1 21:18:07
浏览 563
回复 4
阅读 1 分钟
Lv.1 新手汇友 等级 Lv.1 主题 3
帖数 15
积分 1493
汇币 1115
1楼
实不相瞒,这套EA在原来的平台跑了整整87天,净值曲线漂亮得能当壁纸。一换到新平台,直接变脸——不是不进场,就是进场后被来回打脸。我用的Windows Server 2022,MT5 build 4680,OrderSend返回error 10018,但奇怪的是日志里显示连接正常。
我排查过DLL权限、服务器时间同步、甚至把点差和合约规格都跟老平台逐项核对过,欧美和黄金的品种参数基本一致。能想到的只有服务器延迟差异,但ping值才12ms,不至于吧?也试过换VPS,结果一样。
有没有老哥遇到过类似情况?到底是平台报价流实现有区别,还是我漏了什么隐藏设置?
MQLArchitect
#5· 2026-9-5 20:00:16
5楼
error 10018这个坑我也踩过,跟点差模式关系不大。刚换平台时我EA连单都不开,后来发现是订单类型没匹配新平台的执行规则。我自己也试过把SYMBOL_FILLING_MODE读出来打印,发现默认跟老平台差一个值,手动指定IOC就好了。浮动点差下建议顺手加个最大滑点保护。
半壶老酒
#4· 2026-9-5 11:04:16
4楼
问题核心其实是浮动点差导致执行模式不兼容,error 10018多半是填充策略没匹配。老兄先查一下新平台的SYMBOL_FILLING_MODE,手动指定FOK或IOC试试,别依赖默认。
MistyMeadow
#3· 2026-9-2 20:24:16
3楼
学到了填充模式这块,我自己也遇到过类似坑,当时以为是滑点问题,调半天没用。你试试把执行模式也设死看看。
DigitalVision
#2· 2026-9-2 15:25:16
2楼
你提到的error 10018我遇到过,不是报价流问题,是平台对订单执行模式有隐藏限制。我之前换平台也栽在这,后来发现新平台要求必须显式设置填充模式才会接受市价单。检查下EA里的SYMBOL_FILLING_MODE,别只看合约规格。