转载]新版MT4与老版MT4大融合【研究日志】

作者:admin 发布时间:2022-02-06 15:50

  转载]新版MT4与老版MT4大融合【研究日志】:新版编辑器供应的新道话即是MQL5,线升级版,与其学这个阉割版mql5,不如我直接练习mql5呢。行为顺序员,要么你对峙待正在老版本情况中,要么发狠进入MQL5宇宙。行为初学者,我更提议你延续练习mql4。

  用新版MT4能够登录任何MT4办事器,用老版编辑器能够不消学mql5,圆满的处置计划。

  新版本编辑器翻开一次老EA源码,编译后,老版本编辑器翻开就只剩下一个问号了,这注脚假设源码用新版编译,目前该当没有什么软件能破解的。

  试验正在新版顶用MQL4编程,助助体系掺杂了新老两个版本的提示,比如:strtotime和StringToTime,显得很乱,仍然回到老情况中去算了。

  找到了不让MT4主动升级的手段,正正在验证中。我就正在念,相似微软声明不再援救xp,但无数银行的ATM用的即是xp,你不援救,不等于我就不消吧?同理,假设你不承诺转化,那就延续操纵MQL4终末一个版本。

  1、计算一个MT4 509版本的软件,setup没用,假设没有,能够到这里下载:

  2、删除操作合联的文献,这些文献夹里有升级模块。假设是xp,删除这个文献夹C:Documents and Settings用户名Application DataMetaQuotes;假设是win7,删除C:Users用户名AppDataRoamingMetaQuotes

  。记住浏览整个的用户名,发觉了就删除。卸载电脑顶用setup安置的MT4,关于有效的MT4事先做拷贝备份即可。

  新版的MT4对老版本ex4统统援救(彷佛dll有些题目,还没测试),况且扩张了expert子目次,轻易EA归类经管。只是编译后,加载正在图外中的EA不会主动更新,从新加载一次即是。

  找到MT4新版安置文献夹,拷贝到硬盘另边境方,卸载MT4。这个拷贝即是一个可独立运转的MT4软件包了,念正在一台电脑上同时运转众个账户,就把这个拷贝复制众少份吧。初始安置后的容量大约40M。

  #property strict暗示编译时采用峻厉语法检测,比如print(123+ +abc),此中的123就不对规,务必将其转换成string类型,不然提示警备。又好比界说了一个变量int myCnt;假设不赋初始值,就会提示警备。提议操纵这种方法,提升编码质料。

  用老版本编辑器编译新顺序后,主顺序导航栏不会映现顺序名,重启就有了,假设还没有,搜检文献存放地位是否精确。

  正在“C:Documents and SettingsAdministratorApp

  lication DataMetaQuotesTerminal”文献夹内中存在着相似“29DE************A430”的文献夹,内中存在着差别MT4终端的情况新闻。我试着删除了这个腻烦的东西,MT4运转平常,况且没有再看到这个文献夹主动天生了。

  安置途径MQL4文献夹是mql4顺序,老顺序都该当存放正在这里,必要预防的是从来

  老版本中,用Void界说的函数民风上正在末尾加一个return(0),新版语法提示警备,直接操纵return就能够驱除警备了。

  新版本关于中文解说和中文变量援救欠好,显示动乱,但不影响编译,终于码农人风加解说,守候改革。

  大写OP_BUY是合节字,小写op_buy就不是,编码中预防变量名不要与合节字重名,假使是用小写。

  源码编译请操纵F7键,由于编辑器里显示的是“编写”,终于是俄罗斯产物,咱们容忍了。

  int start()、int init()、int deinit()正在新版本助助文献中依然没有任何注脚了,但行为合节字保存下来,以便兼容老版本MQL4道话。

  MT4升级为600+版本后依旧援救基于MQL4编写的目标、EA和剧本,固然编辑器效力变得壮健,但目前对中文援救欠好,道话为MQL5。很众熟练MQL4的老顺序员要出手更新本身的学问啦,不外也能够参照我的博文

  文献夹蜕变:509或更早版本的文献一齐乔迁到600+安置途径下的“MQL4”中,但存储布局有所转化:

  Libraries - 存在系界说函数MQ4源码文献和ex4文献、dll函数文献