什么是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