mt4编程语言 c语言,MT4编程之MQL4编程语言介绍[通俗易懂]

mt4编程语言 c语言,MT4编程之MQL4编程语言介绍[通俗易懂]语言介绍MetaQuotesLanguage4(MQL4)是一种新的内置型程序用来编写交易策略。这种语言可以创建你自己的智能交易,使自己的交易策略能够完全自动地执行。而且,MQL4还能自定义客户指标,脚本和数据库。内包含了大量可以分析当前及历史报价所必须的函数,以及一些基本的运算和逻辑操作。并内置了一些基本的指标和操作命令。MetaEditor4集合了编写MQL4程序代码的各种语句,它…

大家好,又见面了,我是你们的朋友全栈君。

语言介绍

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、指标、脚本)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/146253.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月15日 下午3:20
下一篇 2022年5月15日 下午3:40


相关推荐

  • 系统运维架构师体系[通俗易懂]

    系统运维架构师体系[通俗易懂]一、系统运维架构师体系1.系统运维架构体系排列:2.Linux运维架构的薪资水平:3.Linux运维的技能进化论4.Linux运维大致的知识框架4-1.Linux系统初级体系4-2.Linux系统中高级体系5.Linux运维的具体规划实践5-1.Linux运维基础5-2.Linux运维进阶6.Linux工作的必备要求7.Linux运维学习建议一、系统运维架构师体系1.系统运维架构体系排列:Linux运维工程师应用运维工程师,大数据运维工程师,运维开发工程师,云计算运维工程.

    2022年7月17日
    19
  • 作业总结:磨皮滤镜(双边滤波bilateralFilter)代码实现[通俗易懂]

    作业总结:磨皮滤镜(双边滤波bilateralFilter)代码实现[通俗易懂]双边滤波是一种非线性的滤波方法,是结合图像的空间邻近度和像素值相似度的一种折衷处理,同时考虑空间与信息和灰度相似性,达到保边去噪的目的,具有简单、非迭代、局部处理的特点。之所以能够达到保边去噪的滤波效果是因为滤波器由两个函数构成:一个函数是由几何空间距离决定滤波器系数,另一个是由像素差值决定滤波器系数.1Python:cv2.bilateralFilter(src,d,sigm…

    2022年7月22日
    13
  • 行列式的六条运算法则整理

    行列式的六条运算法则整理性质一 行列式与它的转置行列式相等性质二交换行列式的两行 行列式取相反数性质三行列式的某一行的所有元素都乘以同一数 k 等于用数 k 乘此行列式性质四行列式如果有两行元素成比例 则此行列式等于零性质五若行列式的某一行每一个元素都可以由两个数相加得到 则这个行列式是对应两个行列式的和 举个例子 这个性质由乘法分配律可以容易得出 自行脑补 性质

    2026年3月18日
    2
  • c++获取子类窗口句柄位置_C++中各种获取窗口句柄的方法「建议收藏」

    c++获取子类窗口句柄位置_C++中各种获取窗口句柄的方法「建议收藏」AfxGetMainWndAfxGetMainWnd获取自身窗口句柄HWNDhWnd=AfxGetMainWnd()->m_hWnd;GetTopWindow函数功能:该函数检查与特定父窗口相联的子窗口z序(Z序:垂直屏幕的方向,即叠放次序),并返回在z序顶部的子窗口的句柄。函数原型:HWNDGetTopWindow(HWNDhWnd);参数:hWnd:被查序的父窗口的句柄。如果该…

    2022年7月21日
    11
  • 点餐程序android,Android点餐系统教程(登陆篇)

    点餐程序android,Android点餐系统教程(登陆篇)前言:点餐系统融合知识也不少,最多的部分都是网络。本教程是本人亲自写。若有转载,需写明原做者喔。点餐系统做用性我懒的说,何时想到了再编辑吧。html准备工做:1.JavaEE的eclipse。固然你eclipse能建web项目也能够2.mysql和Navicatformysql,由于服务器须要用mysql做为后台数据库。Navicatformysql是管理mysql可视化软件。3.Tom…

    2022年6月19日
    28
  • 解决ubuntu虚拟机桥接模式下不能上网

    解决ubuntu虚拟机桥接模式下不能上网①sudovim/etc/network/interfaces修改ip和主机在同一网段,gateway和主机一致(ipconfig-all查看主机ip信息)②重启虚拟机,重启之后配置的静态ip才能生效③配置dnssudovim/etc/resolv.conf和主机一直④重启网络sudo/etc/init.d/networkingrestart…

    2022年6月9日
    65

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号