EA 在真实账户里 iCustom 调用自定义指标返回 EMPTY_VALUE 是怎么回事
同一份代码在 tester 里 iCustom 能正常拿到缓冲区数据,换到实盘账户就返回 EMPTY_VALUE。指标文件已经放到 MQL4/Indicators 下并编译过,也确认过缓冲区数量和 SetIndexBuffer 的顺序。
怀疑是实盘账户的 tick 还没走满导致指标句柄未就绪,或者是 indicator_buffers 与 SetIndexBuffer 索引不匹配。有没有更稳的判断方法? |
|
|
|
|
|
|
|
DD
|
可以先区分空值和报错:MT4 的 iCustom 返回的是指标数值。调用前 ResetLastError,调用后立即记录返回值和 GetLastError,同时记下品种、周期、mode 和 shift。若出现 4066,可待历史数据更新后重试;如果无报错但仍为空,可对照该指标在对应 K 线是否本就没有信号、是否自定义了空值,再比较 shift 0 和 1。也可以核对输入参数的类型与顺序,并看看终端日志。希望能帮你缩小范围。 |
|
|
|
|
|
|
|