语言介绍

MetaQuotes Language 4 (MQL4) 是一种新的内置型程序用来编写交易策略。 这种语言可以创建你自己的智能交易,使自己的交易策略能够完全自动地执行。而且,MQL4 还能自定义客户指标,脚本和数据库。

内包含了大量可以分析当前及历史报价所必须的函数,以及一些基本的运算和逻辑操作。并内置了一些基本的指标和操作命令。

MetaEditor 4集合了编写 MQL4 程序代码的各种语句,它能帮助使用者方便地写出规范的代码。 MetaQuotes Language Dictionary 是 MQL4 语言的帮助工具,它包含了我们在使用工程中所有可能用到的函数。

编程特点

MetaQuotes Language 4(MQL4) 可以编写不同作用的程序代码:

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

智能交易存储在 terminal_directory\experts。

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

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

脚本 是执行单一功能的一段程序,和 智能交易不同,脚本不能单独执行,只能被调用。

脚本存储在 terminal_dictionary\experts\scripts。

数据库 常被使用的自定义函数的集合。数据库不能单独运行。

数据库建议存储在terminal_directory\experts\libraries。

包含文件 包含文件常被使用的程序块源代码,这些文件能够被包含在智能交易,脚本,客户指标和数据库 的源代码中。 使用包含文件比调用资料库更灵活快捷。

包含文件交易储存在 terminal_directory\experts\include。

语法简介

MetaQuotes Language 4(MQL4)的语法和C语言比较类似并且是一款面向过程语言。如果你C语言基础非常好很快就能上手。

除了以下这些特点和C语言不同:

没有运算地址;

没有 do ... while 语句;

没有 goto ... 语句;

没有 [条件][表达式 1]:[表达式 2] 语句;

没有复合数据类型 (结构);

复合负值是不允许的,例如:val1=val2=0; arr[i++]=val; cond=(cnt=OrdersTotal)>0; 等等;

逻辑表达式的计算完成前不可以提前终止。

主要的数据类型如下七个:

整型数据 (int)

布尔数据 (bool)

字符数据 (char)

字符串数据 (string)

浮点型数据 (double)

颜色数据 (color)

日期时间数据 (datetime)

主要的储存类型如下两个:

外部参数储存(extern)

静态变量储存(static)

主要的操作符类型如下十个:

终止操作符(break)

多重选择操作符(case)

继续操作符(continue)

多重选择操作符 (default)

条件操作符(else)

循环操作符(for)

条件操作符(if)

返回操作符(return)

多重选择操作符(switch)

循环操作符(while)

主要的其他如下两个:

假 0(false)

真 1(true)

主要的算术运算符如下八个:

+(加法运算符)

- (减法运算符)

-(改变运算符)

* (乘法运算符)

/ (除法运算符)

% (取摸运算符)

++(增量运算符)

-- (减量运算符)

主要的赋值运算符如下十一个:

= ( 值 )

+= (加法值)

-= (减法值)

*= ( 乘法值)

/= (除法值)

%=  (百分比值)

>>= (右移值)

<<= (左移值)

&= (位逻辑运算符 AND值)

|= (位逻辑运算符OR值)

^=  (位逻辑运算符 OR值)

主要的逻辑运算符如下十六个:

|| (逻辑或)

&& (逻辑并)

!  (真假)

-  (改变运算符)

~ (位逻辑运算符)

& (位逻辑运算符 AND )

| (位逻辑运算符 OR)

^ (位逻辑运算符 OR)

<< (左移)

>> (右移)

< (小于)

<= (小于等于)

> (大于)

>= (大于等于)

== (等于)

!= (不等于)

编程工具

MT4采用自带集成MetaEditor作为代码编译器。简单讲,编译器就是将“高级语言(MQL4)”翻译为“机器语言(低级语言)”的程序。一个现代编译器的主要工作流程:源代码  → 预处理器 → 编译器 → 目标代码 → 链接器 → 可执行程序 (EA、指标、脚本)

mql4 c语言,MT4编程之MQL4编程语言介绍相关推荐

  1. c语言游戏如何分享,c语言怎么编游戏_编程语言分享讨论总汇吧吧_直线网_最专业的数字艺术学习交流平台...

    纯真童趣的<泡泡堂>,还有武林情仇,笑傲江湖的<剑侠情缘on line>.它是e时代常谈的话题,是交互式娱乐的主力军,是一种 高层次的综合艺术,更是一个民族的文化,世界观的全新 ...

  2. 瓷砖覆盖地板c语言程序,编程之美4.2 瓷砖覆盖地板

    题目 这个题目的题意很容易理解,在一个N*M的格子里,我们现在有两种类型的 砖块,1 * 2 和 2 * 1,问一共有多少种方案,可以将整个N*M的空间都填满. 最简单的例子就是下面的了: 编程之美中 ...

  3. 网络编程多人聊天c语言,网络编程之TCP多人聊天

    服务端转发信息: from socket import * from threading import Thread sockets=[] def main(): server_socket=sock ...

  4. python之torchlight使用_python游戏编程之pgzero使用介绍

    Pgzero是在pygame基础上封装的一个简化版本软件包,使得在python环境下进行游戏编程更加简单.适合于入门学习者. 怎么用 开发一款简单的小游戏,我们可能会立刻想到以下几个要素: 1. 创建 ...

  5. 并发编程之Disruptor框架介绍和高阶运用

    1.   Disruptor是什么 1.1   技术背景 LMAX是在英国注册并受到FCA监管(监管号码为509778)的外汇黄金交易所, LMAX架构是LMAX内部研发并应用到交易系统的一种技术.它 ...

  6. Python语言学习:python编程之pip命令集合、python调式、头部代码、代码运行等常见概念详细攻略(解决问题为导向)

    Python语言学习:python编程之pip命令集合.python调式.头部代码.代码运行等常见概念详细攻略(解决问题为导向) 目录 一.pip命令集合 1.pip常规命令 1.1  pip下载se ...

  7. 易语言编程之CE过驱动保护(ACE)调试教程

    易语言编程之CE过驱动保护(ACE)调试 很多时候,驱动保护很让人头疼, 一用CE,就提示开了程序要结束, 你一搜到地址鼠标右键想看看访问和写入的代码地址,找基址时候,游戏就退出了, 这个教程教你 可 ...

  8. 网络编程+go+java_GO语言的进阶之路-网络编程之socket

    GO语言的进阶之路-网络编程之socket 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是socket; 在说socket之前,我们要对两个概念要有所了解,就是IP和端口 ...

  9. GO语言的进阶之路-网络编程之socket

    GO语言的进阶之路-网络编程之socket 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是socket; 在说socket之前,我们要对两个概念要有所了解,就是IP和端口 ...

最新文章

  1. 分享一个C#使用AT指令控制语音猫的例子
  2. 有多个重载参数pow_面试深刨——150分面重载
  3. C#PDF转Image
  4. n个数求和 java_暴力+辗转相除法——N个数求和
  5. Android短信发送流程之多收件人发送(原)
  6. 最小径集的算法_如何为数据集选择正确的聚类算法?
  7. vue项目,cli-3.0项目部署运行报错:Uncaught SyntaxError: Unexpected token
  8. Speaker Recognition: Gaussian probabilistic LDA (PLDA)理解
  9. CC_STACKPROTECTOR防内核堆栈溢出补丁分析【转】
  10. SVN忽略提交文件设置
  11. 【HTML5】Web前端——制作 3D 旋转魔方相册
  12. テーブルTVARVとTVARVCについて
  13. 201809CCF真题
  14. Linux服务器被挖矿及解决办法
  15. 互联网金融概念股龙头有哪些
  16. HTML用画布画哆啦A梦,前端小项目:使用canvas绘画哆啦A梦
  17. VTM10.0代码学习10:EncGOP_compressGOP()
  18. js函数(function)
  19. 老男孩python全栈9期全套视频_[全套视频] 老男孩Python全栈7期:Flask全套组件及原理剖析视频教程,全套视频教程学习资料通过百度云网盘下载...
  20. 图片轮换的按钮如何通过像素定位

热门文章

  1. 高光谱图像分类_高光谱图像分析-分类
  2. Libra最大的竞争对手是什么?Calibra高管给出答案
  3. C语言 数组的指针和指向数组的指针变量
  4. 从服务器信息检索,信息检索方法
  5. 树莓派打造一个适合音乐制作的系统(声卡部分)
  6. ZooKeeper之分布式环境搭建
  7. 新加坡风险投资公司将投资1000万美元建立加密货币区块链投资基金
  8. 机器学习--逻辑回归模型(Logistic Regression)
  9. 建模中常用的30各MATLAB程序和函数
  10. SQLyog Community免费版下载地址