[原创]MT4程序的基本结构
>MT4程序的基本结构
< >MT4作为一门语言包含的内容相当多,不过它基本上是与C语言类似,如果你学过C或者VB之类的基础编程,理解起来不是太难,在这里想短篇幅幅搞清楚所有MT4的语法似乎不太可能,建议大家不要想一口吃个胖子,MT4的基本语法说明在下面的帖子http://bbs.520fx.com/dispbbs.asp?boardID=7&ID=58&page=1里可以了解个一二,更深入的部分将以还是在实际编程中逐步解决。520FX
< >MT4程序基本结构一般从上到下包括4个部分(当然有些部分的位置是可以颠倒的,MT4是根据函数名字来寻找,而不是根据位置)。
< >按照一般的方便查看的结构程序设计原则,MT4从上到下的组成是:
< >第一部分:头代码部分
< >这里可以放置当前程序的属性,以及一些外部调用,同时在这里可以设置技术文件运行时可以改动的参数定义部分。
< >指标属性的设置一般每一行都用#property开头,后面是具体某个属性的设定,
< >例如:520FX
< >#property indicator_chart_window 就表示当前指标运行的时候所显示的图线是放置在K线主图里面的
< >#property indicator_separate_window就表示当前指标运行的时候所显示的图线是放置在K线下面的独立附图里面的
< >#property indicator_buffers 4 表示本指标将会使用4条线,所以在这里用语句进行初始化设定
< >#property indicator_color1 Blue 表示第一条指标线是用蓝色
< >#property indicator_color2 Red表示第一条指标线是用红色
< >#property indicator_color3 Blue 参考上面
< >#property indicator_color4 Red 参考上面
< >#property indicator_style4 2 表示指标类型采用系统定义好的2号类型
< >头文件部分还有一个重要作用就是定义输入参数:
< >extern int fast=3;
< >extern double slow=7.34;
< >输入参数的定义每一行以extern开头,后面紧接着是参数的类型int整数double双精度实数,再后来是参数的名字以及设定他的初始数值。
< >说明:在这里设定的参数,当你在MetaTrader里面附加这个指标的时候,弹出的指标窗口“输入参数”里面就会显示出来。520FX
< >头文件部分完成后,下面的三个部分是三个系统设定好名字的函数过程,不要更改名字,否则无法运行。你要做的只是在这三个函数过程内部添加你的代码,当然你也可以在这三个函数外面自己定义你的个性函数,然后再三个函数里面进行调用。
< >三个系统函数如下:520FX
< >int init() 初始化函数,这个函数在治标被加载的时候运行一次,一般用于进行和图表有关的一些属性的设置。
< >int deinit() 预定义函数,一般很少使用,知道就行了,程序里面可以没有这个部分
< >int start() 最重要的程序部分都在这里,start函数在每来一个价格Tick的时候,都会运行一次,这里面放置了主要的程序循环代码。因此你开发的指标图形才会在实时行情下不断变化。
< >一个MT4程序包含了以上部分后,就算完整了,剩下的工作主要在于结构流程的设计功夫。
●点击查看《EA安装及运行教程》.
●玩转策略正确流程:①复盘回测,判定策略质量→②加载虚拟盘检验,检测策略的原理可行性→③加载美分实盘试验,测试EA风险值→④实盘运行,注意风控!
.友情提醒:外汇EA网提供的资源,都不包含技术服务,请大家谅解!部分资源来源于用户上传和网络,如有侵权请邮件联系站长!外汇EA网资源售价只是赞助,收取费用仅维持本站的日常运营所需!外汇EA网不保证所提供下载的资源的准确性、安全性和完整性,策略资源仅供下载学习之用,如用于商业或者非法用途,与本站无关,一切后果请用户自负!
· 版权信息:本站所有资源仅供学习与参考,请勿用于商业用途,如有侵犯您的版权,请及时联系官网客服,我们将尽快处理。
· 免责声明:投资有风险,本网站所包含之所有信息均不构成任何投资的建议或意见,网站内容仅供参考。不适合所有投资者,客户需根据自身情况选择,网站访问者不应依赖本网站信息并将其视爲作爲或不作爲之依据。 对于任何个人依据本网站或网站的信息采取的作爲或不作爲所导致的结果,我们将毋须承担任何责任。
iMQL5自动外汇EA交易与EA指标 » [原创]MT4程序的基本结构
