购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.6 本章小结

本章我们学习了MQL4的一些基础知识,包括EA的结构、运算规则,以及一些常用函数的介绍,这些都是我们学习编程的基础。当然,限于本书的篇幅,我们介绍的内容有限,还有很多函数没有讲解到,没有讲解到的内容都可以在MQL4的帮助文档中找到。讲解到的这些函数都是经常能够使用到的,想要编写出属于自己的自动化交易程序,就要学习并能够灵活使用这些函数。

1.本章作业

利用本章介绍的各类函数,用MQL4语言写出下面的条件表达式。

(1)今天的开盘价格比昨天的开盘价格高50点。

(2)今天的开盘价格比昨天的开盘价格高50点,昨天的开盘价格比前天高100点。

(3)货币对“EURUSD”的1小时最高价格比最低价格高30点。

(4)时间是2018年6月18日12时24分。

(5)账户盈利688美元。

(6)货币对“EURUSD”的点差是16。

(7)a的值是18,打印a的值。

2.作业答案

(1)iOpen(NULL,PERIOD_D1,0)-iOpen(NULL,PERIOD_D1,1)>50*Poi nt

(2)iOpen(NULL,PERIOD_D1,0)-iOpen(NULL,PERIOD_D1,1)>50*Poi nt &&iOpen(NULL,PERIOD_D1,1)-iOpen(NULL,PERIOD_D1,2)>100*Point

(3)iHigh("EURUSD",PERIOD_H1,0)-iLow("EURUSD",PERIOD_H1,0)>30*Point

(4)Year()==2018&&Month()==6&&Day()==18&&Hour()==12&&Minute ()==24

(5)AccountProfit()==688

(6)MarketInfo("EURUSD",MODE_SPREAD)==16

(7)double a=18;Print("a的值是"+a);

3.答案说明

我们先来看两行代码:

(1)if(a==16) {b=12;}

(2)double a=16,b=12;

第一行代码的意思是,如果a的数值等于16,则b的值设定为12。第二行代码的意思是把a的数值设定为16,b的数值设定为12。

以这两行代码为例是为了说明“==”和“=”的区别。“==”是一种逻辑运算符号,我们在判断两者的逻辑关系时要用到,因此在“()”里面使用“==”;“=”是一种赋值运算符号,在给一个变量赋值时要用到,通常在“{}”里面使用“=”。

因为第1~6道作业的表达式都将作为条件语句,要在“()”里使用,因此我们在表达式中使用的都是“==”,而第7道作业是一个赋值语句,因此使用“=”。 U2VKyorTU5H2leBgkh/MkPq4V21NsVCKOQzBhPTTrQjT9SN/DjKP1WUwRQg89nlQ

点击中间区域
呼出菜单
上一章
目录
下一章
×