MQL4经典入门第1课

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

MQL4经典入门第1课Bycoders’guru欢迎来到MQL4语言课程。在这个系列里,我将试着通过直接而迅速的例子给你一个全面的教程来剥去MQL4语言的神秘和复杂。在这个系列课程里,我还将告诉你如何使用MQL4语言编写你自己的智能交易系统,技术指标和脚本。如果你是一个c语言的程序员,那么在我的课程开始之前,你甚至已经知道了许多关于MQL4语言的规则。如果你以前没有书写过任何程序语言,那也没问题。我同样将指导你全面的理解程序编制的概念。那么,让我们从起点开始吧。MQL4?What?WhyAndWhere?MQL4代表MetaQuotesLanguage4.MetaQuotes是组建MetaTrader交易平台的公司。并且为了是它比其他的交易平台更强大,公司通过一种允许用户(你)编写自己的交易策略的内置程序语言来扩展它。这种语言允许你创建下面的任何一种:■智能交易是一种连接到特定图表的自动交易系统。它能够根据设置的节点自动启动,当它开始运行后,它不会同时去处理另一个新的指令(也就是说必须等到当前程序完成)。这种交易系统能够在提醒用户可以交易的同时,将交易定单自动送到交易服务器。与大多数交易系统一样,它也能够用历史数据测试交易策略,并在图表上显示出来。智能交易存储在terminal_directory\experts。■自定义指标可用来编写新的技术指标,和内置的指标一样,它不能用来进行自动交易,只能作为分析数据的工具。自定义指标储存在terminal_directory\experts\indicators。■脚本是执行单一功能的一段程序,和智能交易不同,脚本不能单独执行,只能被调用。脚本存储在terminal_dictionary\experts\scripts。这就是“什么”是MQL4?“为什么”使用MQL4?现在,“在哪儿”我可以书写MQL4?书写你自己的MQL4代码就像世界上的其他任何事情,你可以选择两种方法种的一种,困难的和简单的。1-困难的:困难的方式是使用你喜欢的文字编辑工具和命令提示符来编辑你的程序。记事本是个不错的选择,但不要忘了两件事情:1-保存你创建的文件为无格式的文本。(plaintextformat)2-保存文件为.mp4(这样方便用MetaEditor重新编辑它),但是你也可以保存它为任何你喜欢的扩展名。保存完你的程序后,还有一个额外的步骤来让你的代码可以众所周知的出现。那就是编译步骤。编译的意思是转换你已经写好的人类易读的语言为电脑能理解的机器语言。MetaTrader已经装置了一个它自己的编译器:MetaLang.exe。(这个程序将转换你的脚本为机器语言)MetaLang.exe是一个带两个参数的命令行程序,它输出.ex4文件。(.ex4为Metatrader可识别的文件)第一个参数是“options”,它只有一个可选项–q退出。第二个参数是你的.mql文件的完整路径。语法格式为:Metalang[options….]filename例:1-找到你的metalang.exe的路径,它和MetaTrader在同一个路径下(例如:D:\ProgramFiles\MetaTrader4)2-创建一个批处理文件compile.bat(或者任何你喜欢的名字。)3-把下面的几行代码写进bat文件并保存它:cdD:\ProgramFiles\MetaTrader4metalang-qD:\ProgramFiles\MetaTrader4\my_first_mql4_script.mq4(不要忘了把路径更改为你的MetaTrader的安装路径).4-运行这个批处理文件,如果你像我一样幸运的话,你将看到下面的画面。与你看见的一样,你将获得“my_first_mql4_script.ex4”输出文件。2-简单的:Metatrader已经装置了一个很好的IDE(integrateddevelopmenteditor,集成开发环境)——MetaEditor,它有如下特性:1-当你读写代码的时候它是一个有着MQL4语言强大和不同特性的文本编辑器。2-方便的编译你的程序,只要按下F5,MetaEditor将为你做完所有的困难工作并输出“ex4”文件。(另外它还很容易的看出你的程序那里出错了)3-内置参考字典。你可以访问高亮的关键字。如果想进一步了解它,请按F1.在接下来的课程里,我们将知道更多的关于MetaEditor。今天我仅仅是给大家打个招呼,明天我们将开始真正的工作,你将学习MQL4的语法。非常欢迎批评指正。明天见。MQL4课程Bycoders’guru语法我希望你满意那个试着回答了:“什么”是MQL4?“为什么”使用MQL4和“在哪儿”书写MQL4的欢迎课程。方法或怎么做(how)永远是最大最重要的问题,接下来的全部课程就是答案。现在,我希望你清空你思想中的任何混乱想法,并且认真阅读下面的这些概念。我们今天正在谈论的是关于MQL4的语法规则。就像我以前告诉你的那样,如果你是个c语言或者c++的程序员,那么在我的课程没开始之前你就已经知道了许多MQL4的事情。这是因为MQL4的语法和c语言的语法很像。当我们学习一种语言的语法时,我们同时在学习它的原理和书写规则。它有以下几部分组成:1、格式2、注释3、标识符4、保留字让我们把它分成以下几块。一、格式当你书写代码的时候,你可以自由的使用空格,制表符和空行来分隔你的代码和代码行,使它们更加的易读和美观。例如,下面这些语句行在MQL4里都是正确的:但是,就像你看到的,第一行更易读和容易理解。在MQL4的语言规则里有两个例外:1、在“contorllingcompilation”里不能使用新行。(我实在不知道老外在这里什么意思,不过还好。因为他说)在下一课里你将知道关于“contorllingcompilation”更多,现在只要记住这个例外就好了。例如下面的代码行是错误的,并且MQL4编译的时候将会报错:这是正确的“contorllingcompilation”:2、在常数值,标识符和关键字的中间不能使用空格或新行。例如,这一行是正确的:Extern和int是关键字,MA_Period是标识符,13是常数值。在下一课,你将知道的更多。下面的这些行是不正确的:注意1和3之间的制表符。注意关键字extern中间的制表符。二、注释为了使程序设计世界更容易些,任何程序语言都要它自己书写注释的风格。代码行里的注释会被汇编器忽略,但它使你的程序更加的清楚和易懂。DoubleMacdCurrent,MacdPrevious,SignalCurrent:DoubleMacdCurrent,MacdPrevious,SignalCurrent:DoubleMacdCurrent,MacdPrevious,SignalCurrent:假定你在夏天写了某个程序,到了冬天你再读它的时候,如果没有注释——尽管你是代码的编写者——你不能理解全部的这些谜一样的代码行。MQL4(c++)使用两种注释方式:1、单行注释单行注释开始于“//”,结束于一个新行。例如:2、多行注释多行注释开始于“/*”,结束于”*/”。例如:你也可以像下面这样在多行注释里嵌套一个单行注释:这也是争取的注释:但这样是错误的:三、标识符标识符用来给变量、函数和数据类型进行命名,长度不能超过31个字节你可以使用数字0-9、拉丁字母大写A-Z和小写a-z(大小写有区分的)还有下划线(_)。此外首字母不可以是数字,标识符不能和保留字冲突.例如MA_Period在这是就是个标识符:让我们来看一些例子:Name1正确的_Name1正确的1Name错误的(首字母不能是数字)~Name错误的(不能使用~)N~ame错误的(不能使用~)I_love_my_country_and_my_country_loves_all_the_world错误的(不能超过31个字符)Color正确的(注意C是大写)Color错误的(color是保留字)四、保留字下面列出的是固定的保留字。不能使用以下任何保留字进行命名。(译者注:都是小写。)数据类型存储类型操作符其他boolexternbreakfalsecolorstaticcasetruedatetimecontinuedoubledefaultintelsestringforvoidifreturnswitchwhile例如下面的这些代码行是不正确的:我希望你能对这一课感兴趣。下一课我们将讲关于“数据类型”。准备好,真正困难的工作将要开始了。最后感谢大家,欢迎回帖批评指正。

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功