MQL4 programs
MQL4 程序
为了使 mql4 程序运行,必须对其进行编译(使用编译按钮或 F7 键)。编译应无错误通过(可能会出现一些警告,需要分析这些警告)。在此过程中,必须在相应的目录中创建一个具有相同名称且扩展名为 EX4 的可执行文件,这些目录分别是 terminal_dir\MQL4\Experts、terminal_dir\MQL4\indicators 或 terminal_dir\MQL4\scripts。此文件可以运行。
MQL4 程序的操作功能在以下部分中描述:
- 程序运行 – 调用预定义事件处理器的顺序。
- 客户端终端事件 – 描述可以在程序中处理的事件。
- 导入函数的调用 – 描述调用顺序、允许的参数、搜索细节以及导入函数的调用协议。
- 运行时错误 – 获取有关运行时和关键错误的信息。
专家顾问、自定义指标和脚本可以通过导航窗口中的拖放方法附加到打开的图表上。
为了使专家顾问停止运行,应从图表中移除它。为此,请在图表上下文菜单中选择“专家列表”,然后从列表中选择一个专家顾问并点击“移除”按钮。专家顾问的运行状态也受“自动交易”按钮状态的影响。
为了停止自定义指标,也应将其从图表中移除。
自定义指标和专家顾问在明确从图表中移除之前将持续运行;附加的专家顾问和指标信息会在客户端终端会话之间保存。
脚本执行一次,并在操作完成或当前图表状态发生变化时,或在客户端终端关闭时自动删除。重新启动客户端终端后,脚本不会再次启动,因为有关它们的信息不会被保存。
一个图表中最多只能运行一个专家顾问、一个脚本和无限数量的指标。
MQL5 的新功能
在 MQL5 中,整个程序逻辑基于事件处理。事件处理功能允许您开发交易算法、创建用户界面,以及收集和可视化优化结果。事件的数量增加了。其中最重要的五个事件如下:
- NewTick – 当新报价到达并由 EA 的 OnTick() 函数处理时触发。
- Calculate – 仅用于指标,在价格数据发生变化时处理,由 OnCalculate() 函数处理。
- Trade – 在交易服务器上完成交易操作后生成,由 OnTrade() 函数处理。
- TradeTransaction – 当交易账户发生变化时,由交易服务器发送到终端,由 OnTradeTransaction() 函数处理。
- BookEvent – 报告市场深度变化,由 OnBookEvent() 函数处理。
交易机器人的开发者会欣赏到文章和文档中描述的新测试器功能。最显著的优点包括:
- 自动下载历史数据并同步所有时间框架的条形图 – 终端会自动下载所有测试所需的歷史数据。
- 在测试中使用真实 tick 数据 – 现在您可以尽可能准确地在歷史数据中测试您的交易。所有符号的 tick 到达都被模拟。
- 多货币测试允许用户开发在多个符号上交易的策略,同时所有符号上的 tick 和条形图都正确同步,交易环境也被准确模拟,包括价差、保证金要求和所需存款货币的盈利计算。
- OnTimer() 和 Sleep() 函数在测试器中正常工作,可用于调试。
- 多线程测试器使用所有 CPU 核心,允许您对 MQL5 Cloud Network 上的数千个代理进行优化。
最后更新于