首页 MT4编程入门详解

MT4编程入门详解

举报
开通vip

MT4编程入门详解目录 MT4编程入门(一):MT4自定义指标的基本操作 MT4编程入门(二):指标源码中的常用符号说明 MT4编程入门(三):自定义变量 MT4编程入门(四):自定义函数 MT4编程入门(五):自定义数组 MT4编程入门(六):市场数据取值 MT4编程入门(七):判断语句 MT4编程入门(八):循环 MT4编程入门(九):MT4自定义指标的结构 MT4编程入门(十):画一条指标线 MT4编程入门(十一):MT4的报警 MT4编程入门(一):MT4自定义指标的基本操作 MT4自定义指标的保存目录、指标编...

MT4编程入门详解
目录 MT4编程入门(一):MT4自定义指标的基本操作 MT4编程入门(二):指标源码中的常用符号说明 MT4编程入门(三):自定义变量 MT4编程入门(四):自定义函数 MT4编程入门(五):自定义数组 MT4编程入门(六):市场数据取值 MT4编程入门(七):判断语句 MT4编程入门(八):循环 MT4编程入门(九):MT4自定义指标的结构 MT4编程入门(十):画一条指标线 MT4编程入门(十一):MT4的报警 MT4编程入门(一):MT4自定义指标的基本操作 MT4自定义指标的保存目录、指标编缉器与指标调用 一、MT4自定义指标保存在C:\Program Files\MetaTrader 4\experts\indicators这个目录中, 该目录中主要有二种类型的文件, 一种是mq4文件,这是MT4自定义指标的源码文件,是一种高级语言文件,可以人工编写修改,机器不能直接执行,但能在MT4启动时自动编译为ex4可执行文件。 另一种就是ex4文件,这是MT4自定义指标的可执行文件,由mq4文件编译得到。 mq4文件必须编译为ex4文件才能被MT4执行。 但ex4文件是机器码文件,人工不可修改 另外还有一个文件是mqlcache.dat,它用来保存目录中的文件信息,如果MT4无法自动编译,只要删除此文件即可解决问题 mq4文件编译为ex4可执行文件有两种方法: 1、MT4启动时,会自动把此目录中的mq4文件编译为ex4文件。 2、用MQ语言编辑器打开mq4文件,点一下“编写”按钮,即可生成ex4文件 二、下载保存mq4文件、ex4文件 在论坛上我们经常看到有mq4文件、ex4文件可供下载,我们只要把它们保存到C:\Program Files\MetaTrader 4\experts\indicators这个目录,也就是下面这个目录中,就可以了。如果下载的是ex4文件,那可以直接调用;如果是mq4文件,则需要重启动MT4,让系统自动编译生成ex4可执行文件。如果下载的是rar、zip等类型的压缩文件,还必须下载后解压到此目录才能使用。 三、将源码保存为源码文件 在论坛上,我们也经常能看到指标源码贴在网页上,但没有mq4、ex4等文件可以下载,只能复制源码。此时需要我们自己动手将源码保存为源码文件,那也没关系,非常地简单,多点几下鼠标就搞定。 1、打开MQ语言编辑器 2、在MQ语言编辑器中新建一个文件,文件名一定要输,别的随便操作都没关系。 3、删除新文件里面的所有内容,成为一个空文件, 4、接着我们就可以将网页上源码复制粘贴进来 试着点一下“编写”,如果左下角出现“0错误,0警告”,那说明源码没问题,编译通过了,成功生成了ex4可执行文件 5、还有很重要的一点,就是要把源码文件保存到正确的目录中 保存后,再点一下编写。 到此,源码保存完成。 当然,我们也还有另的办法: 可以打开一个原已存在的mq4文件,然后另存为你需要的文件名,再删除文件中的所有内容成为空文件,把网页上的源贴到文件中保存即可 也可以在记事本中新建一个文件,把网页上的源码贴进记事本,然后取个文件名保存到上面提到的目录,不过文件后缀必须输入mq4,保存类型选择“所以文件” 四、mt4程序调用自定义指标 这非常简单 MT4编程入门(二):指标源码中的常用符号说明 一、注释符:单行注释“//”、多行注释“/*  */” 程序不执行注释,注释内容仅供阅读或保留不用的语句 在MQ语言编辑器中,注释内容以灰色显示 二、分号“;” 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 示一个语句结束 三、逗号“,” 表示一个语句内部间隔,不结束语句。 四、等于号“=” 赋值语句,把等号后面的值赋给等号前的变量中 五、加号“+” 整数或小数,则表示值相加;字符串,则表示前后连接。 六、加加“++” 表示把符号前的变量值加1,例如:“i++;”  这实际上就是:“i=i+1;”的简写,表示i的值加1 七、加等于“+=” 表示把符号后的值加到符号前的变量中。例如“i+=2;”,实际上就是“i=i+2;”的简写,表示i的值加2 八、双等号“==” 等于号。用于逻辑判断,双等号前后值相等,则返回逻辑值“真true”;双等号前后值不相等,则返回逻辑值“假false” 九、叹号等号“!=” 不等于号。用于逻辑判断,不等号前后值不相等,则返回逻辑值“真true”;不等号前后值相等,则返回逻辑值“假false” 十、“&&” 逻辑符“并且” 十一、“||” 逻辑符“或者” 十二、大括号“{}” 表示函数体。 {}内部为函数体语句。 MT4编程入门(三):自定义变量 一、自定义变量在使用前,必须先创建(定义),设定变量的类型和名称。 创建时可同时赋值,也可以不赋值。名称可以使用中文字符。 例: int  mark;          创建一个整型变量,变量名为“mark”。 bool 是否报警=true;  创建一个逻辑型变量,变量名为“是否报警”,同时,赋初值“true” 二、类型和类型定义词 自定义变量的基本类型有: 1、整形(int):就是整数,包括负整数 2、双精度小数(double):可以简单地理解为带小数位的数 3、字符串型(string)。 4、逻辑型(bool):其值分别为“true、false”,即“真、假”,也可以写成“1、0”(1真,0假)。 类型定义词仅在创建变量时使用,后面使用变量时,就不能再加类型定义词了 三、附加变量 附加变量就是在程序投入使用后,变量值允许用户自由更改的变量,一般用作程序参数。 一般指标,例如MACD(12,26,9)参数输入就是通过附加变量实现,(12,26,9)分别为三个附加变量的默认值。 定义附加变量只需在变量定义语句前加“extern” 例: extern int 周期=9;  创建一个整型附加变量,变量名为“周期”,默认值为9,允许用户在程序外部修改参数值 MT4编程入门(四):自定义函数 自定义函数与数学函数在本质上是一致的 例如:数学函数ft(x,y)=3x+2y (x,y为正整数) 写成程序语句就是: int ft(int x,int y) { int temp; temp=3*x+2*y; return(temp); } 一、和自定义变量一样,自定义函数在使用前,也必须先设立,以定义其类型、名称、参数和运算语句。 函数类型、名称、参数位于函数头部(参数间以逗号分隔), 大括号中的是运算语句,也就是函数体部分。 return语句为函数结束语句,return后面括号中的值为函数返回值,即函数运算结果。 上例中,int为函数类型,表示该函数的返回值(运算结果)是整数; (x,y)为参数,由于自定义变量使用之前都必须先创建,所以要加上类型定义词int ft为函数名,有了函数名,我们就可以在别处用ft(2,1)的形式来调用此函数; 函数体部分有三句: 第一句,定义一个整形变量temp 第二句,计算temp的值 第三句,函数结束,返回调用点,以temp的值作为本函数返回值。 此函数也可以简写为:int ft(int x,int y)  {return(3*x+2*y);} 二、函数类型与类型符 函数类型就是函数返回值(运算结果)的类型,与自定义变量类型差不多 有整型(int)、双精度型(double)、字符串型(string)、逻辑型(bool)等, 还有一种函数是以函数运行为目的,运行结束后不需要返回值也没有返回值的,则函数类型可以写成void(无值型) 三、函数中如果定义了自定义变量,那么此变量仅在本函数内部存在,函数运行结束时,自定义变量也就自动注销。 上例中,有x、y、temp三个自定义变量,在函数运行时创建,在函数运行结束时自动消失,仅在函数内部有效,与函数外部无关。 四、函数的调用 函数调用非常简单,只要函数名正确、参数个数一致、类型相同就能正确调用 如我们前面创建了ft(x,y)函数,则别处我们可以用ft(4,5)等样式来调用ft(x,y)函数求值。 调用时,传递参数值给ft(x,y)函数(按顺序把4传给x,把5传给y),返回结果22后继续执行主程序。 MT4编程入门(五):自定义数组 一、数组是一系列同类型变量的集合,可以同时存储多个数值。 例:int aa[4]={4,3,2,1}; 这是一个数据名为aa、包含了4个元素的整数型数组(即数组长度为4),可以同时存储4个数值。 二、自定义数组也必须“先建立,后使用” 创建(定义)时,必须设定类型和名称。 创建(定义)时,数组的元素个数也可以设定,也可以不设定 数组中第一个元素的编号为0,第二个为1,以此类推。编号使用方括号括起来 在这上例中aa[0]的值为4、aa[1]的值为3、aa[2]的值为2、aa[3]的值为1 创建(定义)数组的同时,可以赋初值,也可以不赋初值。 例: int bb[];  创建数组bb,不设定数组元素个数 int cc[8];  创建数组cc,设定数组元素为8个,不赋初值 int dd[3]={9,8,7};  创建数组dd,设定数组元素为4个,并赋初值 赋值后,dd[0]的值为9、dd[1]的值为8、dd[2]的值为7 int ee[9]={0,1,2,3};  创建数组ee,设定数组元素为9个,但只给前4个元素赋初值 三、数组使用时的赋值 数组的赋值必须指定明确的赋值对象,除了新建数组时可以批量赋值外,数组元素必须一个一个赋值 例如:dd[2]=1; 这是对数组dd的第3个元素dd[2]([0]是第1个,[2]表示第3个)重新赋值为1 在这里,没有整数型变量定义符int, 这样,数组dd原有三个值{9,8,7}就变为{9,8,1} 四、数组的引用 数组只是一系列变量的集合,所以每次只能使用数组中的一个元素。 数组的引用必须指定明确的引用对象,一次只能引用一个。如果需要使用整列数组,则必须逐个使用。 例如:数组aa[4]的值为{4,3,2,1} 我们用aa来引用数组aa中的值 当i=0时,aa[i]的值为4 当i=1时,aa[i]的值为3 当i=2时,aa[i]的值为2 当i=3时,aa[i]的值为1 MT4编程入门(六):市场数据取值 一、预定义数组(MT4已经定义好的,可以直接使用)
本文档为【MT4编程入门详解】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_511210
暂无简介~
格式:doc
大小:36KB
软件:Word
页数:0
分类:互联网
上传时间:2019-02-09
浏览量:58