- 零基础学MQL:基于EA的自动化交易编程
- 刘杰编著
- 1406字
- 2020-08-27 22:28:07
1.2 MQL语言编写环境介绍
打开 MT4交易软件之后,点击 MT4终端工具栏上面的“MQ 语言编辑器”图标(快捷键为 F4),如图1-2所示。就可打开 MQL4语言编写界面,如图1-3所示。
图1-2 “MQ语言编辑器”图标
图1-3 MQL4语言编写界面
下面我们对MQL4语言编写界面做一个介绍,自动化交易程序的编写就在这个界面完成。该界面可以分为以下四个区域(如图1-3所示)。
区域1:MQL语言编辑器工具栏,主要用于打开、保存、编译程序等。
区域2:MQL语言编辑器导航栏,主要用于快速定位和打开EA(Expert Advisor,外汇智能交易系统)、指标、脚本、包含类等。
区域3:MQL语言编辑器编写区域,主要用于编写、调试程序。
区域4:MQL语言编辑器工具箱,主要用于显示程序编译的结果和日志等。
1.2.1 新建一个模板
我们可以通过打开MQL4向导创建各类模板,该模板已经自动生成了一个空白程序。点击如图1-3所示的MQL4语言编写界面的区域1工具栏选项的“新建”图标,即可打开MQL向导,如图1-4所示。
图1-4 MQL向导
通过MQL向导,我们可以创建6种程序模板:
● EA交易模板
● 自定义指标模板
● 脚本模板
● 程序库模板
● 包含库模板
● 新类模板
下面我们以新建一个EA模板为例为大家做一个演示。
选中“EA 交易(模板)”,然后点击“下一步”,就打开了 EA 基本信息设置界面,如图1-5所示。
图1-5 EA基本信息界面
在图1-5界面中我们可以填写和EA有关的基本信息,包括EA名称、EA 作者、EA 链接地址等。如图1-5所示,我们新建一个名称为“Hello World!”的EA程序。
点击“下一步”。
如图1-6所示页面我们可以选择EA的交易事件处理函数。向导默认选中的是“OnTimer”。
图1-6 EA交易事件处理程序选择界面
点击“下一步”,出现如图1-7所示界面,我们可以选择EA测试时的时间处理程序,选择默认程序即可。
图1-7 EA测试时间处理程序选择界面
点击“完成”按键,我们就得到了一个名为“Hello World!”的空白EA程序,如图1-8所示。我们可以在MQL4语言编辑器编辑区域以这个空白模板为基础完善编写第一个EA程序。
图1-8 “Hello World!”向导生成模板
1.2.2 编写并加载运行“Hello World!”
现在我们编写了第一个 EA——Hello World!,该 EA 的目的是输出“Hello World!”这句话,如图1-9所示。
图1-9 Hello World!
在函数OnTick()里面,我们输入“Print(“Hello World!”);”这句话,意思就是当货币对价格跳动一次时,就打印一次“Hello World!”。具体的程序分析我们在下面章节中会详细介绍,此处只做演示用。
编写完成之后,点击工具栏上方的“编写”按键,如果没有错误,则会在工具栏显示“零错误”,说明我们的EA编写没有问题,已经通过了编译,可以加载运行,如图1-10所示。
注意:在编写完每一个程序之后都要对其进行编译处理,只有被编译过且没有错误的程序才能运行。
图1-10 编译EA“Hello World!”
加载运行EA的步骤如下。
第一步:点击 MT4终端平台工具栏上的“自动交易”按钮,使 MT4启动自动交易功能,如图1-11箭头1所指。
第二步:双击MT4终端导航栏的EA名称,如图1-11箭头2所指。如果MT4终端允许该货币对自动交易,则在货币对K线图表的右上角会出现EA的名称和一个笑脸的标志,反之则会出现EA名称和一个哭脸的标志,如图1-11箭头3所指。
我们的第一个EA的开发目的是打印出“Hello World!”这句话,运行该EA会在终端的“EA”选项处打印出“Hello World!”,如图1-11箭头4所指的区域所示。
图1-11 加载运行EA“Hello World!”
至此,我们完成了第一个 MT4自动化交易程序“Hello World!”的编写和加载,虽然该 EA 没有什么实质性的内容,但是熟练掌握以上知识是我们进行后面章节的一个基础。通过对后面章节的学习,我们会逐渐丰满、充实我们的程序,为读者从实战角度构建一个快速编程的方法,使读者在学完本书之后能够顺利编写出自己的自动化交易程序。