Categories
如何在 MT4/MT5 上设置并启动 EA (交易机器人)?
如何在 MT4 和 MT5 上设置专家顾问智能交易系统 (Expert Advisor)
Expert Advisor (EA) 是使用迈达克 Language 4 (MQL4) 或迈达克 Language 5 (MQL5) 交易策略编程语言和 MetaEditor 编辑器创建的。
要启动 Expert Advisor 编辑器,您需要执行 “导航器 — Expert Advisors (Navigator — Expert Advisors)” 窗口上下文菜单的 “新建 New” 命令,“工具 — 迈达克语言编辑器 (Tools — MetaQuotes Language Editor)”菜单命令。
创建 Expert Advisor 时,Expert Advisor 创建向导将自动打开,让您可以快速开始使用新的 MQL4/MQL5 程序。
在那里,作为创建对象的类型,您必须指定 “Expert Advisor” 并用所需数据填写字段:
- 名称 – 顾问的名称;
- 作者 – 作者的姓名;
- 链接 ― 开发者的网址;
- 参数 ― Expert Advisor 的输入参数列表。要添加新参数,必须点击 “添加 Add” 按钮;要删除它,请点击 “删除 Delete” 按钮。
之后,带有指定参数的新 Expert Advisor 窗口将在编辑器中打开。
带有 Expert Advisor 源文本 (*.MQ4 或 *.MQ5) 的文件自动放置在客户端的 /EXPERTS 文件夹中。
从这一刻起,您可以开始编写 Expert Advisor 的代码。
通过编译程序完成编辑
开发完成后,需要编译顾问。
为此,在 Expert Advisor 编辑器中,您需要执行 “文件 — 编译 (File — Compile)” 菜单命令,按 F5 键或工具栏按钮。
编译成功后,将创建一个扩展名为 *.EX4 或 *.EX5 的可执行程序文件,该文件自动放置在 /EXPERTS 文件夹中。
已编译的 Expert Advisor 列表可以在客户端的 “导航器 – Expert Advisors (Navigator — Expert Advisors)” 窗口中查看。
如果编译没有成功完成,专家的图标将变灰。
这意味着它不能被使用。
要从终端开始编辑现有的 Expert Advisor,您必须从 “导航器 – Expert Advisors (Navigator — Expert Advisors)” 窗口的上下文菜单中执行 “编辑 Edit” 命令。
这将打开 EA 编辑器,其中将加载所选 Expert Advisor 的源文本。
更改 Expert Advisor 的源代码后,您需要重新编译它并获得新的可执行 EX4 或 EX5 文件。
否则,终端将使用未更改的 Expert Advisor 的先前版本。
这意味着它不能被使用。
如何编辑/更新 Expert Advisors
在您开始使用 Expert Advisor 之前,您必须首先配置它们。
所有 Expert Advisor 通用的操作参数在客户端的设置窗口中设置。
该窗口可以通过菜单命令 “工具—设置 (Tools — Settings)” 或快捷键 Ctrl+O 打开。
要配置 Expert Advisors 的参数,请选择 “Expert Advisors” 选项卡。
它包含:
- 允许自动交易
- 此选项允许您使用专家顾问和脚本启用或禁用交易操作。如果它被禁用,那么 Expert Advisors 和脚本将能运作,但它们将无法执行交易操作。这种限制在实时测试程序的分析能力时很有用 (不要与历史数据测试混淆)。您还可以使用终端工具栏上的按钮启用和禁用自动交易。
- 在更改账户时禁用自动交易
- 此选项是一种保护机制,可在更改交易账户时禁用 Expert Advisors 和脚本的交易。例如,从模拟账户切换到真实账户时,这个选项可能很有用。
- 更改配置文件时禁用自动交易
- 配置文件存储了大量有关工作区中所有图表当前设置的信息。配置文件尤其是存储有关附加的 Expert Advisor 的信息。配置文件中包含的 Expert Advisor 将在新价格变动到来时开始运作。通过启用此选项 (勾选该选框),您可以防止 Expert Advisors 在更改配置文件时进行交易。
- 更改图表的交易品种或周期时禁用自动交易
- 如果启用此选项,当 Expert Advisor 所附图表的交易品种或周期发生变化时,该 Expert Advisor 则将自动禁止交易。
- 允许导入动态链接库 (DLL)
- Expert Advisors 交易可以使用 DLL 库来扩展它们的功能。通过勾选此框,您可以不受任何限制地使用此类库。
如果禁用此选项,则没有 Expert Advisors 能够使用外部 DLL。建议在与未知专家合作时禁用导入功能。 - 允许列出网址的 WebRequest
- 在 MQL4/MQL5 语言中,WebRequest() 函数允许您使用 GET 和 POST 请求从网站接收和发送信息。
要允许 MQL4/MQL5 程序发出此类请求,您必须启用 “允许 WebRequest 使用以下网址 (Allow WebRequest for the following URLs)” 选项并明确手动指定受信任网站的 URL。出于安全原因,默认情况下禁用此选项。
如何启动 Expert Advisers
配置一般参数后,您可以启动 Expert Advisors。
为此,您只需将 Expert Advisor 附加到图表上。
“导航器 – Expert Advisors (Navigator — Expert Advisors)” 窗口上下文菜单的 “附加到图表 Attach to Chart” 命令,或在同一窗口中用鼠标左键双击所选的 Expert Advisor 让您将其叠加在活动图表上。
此外,使用 “拖放 Drag’n’Drop” 的方法,您可以将 Expert Advisor 应用于任何图表。
同时,屏幕上会出现 Expert Advisor 个人设置的窗口。
在常规选项卡上,您可以更改以下设置:
- 仓位 — 选择开仓的方向:
- 做多和做空 – 在双方向上;
- 做多 – 只为买入;
- 做空 – 只为卖出。
- 允许信号 – 允许/禁止 adviser 发出信号;
- 允许 EA 交易 — 允许/禁止实时交易操作。请记住,即使启用此选项,EA 也可能被一般终端设置禁止交易。
- 允许导入 DLL — 允许/禁止从 DLL 文件导入函数;
- 允许导入外部 EA — 允许/禁止调用来自外部 EA 的函数。
- 允许更改信号设置 — 该选项允许/禁止 MQL4/MQL5 程序订阅和取消订阅信号,以及更改信号设置。使用来自 MQL4/MQL5 程序的信号数据库的功能使得独立分析信号质量、动态管理订阅和管理风险成为可能。有关信号管理函数的详细信息可以在 MQL4/MQL4 参考中找到。
在 “输入 Inputs” 选项卡中,您可以更改 EA 的外部变量。
这些包括外部类变量。
要更改参数,请用鼠标左键双击其值并写入一个新值。
在这种情况下,您可以更改每个变量的值或加载一组已保存的输入参数 (“加载 Load”) 按钮。
您可以使用同名按钮保存当前的外部变量组。
“重置 Reset” 按钮返回所有默认设置。
在 “常规 General” 选项卡中,设置终端中所指定的参数已经被设置。
而程序源代码中指定的参数设置为输入变量。
要确认带有指定参数的 Expert Advisor 的附件,您必须点击 “OK” 按钮。您可以通过点击同名按钮取消 EA 的覆盖。
设置 Expert Advisor 后,它将被初始化,随着新报价的出现,Expert Advisor 将开始执行。
Expert Advisor 附件的证据是图表右上角出现的专家名称和笑脸的图标。
如果在 Expert Advisor 设置中禁用交易,则将出现 L 而不是笑脸。十字表示所有 Expert Advisor 都被禁用。
如何停止运行 Expert Advisers
要停止 Expert Advisor 的运作,有必要将其从图表中删除。
要从图表中删除 Expert Advisor,请执行图表上下文菜单命令 “Expert Advisors — 删除 (Expert Advisors — Delete)” 或将另一个 Expert Advisor 附加到图表。
此外,当更改配置文件或模板时,EA 可以从图表中删除。
- 当客户终端关闭时,所有 Expert Advisor 的运作将终止;
- 当图表关闭时,附加到它的 Expert Advisor 将结束;
- 申请第二个 EA 时,确认后将第一个 EA 删除;
- 从 “导航器 Navigator” 窗口删除 Expert Advisor 不会终止叠加在图表上的同名 Expert Advisor 的运作;