我把MQLib开发专家的第一个试用版本发布出来了,有兴趣的朋友可以试用一下。由于时间关系,文档还在编写之中,同时因为MQLib尚未完善,所以目前限制了只能用于模拟帐号上。有兴趣的朋友请到MQLib官方网站下载:http://www.mqlib.com/chs/。
自从发布海豚小弟EA之后,很久没有和大家分享新的、原创性的东西了。其实这段时间,除了进行EA开发入门班的教学外,一直在做一个东西,这个就是MQLib,也就是我准备在近期发布出来的新产品。
开发MQLib,源于在两期EA开发入门班之后的,发觉对更多EA开发的初学者,特别是之前毫无编程方面的概念的初学者来说,MT4编程太过于专业了,简化其开发EA的工作量、降低门槛才是更为迫切的需要。因为大多数人学习这个,是为了更好地进行交易,而不是为了成为软件开发的专家,否则就有点舍本逐末了。基于这个观点,我萌发了开发MQLib这么个东西的念头。
那么,MQLib到底是个什么东西呢?简单来说,MQLib是一套由精通MT4编程的专业人士,利用MQL语言编写而成的函数包,这个函数包内置了大量的函数可供调用,其功能覆盖了MT4编程的各个方面,用户只需通过简洁明了的方式进行调用,即可轻松快捷地实现很多原本需要编写大量专业代码才能实现的复杂功能。通过站在巨人的肩膀上,用户不用再耗费太多精力在MT4编程的细节上,只需关注于交易模型的设计即可,MQLib函数库的高质量、精心设计,确保了用户交易模型的每个细节都能得到高效可靠的实现。
我把MQLib的首要目标定位为简单易用、从未接触过MT4编程的人也能很快上手,为此,MQLib将所有复杂的细节都封装起来,用户只需在代码文件中添加一句代码引用MQLib即可使用MQLib的所有功能。举个例子,下面的代码是一段很经典的判断两条均线是否交叉的代码:
... double ma1, ma2, ma3, ma4; ma1 = iMA(NULL, 0, 5, 0, MODE_SMA, PRICE_CLOSE, 1); ma2 = iMA(NULL, 0, 10, 0, MODE_SMA, PRICE_CLOSE, 1); ma3 = iMA(NULL, 0, 5, 0, MODE_SMA, PRICE_CLOSE, 2); ma4 = iMA(NULL, 0, 10, 0, MODE_SMA, PRICE_CLOSE, 2); if (ma1>ma2 && ma3<=ma4) { //发生金叉,进行相应操作.. } ...
对初学者来说,这段代码真的太繁琐,不好理解。那么,在使用了MQLib之后,代码会是怎样的呢?我们看一下:
... include "MQLib.mqh" if (SMACRoss(5, 10, PRICE_CLOSE, 1)==UP_CROSS) { //发生金叉,进行相应操作... } ...
很简单,对不?这就是MQLib的作用,把大部分常见的操作实现出来,一、两句代码就可以调用,不用再去操心那些让人头疼的实现细节了。
MQLib的第一个版本已经开发完成,目前正在编写使用手册,很快就会和大家见面了。