MQL4经典入门第1课 联系客服

发布时间 : 星期一 文章MQL4经典入门第1课更新完毕开始阅读4331b8f59b6648d7c0c74676

MQL4 经典入门 第1课

By coders’ guru

欢迎来到MQL4语言课程。

在这个系列里,我将试着通过直接而迅速的例子给你一个全面的教程来剥去MQL4语言的神秘和复杂。 在这个系列课程里,我还将告诉你如何使用MQL4语言编写你自己的智能交易系统,技术指标和脚本。

如果你是一个c语言的程序员,那么在我的课程开始之前,你甚至已经知道了许多关于MQL4语言的规则。如果你以前没有书写过任何程序语言,那也没问题。我同样将指导你全面的理解程序编制的概念。 那么,让我们从起点开始吧。 MQL4?What? Why And Where? MQL4代表MetaQuotes Language 4.

MetaQuotes是组建MetaTrader交易平台的公司。并且为了是它比其他的交易平台更强大,公司通过一种允许用户(你)编写自己的交易策略的内置程序语言来扩展它。 这种语言允许你创建下面的任何一种:

■智能交易 是一种连接到特定图表的自动交易系统。它能够根据设置的节点自动启动 ,当它开始运行后,它不会同时去处理另一个新的指令(也就是说必须等到当前程序完成)。 这种交易系统能够在提醒用户可以交易的同时,将交易定单自动送到交易服务器。与大多数交易系统一样, 它也能够用历史数据测试交易策略,并在图表上显示出来。

智能交易存储在 terminal_directory\\experts。

■自定义指标 可用来编写新的技术指标,和内置的指标一样,它不能用来进行自动交易, 只能作为分析数据的工具。

自定义指标储存在 terminal_directory\\experts\\indicators。

■脚本 是执行单一功能的一段程序,和 智能交易不同,脚本不能单独执行,只能被调用。 脚本存储在 terminal_dictionary\\experts\\scripts。 这就是“什么”是MQL4?“为什么”使用MQL4? 现在,“在哪儿”我可以书写MQL4?

书写你自己的MQL4代码就像世界上的其他任何事情,你可以选择两种方法种的一种,困难的和简单的。 1- 困难的:

困难的方式是使用你喜欢的文字编辑工具和命令提示符来编辑你的程序。记事本是个不错的选择,但不要忘了两件事情:

1- 保存你创建的文件为无格式的文本。(plain text format) 2- 保存文件为.mp4(这样方便用MetaEditor重新编辑它),但是你也可以保存它为任何你喜欢的扩展名。 保存完你的程序后,还有一个额外的步骤来让你的代码可以众所周知的出现。那就是编译步骤。 编译的意思是转换你已经写好的人类易读的语言为电脑能理解的机器语言。 MetaTrader 已经装置了一个它自己的编译器:MetaLang.exe。(这个程序将转换你的脚本为机器语言) MetaLang.exe是一个带两个参数的命令行程序,它输出.ex4文件。(.ex4为Metatrader可识别的文件) 第一个参数是“options”,它只有一个可选项 –q 退出。 第二个参数是你的.mql文件的完整路径。 语法格式为:

Metalang [options….] filename 例:

1- 找到你的metalang.exe的路径,它和MetaTrader在同一个路径下(例如:D:\\Program Files\\MetaTrader 4)

2- 创建一个批处理文件compile.bat(或者任何你喜欢的名字。) 3- 把下面的几行代码写进bat文件并保存它: cd D:\\Program Files\\MetaTrader 4

metalang -q \(不要忘了把路径更改为你的MetaTrader的安装路径).

4- 运行这个批处理文件,如果你像我一样幸运的话,你将看到下面的画面。

与你看见的一样,你将获得“my_first_mql4_script.ex4”输出文件。

2-简单的:

Metatrader已经装置了一个很好的IDE(integrated development editor,集成开发环境)——MetaEditor,它有如下特性:

1- 当你读写代码的时候它是一个有着MQL4语言强大和不同特性的文本编辑器。

2- 方便的编译你的程序,只要按下F5,MetaEditor将为你做完所有的困难工作并输出“ex4”文件。(另外它还

很容易的看出你的程序那里出错了)

3- 内置参考字典。你可以访问高亮的关键字。如果想进一步了解它,请按F1.

在接下来的课程里,我们将知道更多的关于MetaEditor。

今天我仅仅是给大家打个招呼,明天我们将开始真正的工作,你将学习MQL4的语法。 非常欢迎批评指正。 明天见。

MQL4课程 By coders’ guru

语法 我希望你满意那个试着回答了:“什么”是MQL4?“为什么”使用MQL4和“在哪儿”书写MQL4的欢迎课程。 方法或怎么做(how)永远是最大最重要的问题,接下来的全部课程就是答案。 现在,我希望你清空你思想中的任何混乱想法,并且认真阅读下面的这些概念。 我们今天正在谈论的是关于MQL4的语法规则。

就像我以前告诉你的那样,如果你是个c语言或者c++的程序员,那么在我的课程没开始之前你就已经知道了许多MQL4的事情。

这是因为MQL4的语法和c语言的语法很像。

当我们学习一种语言的语法时,我们同时在学习它的原理和书写规则。它有以下几部分组成: 1、 格式 2、 注释 3、 标识符

4、 保留字

让我们把它分成以下几块。

一、格式

当你书写代码的时候,你可以自由的使用空格,制表符和空行来分隔你的代码和代码行,使它们更加的易读和美观。

例如,下面这些语句行在MQL4里都是正确的:

但是,就像你看到Double MacdCurrent,MacdPrevious,SignalCurrent: 的,第一行更易读Double 和容易理解。 MacdCurrent, 在MQL4的语言MacdPrevious, 规则里有两个例SignalCurrent: 外: Double MacdCurrent, MacdPrevious, SignalCurrent: 1、在

“contorlling compilation”里不能使用新行。(我实在不知道老外在这里什么意思,不过还好。因为他说)在下一课里你将知道关于“contorlling compilation”更多,现在只要记住这个例外就好了。 例如下面的代码行是错误的,并且MQL4编译的时候将会报错:

这是正确的“contorlling compilation”:

2、在常数值,标识符和关键字的中间不能使用空格或新行。 例如,这一行是正确的:

Extern和int是关键字,MA_Period是标识符,13是常数值。 在下一课,你将知道的更多。 下面的这些行是不正确的:

注意1和3之间的制表符。

注意关键字extern中间的制表符。

二、注释

为了使程序设计世界更容易些,任何程序语言都要它自己书写注释的风格。 代码行里的注释会被汇编器忽略,但它使你的程序更加的清楚和易懂。