导航:首页 > 编程语言 > mql5语言编程

mql5语言编程

发布时间:2023-04-08 19:02:16

‘壹’ 想学习关于外汇EA的编程语言,不知道从何学起

EA的编程只能自学。现在市场上没有培训学校。何解呢

因为EA的语言只是基于MT4使用的MQ编程语言。也就是说,如果不是做外汇、黄金交易的,就毫无用处。当然还有一个最主要的原因就是,你在市场上见过有什么培训学校是培训炒股,抄外汇的呢?大学的金融课程也不是叫怎么做交易的啊。

为啥呢,因为这种外盘搏杀的金融交易其实世界上一门最复杂最高深的学问。全世界都没有任何学校教,更没有文凭。

‘贰’ MT5是什么

MT5是MetaTrade 5的英文缩写。
它是由MetaQuotes platform(迈达克)公司重编写的一款外汇、期货等金融产品的市场行情接收软件的最新版本。
MetaQuotes 公司成立于2000年,是一家专业提供在线交易平台和分析工具的软件公司。
2000 年,迈达克软件公司推出第一代的专业网上交易系统, FX 图表。这个平台适用于外汇市场,不但具备所需要的功能,而且在广泛的使用过程中,不断地被改进,使其能够符合每个时期金融市场的需求。
2001 年,迈达克软件公司推出了第二代在线交易系统 ---MetaQuotes 。不同于 FX 图表, MetaQuotes 不仅适用于外汇市场,同样也适用于 CFD 市场。此外这个平台还具备一个不同的,真正创新的特点 — 专为智能交易设计的程序语言 —MetaQuotes 语言( MQL ) . 这一特点的出现,为客户终端机性能的完善,打开了一个全新的局面。 MetaQuotes 软件不仅被广泛地接受,而且还在交易商中间成功地进行了验证,获得了肯定,使我们的在线交易软件得到了全新的变革。
2002 年迈达克软件公司推出了第三代在线交易系统 ---MetaTrader 。这个系统还适用于期货市场。具有全新的,更富柔性程序语言被运用在了智能交易系统中 - MQL II 。通过持续不断地对 MetaTrader 平台改进, , 使这一种产品得到极大的成功,成为世界上最流行的在线交易系统。
2003 年,迈达克软件公司成为了使用移动电话进行交易的先驱者之一 - MetaTrader CE 以及用于 Palm 的 MetaTrader .
2005 年 7 月 1 日 迈达克软件公司 推出了目前最新的最新交易系统 -- MetaTrader 4 。它包括先前系统所有的特点,并且对这些功能和组成部分进行了进一步的介绍和重组。 它适用于外汇, CFD 以及期货市场。 MetaTrader 4 服务器明显在使用率,工作表现,和可信度方面要优于早先的系统。
MetaTrader 4 客户终端机更具功能性,变通性以及便捷性,是交易商手中的一个重要工具。一种为智能交易的 MetaQuotes 4(MQL4) 而创设的类似于 C 语言的编程语言,已经得到了进一步的开发,并逐步成为众人所熟知的自动交易系统程序语言。这种语言的变通性及工作效率十分接近专业的 C 语言。
2009年秋季迈达克将发布MT4软件的再次升级版本MT5,现在正在进行beta测试。
MetaTrader 5相比MetaTrader 4功能更强大。
首先,MetaTrader 5终端可以使用的金融产品增多了,现在除了外汇、期货以外,它还可以应用于股票、期权等金融产品。
其次,MetaTrader 5在功能方面 也越来越强大了,新增的功能有:
■可以有21种时间段来分析行情
■ 内置38种分析指标
■ 内置39种图像对象
■ 4种缩放模式
■ 17种显示指标样式
此外,历史数据不会像mt4那么大容量了,10年的m1数据才占10MB(我记得mt4中要100多MB了。。。);
和MT5编程语言同步的MQL5编程语言,也比和MT4同步的MQL4编程语言有很大不同,具体有:
这些是官方网站上列出的,不一定就是最终版的规格:
1、MQL5和C++的不同之处:
没有类继承;
没有指针;
没有运算符重载;
没有’goto’运算符;
没有三重表达式;
2、历史测试可能是多线程的,可以同时测试多时间周期及多货币对同时交易;
另外提醒一点:MT5并不与MT4相兼容,换句话说就是: MQL4语言编写的MT4指标或者MT4 EA 都不能在MT5环境中运行。
官方网站放出了MT5/MQL5的第一个例子Tetris,具体是在MT5的图表上玩俄罗斯方块,Orz…
从其附带的mql5代码,可以发现很多mql5的新特性,其中比较激动人心的有:
1、直接支持键盘消息的处理。这意味着mt5的ea和指标可以实现更多更复杂的功能了,
2、直接Timer机制,这说明不用像mt4那样等待tick到来start才能执行一次了,可以精确的在某个时间执行某些动作。

‘叁’ MT4和MT5什么区别哪个更好用

目前主要用MT4,最近几年MT5用的人也多起来了,不管是MT4还是MT5,其实都是俄罗斯迈达克公司开发的,从诞生时间上看,毫无疑问MT5是MT4的升级版,可能大家的疑问就来了,既然MT5是MT4的升级版,那为什么现在无论是平台方还是交易者用的都是MT4居多?接下来,我就从5个方面,详细给大家讲讲MT4和MT5的主要不同。

第一点,是支持范围不同。

像MT4,在迈达克官网上的介绍,MT4的核心标语是“最受欢迎的外汇交易平台”主要以外汇交易为主。而MT5支持的品种就大多了,包括股票、大宗商品和债券等等。

那第二点呢,就是市场深度报价不同。

外汇交易者可以通过MT5的市场深度报价去了解到市场流动性,有更高的透明度和直观性;而MT4则不具备这点。

第三点,就是订单处理的不同。

像MT4,就可以同一品种开相反方向的订单,每一笔单都是独立的,比如做多1手和做空2手,这两笔单都是单独显示的。

而MT5就会将这两笔订单合并起来变成一笔,也就是只显示空1手。这样当我们去查看历史记录的时候,就没办法核对了,这一点我个人认为是非常不方便的,已经影响到单子的复盘了

而第四点,就是挂单方式的不同了。

MT4常见的挂单方式有4种,也就是买入止损、卖出止损和限价买进、限价卖出;而MT5则在这4种挂单方式上又增加了突破限价买单和突破限价卖单,这两种新增的挂单方式简单点来说就是做到突破回踩买入和突破回踩卖出。也就是设置好一个突破价格,一旦价格突破设置的价位后,设置的另一个回踩价格的挂单就会生效。这一点是比MT4方便的地方

最后的第五点,就是内置技术指标的不同

MT4技术分析工具包括了30个内置指标,提供了24种分析对象。而MT5就在MT4的基础上新增了8种技术指标,但说实话,像我作为一个裸K交易者来说,我觉得这些指标其实用处不大,指标越多并不代表着更加利于交易。所以指标这东西,只要精通那么一两种用来辅助交易就完全够用了。

以上我所说的呢,就是MT4和MT5的五大不同点,从上面这几点可以看出,MT5的功能总体上比MT4要强大。回到前面的问题,为什么现在无论是平台方还是交易者还是更为推崇MT4?主要原因还是因为它们的定位有较大的差异。那么问题来了!在MT4与MT5之间,我们到底应该怎么选呢?

如果需要线下进行大量回溯测试、或想要交易股票和大宗商品市场,那么就选MT5,这是更好的选择。MT4的话有优点是运行流、稳定。各种功能和图表简单易用,如果你是一个纯粹的外汇交易者,那MT4是更好的选择。而毫无疑问绝大部分普通交易者在无论是品种选择还是功能应用MT4已经完全足够了,MT5功能虽然强大,但是这些强大的功能对于绝大部分普通的交易者来说根本用不上,正所谓杀鸡焉用牛刀。

当然了,不管是MT4还是MT5,对大家来说,永远还是那句话,适合自己的交易软件才是最好的,根据自己的需求去选择即可。

‘肆’ python开发EA外汇交易怎么开发

1.首先,你要有一个EA,必须要有以ex4为扩展名的,如果只有mq4文件的话,就要用MetaTrader自带的编辑器MetaEditor打开,将mq4通过编译(compile)并且要不出现错误,才能在原存放mq4的文件夹下面得到一个同名的ex4文件。
2.将这个ex4文件复制到MetaTrader 4所在的文件夹下面的experts文件夹下,比如:D:Program FilesACTC MetaTrader 4experts,关闭并重新打开MetaTrader 4。
3.在“导航”下面的“智能交易系统”下面右键点击你想要使用的EA。
拓展资料:
1、 对于想要在 mt5+python 发展 ea 的交易者,最大会立即遇到的困难是,mt5 现在还没有提供 python 可以调用 mt5 backtest 的接口,也就是在 python 上开发 ea 是无法在 mt5 上作复盘测试的,只能另外再找 python 的第三方 backtest 库再多写接口来达成。 复盘不是只有验证策略的有效性,也扮演调试策略参数的重要工作,所以复盘对于开发 ea 是相当重要的环节。
2、另外在执行速度上,mt5+python ea 的速度自然是无法和纯在 mt5 开发的 ea 相比,这个是实际执行压力测试后得到的结论。因为 mt5+python ea 在调用当前价格和 K 线数据作为信号计算,和调用交易记录,需要透过 mt5 python 官方库与 mt5 建立在本地的一个加密的 socket 连接来作,读写速度自然是比不过 mt5 ea 直接从 mt5 内存读取行情数据和订单信息。虽然 python 是脚本编程语言,与其他编译型的编程语言程序比自然是不快,但是对于 ea 的应用,这样的慢是不太感受的到,可以直接感受到与相同 mt5 ea 的慢,主要是慢在与 mt5 间的大量数据传送和 io 读写差异上,尤其是连续调用行情数据比较多时,这样的速度差异就相当明显了。
3、这还是有优化方式的,可以仿 mql5 指标对于初始和后续的行情读取,采取精简量的读取方式。 既然有这些缺点,在 mt5 开发 python ea 还是在有些领域有不可替代的优点,所以 metaquotes 才会在 2020 年最终还是把 python 接口和函数库提供出来。因为现在许多衍生性交易平台都已经具备了 python api,而经过这些年,python 已经成为量化交易程序最有人气的编程语言,这也让许多交易团队在建构量化交易的环境,会优先考虑 python。 另外在人工智能的量化交易,python 的机器学习和统计数组处理的第三方库大概是最丰富的编程语言。对于交易策略里有用到 tensorflow 这类机器学习库,使用 python 来开发自动交易程序是最佳的选择。 mt5 或是 mt4 ea 受限于当时 metaquotes 自定的限制,只能作单线程运行,当同时触发事件函数如 OnTimer OnTick OnChartEvent,mt5 底层会作互斥锁限制一个线程运行。
操作环境: 浏览器 电脑端:macbookpro mos14打开goole版本 92.0.4515.131

‘伍’ mql5交易是否合法

mql5交易是合法的,MQL5的全称是: MetaQuotes Software Language 5。 他的意思是: MetaQuotes Software 软件的第五代编程语言,也就是MT5软件的编程语言。 MT5是MetaTrade 5的英文缩写。 它是由MetaQuotes(迈达克)公司编写的一款外汇、期货等金融产品的交易软件。
metaquotes成立于2000年,是一家专门提供在线交易平台和分析工具的软件公司。2000年,midak软件公司推出第一代专业在线交易系统FX图表。本平台适用于外汇市场。它不仅具有所需的功能,而且在广泛使用的过程中不断得到完善,以适应各个时期金融市场的需要。
拓展资料:
1、 midak软件公司推出了第二代在线交易系统——metaquotes
与外汇图表不同,元报价不仅适用于外汇市场,也适用于差价合约市场。此外,该平台还拥有与众不同的真正创新功能——元报价语言(MQL),一种专为智能交易而设计的编程语言。这一特性的出现,为客户终端性能的提升开辟了新局面。 Metaquotes软件不仅被广泛接受,而且在经销商中得到了成功验证,得到了肯定,使我们的在线交易软件发生了新的变化。
2、 midak软件公司推出了第三代在线交易系统——MetaTrader
该系统也适用于期货市场。 MQL II 采用全新且更灵活的编程语言,用于智能交易系统。通过对MetaTrader平台的不断改进,该产品取得了巨大的成功,成为全球最受欢迎的在线交易系统。midak 软件成为使用手机进行交易的先驱之一 - MetaTrader CE 和 MetaTrader for palm。midak 软件公司推出了最新的交易系统——MetaTrader 4。它包含了之前系统的所有功能,并进一步介绍和重组了这些功能和组件。它适用于外汇、差价合约和期货市场。 MetaTrader 4 服务器在利用率、性能和可靠性方面明显优于以前的系统。
3、 MetaTrader 4 客户端功能更强大、更灵活、更方便
为智能交易的元报价4(MQL4)创建的类似于C语言的编程语言得到了进一步发展,并逐渐成为自动交易系统的知名编程语言。这种语言的灵活性和效率非常接近专业的C语言。2009年秋季,midak将发布另一个升级版MT4软件MT5,目前正在进行beta测试。MetaTrader 5 比 MetaTrader 4 更有可能进行交易。首先,MetaTrader 5 终端可以使用更多的金融产品。现在,除了外汇和期货,还可以应用于股票、期权等金融产品。介绍MQL4是metaquotes软件的第四代编程语言,即MT4软件的编程语言。 Mql5 是之前 MQL4 语言的升级版本,其中编辑了许多指标、脚本和 EA 交易。尽管新的编程语言与上一代编程语言最大限度地匹配,但这些语言之间仍然存在差异转换程序时,应标出这些差异。
4、 对于了解MQL4这一新的mql5语言的程序员
本章涵盖了推动代码适配进化的所有信息首先需要说明的是:新语言不包括函数 start()、init() 和 deinit();索引缓冲区的数量没有限制;下载EA程序或其他mql5程序后,立即加载DLL;检测缩写的逻辑条件;当数组超过限制时,结束当前操作紧急-错误输出;和C++一样,运算符优先;该语言提供隐式类型甚至从字符串到数字;局部变量不能自动初始化字符串除外;正常的本地数组会被自动删除。

‘陆’ 有谁知到Mql语言编程吗

MQL语言,是一种数据库语言。但也有一种Meta Quarter Language,也叫MQL,可以用它编写自动交易程序。

阅读全文

与mql5语言编程相关的资料

热点内容
哪个苹果app能制作日志 浏览:969
爱情公寓关谷悠悠解压版 浏览:261
微信音频缓存文件夹 浏览:762
androideclipse32 浏览:125
商用压缩机承受温度 浏览:48
健身房压缩衣 浏览:976
单片机太阳光追踪系统所需材料 浏览:356
比泽尔压缩机型号规则 浏览:86
华兴数控切断编程 浏览:789
西安离心压缩机 浏览:546
程序员需要优盘吗 浏览:879
西藏掌上社保app在哪里下载 浏览:599
怎么让服务器固定 浏览:65
计数器定时器编程 浏览:13
程序员网上投资平台 浏览:878
用shell编程计算1加到100 浏览:233
外包公司的程序员一天写多少代码 浏览:532
苹果手机主屏幕app如何移动 浏览:567
服务器怎么连接远程密码 浏览:431
linux娱乐命令 浏览:368