什么是MQL?MetaQuotes Language 4 (MQL4)语言是MT4软件为了编写出执行交易策略的内置编程语言。我们可以通过编写EA(Expert Advisors)来控制MT4客户端按照我们的预先定义好的交易策略来执行外汇交易。另外,我们可以使用mql来编写技术分析指标,脚本和库。
1)MQL的语法
MQL的语法与我们平时见到的C语言语法极其类似,但仍然有以下不一致的地方:
一:没有地址运算符。
二:没有do while操作语句
三:没有goto语句。
四:没有?::语句。
五:没有结构体。
六:不支持复杂的赋值语句,比如 val1=val2=0; arr[i++]=val; cond=(cnt=OrdersTotal)>0;这种复杂语句不被支持。
2)注释
多行注释从/*开始并以*/结束。注释符不能嵌套,只能头尾各一个。单行注释符为//,仅注释一行。我们写程序的时候要养成注释的习惯,可以让程序更好理解,同时MQL编译器自动忽略掉注释的内容。注释的内容只给我们人看,不是给机器看的。比如:
// 这个是单行注释
/* 这个是多行注释
int i = 0;
注释里面爱写什么都行
*/
3)标识符
标识符是程序里面变量,函数,数据类型的名称,长度不能超过31个字符,标识符可以由数字,大小写字母a到z和A到Z,下划线(_),其中第一个符号不能是数字,并且标识符不能与保留字一样。什么是保留字请看下文。
4)保留字
保留字是MQL语言定义好的单词,每个单词都有这特殊的意义。
保留字如下:
数据类型:bool,color,datetime,double,int,string,void
存储类型: extern,static
操作符:break,case,continue,default,else,for,if,return,switch,while
其他:false,true