EA智能交易系统与MQ4程序语言介绍
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[收集]如何怎样使用EA智能交易系统与MQ4程序语言介绍(2011-09-29 14:44:14)
转载▼
标签:
分类:EA
ea
入门知识
杂谈
文件放置说明
¤指标的mq4、ex4文件复制至experts目录的indicators子目录下
¤ EA自动交易的mq4、ex4文件复制至experts目录下
¤ tpl文件为模板文件,复制至templates目录下
¤ DLL文件为库文件,复制至experts目录的libraries子目录下
¤ SET文件为设置文件,复制至experts目录的presets子目录下
¤ pdf、txt、doc文件为说明文档,可直接打开阅读
EA使用方法
作为外汇交易的延伸,使用智能交易系统(EA)代替人工交易似乎成为一种新的潮流,那么如何在MT4里使用EA智能交易系统呢?
一、首先,当然你得要有一个EA,而且必须是以ex4为扩展名的,如果是只有mq4文件的话,请用MetaTrader自带的编辑器MetaEditor打开,将mq4通过编译(compile),并且要不出现错误,才能在原存放mq4的文件夹下面得到一个同名的ex4文件。
二、把这个ex4后缀的文件复制到MetaTrader 4所在的文件夹下面的experts文件夹下,比如:D:MetaTraderexperts,关闭并重新打开MetaTrader 4。
三、在“导航”下面的“智能交易系统”下面右键点击你想要使用的EA,这里以10点盈利系统举例,点“附加到图表”,如:
四、将会出现下面的弹出窗口:
特别要注意这里的选择,如果没有钩选“允许实时自动交易”,那么你的智能系统就不会自动交易。
五、在自动成交方面,MT还有一个总开关,就是“工具”菜单下面的“选项”中:
六、还有一个地方必须选择“启动”:
上图最后面的变成这样的就是已经启动了智能交易系统。
七、在完成了上面的所有设置后,看看你的图表的右上角一定会出现你的智能交易系统的文件名和一个笑脸。
出现这样就算是当前的图表已经启用了智能交易系统了。这时,你就可以去花天酒地等着你的智能交易系统为你的交易账户上面增加资金了。
八、如果你要停止你的智能交易系统,最好的办法是点击这个图上面的“智能交易”图标。
不过这样一来,你的所有图表上面的智能交易就全部停止了。所有图表右上角的笑脸都变成了叉叉:
如果只要停止当前图表上面的EA,你应该按F7 键,就会弹出如下的窗口:
点击将“允许实时自动交易”前面的钩去掉,然后确定,这样就使当前图表上面的EA 停止了。图表上面会出现“哭丧的脸”:
而如果要完全将当前图表上面的EA消除,先右键点击图表区域,会出现:
点击“智能交易系统”,然之后点击“消除”,这个EA就会从当前图表上面删除,图表的右上角就会什么都没有了。
附:EA的简介
EA 即Expert Advisors 的英文缩写
中文意思专家顾问,俗称智能交易系统,就是由电脑模拟交易员的下单操作进行机器自动交易的过程。
一、人工操盘过程
下面我们就以MT4外汇客户端为例,首先来分析一个外汇交易员手工进行外汇交易的操作过程:其步骤如下:
1. 打开外汇交易客户端,选定一种货币对图表;
2. 监视该货币对的K线趋势图,俗称盯盘,寻找开仓或者是平仓的时机,即开仓或者是平仓的条件。
3. 如果条件满足,进行下单开仓(做多或者做空)或者平仓。
4. 重复第二步,继续盯盘,假定第二步是开仓,就是寻找平仓的条件。
5. 如果平仓的条件满足,进行平仓操作,计算盈亏核算。完成一次交易的循环。
6. 若继续交易,重复2->3->4->5步。
7. 若不进行交易,退出外汇客户端。
二、机器操盘过程
基于以上的分析,我们已经知道一个完整的智能交易系统(俗称EA)在运行后必须要实现的基本功能,就是上述的人工操作的1-5步。这也就是智能交易系统的基本工作过程,所以智能交易系统的工作原理就是由程序员借助一门计算机程序设计语言,通过编写程序交易指令模拟人类交易员的行为进行下单操作,实现机器自动进行交易的过程。主要执行过程可分为:盯盘->开仓->再盯盘->平仓,如此循环执行的过程。
关于支持机器自动交易的平台,目前外汇市场上流行的就是MetaQuotes公司的MT4平台,由于这个平台中嵌入了一种MQL4语言,它提供了对服务器端的数据访问并可进行交易操作的接口,程序交易者可以根据自己的交易策略来编写自己的自动交易系统,从而实现让机器自动交易,既可以减轻人类的工作量,又可以克服人类交易中的一此性格弱点,但目前的EA开发,尚所早期起步阶段,有的还存在缺陷,但相信随着技术的发展,机器自动交易终将会逐步取代人类的手工操作。届时会给交易者一项新的选择。
三、相关MQL语言知识
为了实现机器操作,再来看看所需的MQL4语言的相关知识:
1. 掌握MQL4语言的基本语法和程序的构成,及运行流程
有关语法部分,请读者参看相关的资料,这里略去。
关于程序的构成,对于一个智能交易系统EA程序来说:主要由三个函数构成分别是:
init():初始化函数,负责程序变量及数据初始输入;只在程序调入时执行一次,一般不用重写内容。
deinit():反初始化函数,负责程序退出时,将数据从内存中清除;只在程序退出时,执行一次,一般不用重写内容。
start():开始函数,也即程序的主函数,负责EA程序的全部交易执行过程,实际上他是一个EA的交易管理与执行函数。每隔一定时间,一般几秒之内,执行一次,就是循环执行,直到程序退出时终止。
运行流程:启动EA后,程序的INTI()开始执行一次,-->然后START()循环执行--->最后退出EA时deinit()执行一次