任意时间周期脚本执行的功能是根据设定的参数创建特殊周期的离线图表。
mt4默认的图表周期一共是9个,分别是:一分钟M1、五分钟M5、十五分钟M15、三十分钟M30、一小时H1、四小时H4、日线D1、周线W1、月线MN1。这9个周期是mt4内置的,可以在上方工具栏中的“周期”下自由切换不同的图表周期,但是无法去修改这些周期的大小的。
如果要在mt4上面看一些上述周期之外的图表窗口,那么其实现方法就是用任意时间周期脚本创建特殊周期倍数的离线图表。这里的重点是用脚本创建离线图表,而不是直接创建新的或修改图表周期。
脚本“时间周期倍数”参数是指需要创建的离线图表相对于当前图表的倍数。必须是正整数倍,比如,基于一分钟图表,可以创建2倍2分钟、三倍三分钟、6倍6分钟图表等,而不能创建1.5倍的1.5分钟图表。同样,基于一小时图表可以创建2小时、3小时等图表,而不能创建什么2.5小时的图表。
这里还有一个重点,就是需要基于当前图表创建离线图表,那么脚本加载到当前图表后且脚本需要一直加载在当前图表上,离线图表才会正常跳动运行。如果从当前图表上移除脚本,或者关闭当前图表,那么所创建的离线图表中的价格将会停止刷新跳动。
不能忽略另外一个细节,就是基于一个图表也只能创建一个离线图表并维持离线图表价格的持续刷新跳动。比如在一个一分钟图表上加载脚本创建一个3分钟离线图表,那么这个一分钟图表和所创建的三分钟离线图表正常运行时,如果还要创建四分钟图表,那么就需要再单独打开一个一分钟图表,然后基于新打开的一分钟图表来加载脚本创建四分钟离线图表。
脚本文件安装时,在mt4图表上方菜单栏依次点击“文件/打开数据文件”,并继续点击打开“/MQL4/Scripts”, Scripts 文件夹就是放置脚本文件的地方,将“MT4任意时间周期脚本.ex4 ”文件复制粘贴到 Scripts 文件夹里。如下图所示:
文件复制粘贴到Scripts后,重启mt4,或者刷新图表左侧导航器下方的“脚本”目录,就能看到脚本。下面以创建黄金XAUUSD三分离线图表来说明脚本使用步骤:
第一步:打开一个XAUUSD一分钟图表,如果图表窗口已存在,就不用在打开。
第二步:鼠标将“MT4任意时间周期脚本”脚本拖拽到第一步打开的图表上,并设置“时间周期倍数”为3,然后点确定。
第三步:这是最重要的一步,刚刚打开的图表及加载到图表的脚本不要去关闭或修改什么。直接在mt4上方“文件”菜单下点“打开离线历史数据”,找到刚刚创建的离线图表数据(可以从名称和创建时间上确认下),选中数据点右上角的“打开”即可。如下图所示:
这样,所创建的XAUUSD,M3(offline)图表就打开了,保持第一步打开的XAUUSD图表及其上面的脚本正常运行,那么这个XAUUSD,M3(offline)图表也就会正常运行。
如果需要创建其它周期的离线图表,重复上面三步操作,而不要再基于第一步打开的图表去操作。如果需要关闭正在运行的离线图表,鼠标点击图表右上角的叉号即可。如果需要从开始的图表上移除脚本,在图表空白处鼠标右键并选择“移除脚本”即可。
所创建的离线图表,是可以直接在上面执行右键菜单功能,比如单击交易开新订单,或者加载模板分析行情等等。
因为创建的是离线图表,读取的是离线历史数据,所以,如果细心观察,它和实时图表价格的波动还是存在一定的延时或误差的。脚本在ea编程中所采用的原理是将图表价格数据写成文件供离线读取。