EA编程入门教程:MQL语法基础详解
什么是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
