情况1.MT4的build版本不兼容问题造成的 |
由于MT4版本升级频繁,不免造成不同版本之间的兼容性存在一定问题,解决这类型指标的方法通常有2个办法: 解决办法一:使用指标源码重新编译下即可. ![]() 解决办法二:使用新版MT4覆盖复盘软件中 复盘软件里新版MT4替换法(解决部分指标由于mt4版本问题而无法加载):最新版本MT4主文件,可以自行从实盘中获取,或者这里下载http://101.35.198.181/update/newMT4.zip 用terminal.exe和metaeditor.exe 覆盖 d:\复盘软件\MT4\terminal.exe和d:\复盘软件\MT4\metaeditor.exe ![]() 只需要覆盖着2个文件就可以了.其他不用改动. 然后启动复盘软件.exe,会提示是否升级MT4补丁,此处一定要选择"取消" ![]() 启动之后,就是最新版本的MT4了,可使用最新版本的一些指标, ![]() 但同时也带来另外一个后遗症,无法切换周期,只能使用已经打开的周期,所以需要提前配置打开需要复盘用到的period周期. 另外需要注意,如果指标中包含时间函数TimeCurrent(),这个办法是解决不了的,需要用源码替换函数,详见情况2 |
情况2.指标包含日期函数需要替换 |
复盘中的时间都是历史的,不同实盘中的时间都是当下最新时间,所以日期函数需要做点转变,比如用到了函数TimeCurrent(),需要替换为MTDTimeCurrent();使用如下的自动替换工具,无需懂编程,也一样可以自己完成 ![]() 经过以上步骤转换后,再重新编译下,确认下编译没有错误,没有错误警告后,正常情况下就可以使用了,编译方法参考这里-->如何修改,编译指标 ![]() |
情况3.指标跨周期调用. |
这种情况是由于指标调用了其他周期的情况,而复盘中,只有打开的窗口,才会有数据,所以就要求把对应的周期.解决办法也简单,打开周期即可. 常见的比如指标ADR或者Pivot或者ATR指标,都用到了周期D1,所以打开对应的D1就解决了.具体用到了什么周期,不同的指标可能的情况不同.需了解自己的指标用到了什么周期 ![]() |