mt4和mt5调用对照表良众拓荒职员仍旧累积了良众用 MQL4 编写的目标和业务战略。要正在 Metatrader 5 中运用它们,应将它们转换为 MQL5。用 MQL5 重写一齐轨范并不是云云容易。假如有转换参考,则举办转换会容易得众,最好以例子证据。

  正在 MQL5 图外中,周期常量显现转折,而且增加了少许新的年华周期(M2、M3、M4、M6、M10、M12、H2、H3、H6、H8、H12)。要转换 MQL4 年华周期,您能够运用以下函数:

  应提神,正在 MQL5 中,图外年华框架常量的数值(从 H1 起)不等于柱的分钟数(比方,正在 MQL5 中,常量 PERIOD_H1 的数值 =16385,不过正在 MQL4 中,PERIOD_H1=60)。假如正在 MQL4 轨范中运用了 MQL4 常量的数值,则正在转换到 MQL5 时应试虑到这一点。

  要确定图外的指定年华周期的分钟数,将函数 PeriodSeconds 返回的值除以 60。

  注:MQl4 中的常量和 MQL5 中的常量分歧,是以最好正在一个只身的文献 initMQ4.mqh 中声明它们以备来日运用。

  包括目前图外的每一根柱的开盘年华的序列数组。datetime 等数据以秒为单元外现从 1970 年 1 月 1 日凌晨 00:00 起颠末的年华。

  将数组复制为另一个数组。数组务必是肖似的类型,不过类型为 double[], int[]、datetime[]、color[] 和 bool[] 的数组能够复制为肖似类型的数组。返复兴制元素的数目。

  将目前图外柱的数据复制到类型为 RateInfo[][6] 的两维数组,并返复兴制的柱数,或者正在式微时返回 -1。

  假如数组是按年华序列数组机闭的,则返回 TRUE(数组元素是从结尾一个到第一个索引的),不然返回 FALSE。

  返回数组指定维度中的元素数目。由于索引是基于零的,维的巨细比最大索引大 1。

  按第一维对数字数组排序。不行通过 ArraySort() 对序列数组举办排序。

  函数返回结尾一次产生的过错,然后是独特变量 last_error 的值,个中,存储的结尾一个过错的代码将被归零。

  函数返回客户端与推广数据泵性能的供职器之间的主毗邻的形态。假如胜利设立到供职器的毗邻,则返回 TRUE,不然返回 FALSE。

  假如 EA 业务轨范正在一个演示帐户中运转,则返回 TRUE,不然返回 FALSE。

  假如应承针对 EA 业务轨范移用函数 DLL,则返回 TRUE,返回不然 FALSE。

  假如正在客户端中应承运用 EA 业务轨范,则返回 TRUE,不然返回 FALSE。

  假如 EA 业务轨范或许移用库函数,则返回 TRUE,不然返回 FALSE。

  假如 EA 业务轨范正在战略测试轨范的优化形式中运转,则返回 TRUE,不然返回 FALSE。

  假如轨范(EA 业务轨范或剧本)被号召甩手其操作,则返回 TRUE,不然返回 FALSE。

  假如 EA 业务轨范正在测试形式中运转,则返回 TRUE,不然返回 FALSE。

  假如应承用 EA 业务轨范举办业务而且业务线程未被占用,则返回 TRUE,不然返回 FALSE。

  假如业务线程被另一 EA 业务轨范占用,则返回 TRUE,不然返回 FALSE。

  返回正在 Market Watch(墟市张望)窗口中列出的证券的百般数据。

  向正在 Tools(器械)-Options(选项)-EMail(电子邮件)选项卡中修设的电子邮件地方发送一封邮件。

  返回最新已知供职器年华确当前基于零的礼拜几(0-礼拜天、1、2、3、4、5、6)。

  返回一年中确当前日期(1 外现 1 月 1 日,... ,365(6) 外现 12 月 31 日),即最新已知供职器年华的一年中的日期。

  返回轨范启动时最新已知供职器年华的小时 (0,1,2,..23)(此值正在轨范推广时候不会转折)。

  返回轨范启动时最新已知供职器年华确当前分钟 (0,1,2,..59)(此值正在轨范推广时候不会转折)。

  行动数字返回目前月份(1- 1 月、2、3、4、5、6、7、8、9、10、11、12),即最新已知供职器年华的月份。

  返回轨范启动时从最新已知供职器年华确当前分钟着手过去的秒数(此值正在轨范推广时候不会转折)。

  行动从 1970 年 1 月 1 日 00:00 起过去的秒数返回最新已知供职器年华(最新报价的来到年华)。

  返回指定日期的基于零的礼拜几(0 外现礼拜天、1、2、3、4、5、6)。

  作不从 1970 年 1 月 1 日 00:00 起颠末的秒数返回当地计划机年华。

  对待 CSV 文献,假如文献指针内行的末尾,则返回逻辑 true,不然返回 false。

  翻开用于输入和/或输出的文献。返回翻开文献的文献句柄,式微时则返回 -1。

  函数将文献指针从起原、末尾或目前文献位子转移一个新位子,偏移量以字节为单元。

  假如目前值等于第三个参数 check_value 的值,则将现有整体变量修设为新值。

  摸索子字符串。返回摸索的子字符串正在字符串中的着手位子,假如找不到子字符串,则返回 -1。

  正在“MQL5 初学者:正在‘EA 业务’中运用本事目标的指南”一文中商量了正在 EA 业务轨范中运用本事目标的规则。正在该参考中运用的门径足认为指定的价值获取目标计划结果。要运用此门径,咱们需求辅助函数:

  返回具有指定年华框架和偏移的指定业务种类的柱的收盘价。假如当地史乘记载是空的(未加载),则函数返回 0。

  返回具有指定年华框架和偏移的指定业务种类的柱的最高价。假如当地史乘记载是空的(未加载),则函数返回 0。

  返回具有指定年华框架和偏移的指定业务种类的柱的最低价。假如当地史乘记载是空的(未加载),则函数返回 0。

  返回具有指定年华框架和偏移的指定业务种类的柱的开盘价。假如当地史乘记载是空的(未加载),则函数返回 0。

  返回具有指定年华框架和偏移的指定业务种类的柱的年华值。假如当地史乘记载是空的(未加载),则函数返回 0。

  返回具有指定年华框架和偏移的指定业务种类的柱的价值转折量值。假如当地史乘记载是空的(未加载),则函数返回 0。

  视 MQL4 轨范而定,返回移用该函数的所推广 EA 业务轨范、剧本、自界说目标或库的名称。

  假如找到具有指命名称的目标,则函数返回包括此指定目标的窗口索引,不然返回 -1。

  返回目前图外的指定子窗口的笔直刻度的最大值(0-主图外窗口,目标的子窗口从 1 着手编号)。

  返回目前图外的指定子窗口的笔直刻度的最小值(0-主图外窗口,目标的子窗口从 1 着手编号)。

  返回 EA 业务轨范或剧本所正在的图外窗口客户端区域点的 X 轴的值(以像素为单元)。

  返回 EA 业务轨范或剧本所正在的图外窗口客户端区域点的 Y 轴的值(以像素为单元)。

  咱们没有商量业务函数,由于正在 MQL5 中观点有所分歧,而且应当运用素来的观点!能够转换它们,不过业务逻辑应转折。换言之,转换它们没有心义。

  从一种说话将轨范转换为另一种说话永远伴跟着性能和功能的吃亏。是以,请将本指南用于急迅摸索对等函数。

  我宗旨拓荒 MQL4 仿真轨范,让您或许正在新的 MetaTrader 5 客户端中运转您的 MQL4 轨范。