MQL5 编程示例的文章

icon

访问海量文章以及代码实例集合,演示如何使用 MQL5 语言 为 MetaTrader 平台创建指标和交易机器人。源代码已附加在文章之中,因此您可以在 MetaEditor 中打开并运行它们,看看应用程序如何工作。

这些文章对那些刚开始探索自动交易的人,以及具有编程经验的职业交易员都极其有用。它们的特色不仅是例子,而且也蕴含着新的想法。

添加一个新的文章
最近 | 最佳
图形界面 X: 在多行文本框中选择文本 (集成构建 13)
图形界面 X: 在多行文本框中选择文本 (集成构建 13)

图形界面 X: 在多行文本框中选择文本 (集成构建 13)

本文将实现使用各种组合键选择文本, 及删除所选文本的功能, 类似于在其它任意文本编辑器中完成的方式。此外, 我们将继续优化代码, 并为进入函数库演变第二阶段的最后一个过程准备好类, 其中所有控件均作为单独的图像 (画布) 呈现。
沃尔夫波形 (Wolfe Waves)
沃尔夫波形 (Wolfe Waves)

沃尔夫波形 (Wolfe Waves)

比尔·沃尔夫 (Bill Wolfe) 提出的图形化方法可以检测到一种形态, 根据此形态可以找到入场的时刻和方向, 并且还有益于预测价格应达到的目标, 以及达到目标的时间。本文介绍如何根据之字折线创建一个指标, 之字折线将搜索沃尔夫波形, 并根据此指标进行简单的智能交易。
跨平台的EA交易: 信号
跨平台的EA交易: 信号

跨平台的EA交易: 信号

本文讨论了 CSignal 和 CSignals 类,它们将用于创建跨平台的EA交易。它检验了MQL4和MQL5的区别,看它们在评估交易信号时需要怎样特别的数据,这样来确保写出的代码可以兼容两种编译器。
运用人工智能实现的 Thomas DeMark 次序 (TD SEQUENTIAL)
运用人工智能实现的 Thomas DeMark 次序 (TD SEQUENTIAL)

运用人工智能实现的 Thomas DeMark 次序 (TD SEQUENTIAL)

在本文中, 我将告诉您如何把一个非常著名的策略与神经网络合并以便成功交易。这就是运用人工智能系统实现的 Thomas DeMark 次序策略。仅应用了策略的第一部分, 使用设置和交汇信号。
MQL5 酷宝典 - 创建的环形缓存用于快速计算滑动窗口中的指标
MQL5 酷宝典 - 创建的环形缓存用于快速计算滑动窗口中的指标

MQL5 酷宝典 - 创建的环形缓存用于快速计算滑动窗口中的指标

在滑动窗口中执行计算时, 环形缓存是排布数据最简单和最有效的方式。本文描述其算法, 并展示它如何简化滑动窗口中的计算, 以令其更有效率。
MQL5 酷客宝典 - 轴点交易信号
MQL5 酷客宝典 - 轴点交易信号

MQL5 酷客宝典 - 轴点交易信号

本文描述的是,根据轴点-反转水平而发送信号的类的开发和实现。这个类可以通过使用标准库来构建策略,还探讨了通过增加过滤器来加强轴点策略。
图形界面 X: 多行文本框中的字词回卷算法 (集成编译 12)
图形界面 X: 多行文本框中的字词回卷算法 (集成编译 12)

图形界面 X: 多行文本框中的字词回卷算法 (集成编译 12)

我们继续开发多行文本框控件。这次我们的任务是实现一个自动的文字回卷, 以防发生文本框宽度溢出, 或者如果出现机会, 将文本逆卷到上一行。
带有图形界面的通用趋势
带有图形界面的通用趋势

带有图形界面的通用趋势

在本文中将会创建一款基于众多标准指标的通用趋势指标。附带创建的图形界面允许选择指标类型并调整其参数。指标在单独窗口中显示多行彩色图标。
图形界面 X: 排序、重建表格和单元格中的控件 (集成编译 11)
图形界面 X: 排序、重建表格和单元格中的控件 (集成编译 11)

图形界面 X: 排序、重建表格和单元格中的控件 (集成编译 11)

我们继续向渲染表格添加新功能: 数据排序, 管理列和行数, 设置表格单元类型以将控件放入其中。
图形界面 X: 升级渲染表格及代码优化 (集成编译 10)
图形界面 X: 升级渲染表格及代码优化 (集成编译 10)

图形界面 X: 升级渲染表格及代码优化 (集成编译 10)

我们继续为渲染表格 (CCanvasTable) 完善新的功能。表格现在将具有: 当悬浮时高亮显示; 为每个单元格添加一个图标数组的能力, 以及一种切换它们的方法; 在运行时设置或修改单元格文本的能力等等。
带有图形界面的通用通道
带有图形界面的通用通道

带有图形界面的通用通道

所有通道指标显示为三条线, 包括中心, 顶部和底部线。中心线的绘图原理与移动平均线相似, 而移动均线指标主要用于绘制通道。顶部线和底部线的位置距中心线距离相等。距离的确定可以按照点为单位, 作为价格百分比 (包络指标), 使用标准偏差值 (布林带) 或 ATR 值 (Keltner 通道)。
图形界面 X: 渲染表格的新功能 (集成编译 9)
图形界面 X: 渲染表格的新功能 (集成编译 9)

图形界面 X: 渲染表格的新功能 (集成编译 9)

时至今日, CTable 是函数库中所含的最先进类型表格。表格由 OBJ_EDIT 类型的编辑框汇集而成, 但其进一步开发成为问题。因此, 在最大性能方面, 即使是在函数库的当前开发阶段, 也最好开发 CCanvasTable 类型的渲染表格。它的当前版本毫无生气, 但从本文开始, 我们将尝试解决这个问题。
preview
可视化!类似于 R 语言 "plot (绘图)" 的 MQL5 图形库

可视化!类似于 R 语言 "plot (绘图)" 的 MQL5 图形库

在研究交易逻辑时, 图形形式的直观表达是非常重要的。科学界中流行的一些编程语言 (如 R 和 Python) 拥有可视化的特殊 "plot (绘图)" 功能。它能够以直观方式绘制线, 点分布和直方图。在 MQL5 中, 您可以使用 CGraphics 类完成相同的操作。
图形界面 X: 多行文本框控件 (集成编译 8)
图形界面 X: 多行文本框控件 (集成编译 8)

图形界面 X: 多行文本框控件 (集成编译 8)

讨论多行文本框控件。不同于 OBJ_EDIT 类型的图形对象, 这一版本没有输入字符数量的限制。它还添加了将文本框转换为简单文本编辑器的模式, 其内可以使用鼠标或键盘移动光标。
在MQL5中的三维建模
在MQL5中的三维建模

在MQL5中的三维建模

时间序列是一种动态的系统,它会按时持续收到随机变量的值或者连续等差的数值,把市场分析从2D(二维)转换到3D(三维),给我们提供了对于这种复杂过程和研究对象的新的视野。本文描述了提供二维数据的三维表现形式的可视化方法,
图形界面 X: 高级列表和表格管理。代码优化 (集成构建 7)
图形界面 X: 高级列表和表格管理。代码优化 (集成构建 7)

图形界面 X: 高级列表和表格管理。代码优化 (集成构建 7)

函数库的代码需要进行优化: 它应该更规范化, 这样可以 — 更具可读性并易于理解学习。此外, 我们将继续开发之前创建的控件: 列表, 表格和滚动条。
图形界面 X: 时间控件, 复选框列表控件和表格排序 (集成编译 6)
图形界面 X: 时间控件, 复选框列表控件和表格排序 (集成编译 6)

图形界面 X: 时间控件, 复选框列表控件和表格排序 (集成编译 6)

创建图形界面的函数库开发续篇。这次会涵盖时间和复选框列表控件。此外, CTable 类现已提供按照升序或降序对数据排序的能力。
一个为莫斯科交易所期货开发的点差策略实例
一个为莫斯科交易所期货开发的点差策略实例

一个为莫斯科交易所期货开发的点差策略实例

MetaTrader 5 可以开发和测试同时交易多种金融资产的交易机器人。其内建的策略测试器能够自动从经纪商的服务器中下载所需的订单时刻历史,并会考虑到账户的合约规范,所以开发人员不用做任何人工工作。这可以使交易环境条件的重建能够简单和可靠,包括乃至不同交易品种中订单来临之间毫秒级的间隔。在本文中,我们将演示在两种莫斯科交易所期货上开发和测试一种点差策略。
直方图形式的统计分布, 无需指标缓冲区和数组
直方图形式的统计分布, 无需指标缓冲区和数组

直方图形式的统计分布, 无需指标缓冲区和数组

本文讨论当绘制市场条件的统计分布直方图时利用图形存储器的可能性, 而无需指标缓冲区和数组。描述了样本直方图的细节, 并展示了 MQL5 图形对象的 "隐藏" 功能。
图形界面 X: 文本编辑框, 图片滑块和简单控件 (构建 5)
图形界面 X: 文本编辑框, 图片滑块和简单控件 (构建 5)

图形界面 X: 文本编辑框, 图片滑块和简单控件 (构建 5)

本文研究新的控件: 文本编辑框, 图片滑块, 以及其它的简单控件: 文本标签和图片。函数库正在持续增长, 并引入了一些其它的新控件, 以前创建的那些也有所改进。
带有图形用户界面的通用震荡指标
带有图形用户界面的通用震荡指标

带有图形用户界面的通用震荡指标

本文描述了创建基于终端中所有震荡指标的通用指标的过程,并且指标中还带有自身的图形界面。该图形界面(GUI)使用户可以简单快速地直接在图表窗口中修改每个震荡指标的设置(不需要打开它的属性), 以及比较它们的数值和为特定的任务选取最佳的选项。
通用的之字转向指标
通用的之字转向指标

通用的之字转向指标

之字转向指标(ZigZag)是在 MetaTrader 5 用户中最流行的指标之一,本文分析了创建各种版本的之字转向指标的可能性,结果是一个可以使用各种方法扩展其功能的通用指标,它对EA交易和其他指标的开发会非常有用。
MQL5 编程基础: 文件
MQL5 编程基础: 文件

MQL5 编程基础: 文件

这篇面向实践的文章专注于在 MQL5 中使用文件。它提供了一定数量的简单任务, 令您掌握基本知识并磨练您的技能。
交易员生存诀窍: 若干测试的比较报告
交易员生存诀窍: 若干测试的比较报告

交易员生存诀窍: 若干测试的比较报告

本文应对在四种不同的金融工具上同时启动智能交易系统测试。四个测试报告的最终比较在表格中提供, 类似于在线商店中陈列商品。附送礼包是为每个品种自动创建分布图表。
海龟汤和海龟汤升级版的改进
海龟汤和海龟汤升级版的改进

海龟汤和海龟汤升级版的改进

本文介绍了来自琳达.布拉福德.瑞斯克(Linda Bradford Raschke)和劳伦斯.A.康纳斯(Laurence A. Connors)的《华尔街智慧:高胜算短线交易策略(Street Smarts: High Probability Short-Term Trading Strategies)》一书的两个交易策略,‘海龟汤’和‘海龟汤升级版’的原则规范。在书中描述的策略非常流行,但是有必要知道的是,作者是基于15年到20年的市场行为来开发它们的。
图形界面 X: 标准图表控件 (集成编译 4)
图形界面 X: 标准图表控件 (集成编译 4)

图形界面 X: 标准图表控件 (集成编译 4)

这一次我们将研究标准图表控件。它可以创建具有同步水平滚动功能的子图表数组。此外, 我们将继续优化库代码以降低 CPU 负载。
MQL5 编程基础: 终端中的全局变量
MQL5 编程基础: 终端中的全局变量

MQL5 编程基础: 终端中的全局变量

终端中的全局变量为开发复杂而可靠的EA交易提供了一种方便的工具,如果您掌握了全局变量,您就会发现在使用MQL5开发EA交易的时候它们是必不可少的。
图形界面 X: 简单快速开发库的更新 (版本 3)
图形界面 X: 简单快速开发库的更新 (版本 3)

图形界面 X: 简单快速开发库的更新 (版本 3)

在本文中,我们介绍下个版本的简单快速开发库(版本 3),它修改了一些缺陷,并且加入了新的功能,文章中有更加详细的内容。
图形界面 X: 简单快速开发库的更新 (版本 2)
图形界面 X: 简单快速开发库的更新 (版本 2)

图形界面 X: 简单快速开发库的更新 (版本 2)

自从之前的系列文章发布以后,简单快速开发库(Easy And Fast library)又增加了一些新的功能。库的结构和代码经过部分优化后部分减少了CPU的负载,很多控件类中的一些重复方法被转移到 CElement 基类中。
图形界面 IX: 进度条和线形图表控件 (第二章)
图形界面 IX: 进度条和线形图表控件 (第二章)

图形界面 IX: 进度条和线形图表控件 (第二章)

第九部份的第二章致力于开发进度条和线形图表控件。与以往一样,会提供详细的实例展示如何在自定义的MQL应用程序中使用这些控件。
图形界面 IX: 颜色选择器控件 (第一章)
图形界面 IX: 颜色选择器控件 (第一章)

图形界面 IX: 颜色选择器控件 (第一章)

从本文开始,我们来到了致力于在 MetaTrader 交易终端中创建图形界面系列文章的第九部份。它有两章,包含了新的控件和接口,例如颜色选择器,颜色按钮,进度条和线性图表等。
图形界面 VIII: 文件导航器控件 (第三章)
图形界面 VIII: 文件导航器控件 (第三章)

图形界面 VIII: 文件导航器控件 (第三章)

在系列文章第八部分前面的章节中,我们的库加入了几个类用于开发鼠标指针,日历和树形视图,本文介绍的是文件导航器控件,可以用作MQL应用程序图形界面的一部分。
MQL5 对决 QLUA - 为什么在 MQL5 中交易操作速度快达 28 倍?
MQL5 对决 QLUA - 为什么在 MQL5 中交易操作速度快达 28 倍?

MQL5 对决 QLUA - 为什么在 MQL5 中交易操作速度快达 28 倍?

您可曾想过您的订单是如何迅速传递到交易所, 它的执行速度如何, 而您的终端需要多久才能收到操作结果?我们已经准备好一场交易操作执行速度的比对, 因为从未有人测量过使用 MQL5 和 QLUA 应用时的这些数值。
交易员之活学活用: "平静" 优化或绘制交易分布
交易员之活学活用: "平静" 优化或绘制交易分布

交易员之活学活用: "平静" 优化或绘制交易分布

分析交易历史, 并依据仓位的入场时间以 HTML 形式绘制交易结果的分布图表。图表显示三个部分 - 按小时, 按周内天数和按月份。
图形界面 VIII: 树形视图控件 (第二章)
图形界面 VIII: 树形视图控件 (第二章)

图形界面 VIII: 树形视图控件 (第二章)

图形界面第八部分前面的章节中介绍了静态与下拉日历元件,第二章将集中介绍一个同样复杂的元件 — 树形视图(tree view), 它在每个用于创建图形界面的完整开发库中都会包含。本文中实现的树形视图包含了多种灵活的设置和模式,使得这个控件元件易于调整以满足您的需求。
Erik Nayman 的绳索指标
Erik Nayman 的绳索指标

Erik Nayman 的绳索指标

本文揭示 Erik L. Nayman 如何基于 "交易员小百科" 来创建 "绳索" 指标。此指标通过计算覆盖指定周期时间的牛熊数值来显示趋势方向。本文还包含指标创建和计算的原理以及例程代码。其它涉及的主题包括建立基于指标的智能交易程序, 和外部参数的优化。
图形界面 VIII: 日历控件 (第一章)
图形界面 VIII: 日历控件 (第一章)

图形界面 VIII: 日历控件 (第一章)

在 MetaTrader 中创建图形界面的系列文章的第八部分中,我们将探讨复杂的组合控件,例如日历(calendar),树形视图(tree view),以及文件浏览器(file navigator)。因为有大量的信息,对每个主题都有独立的文章,此部分的第一章描述了日历控件以及它的扩展版本 - 下拉日历。
如何在 MetaTrader 5 里快速开发并调试交易策略
如何在 MetaTrader 5 里快速开发并调试交易策略

如何在 MetaTrader 5 里快速开发并调试交易策略

自动剥头皮系统理所当然地被认为是算法交易的巅峰, 但同时它们的代码也最难编写。在本文中, 我们将介绍如何使用内置调试工具并基于接收的瞬时报价分析来构建策略, 以及可视测试。开发入场和离场规则, 往往需要经历多年的手工交易。但借助 MetaTrader 5, 您可以在真实历史数据的基础上快速测试任何策略。
MQL5 酷宝书 - 移动通道交易信号
MQL5 酷宝书 - 移动通道交易信号

MQL5 酷宝书 - 移动通道交易信号

本文描述的过程, 是开发和实现基于移动通道发送信号的类。每个信号版本均随带交易策略和测试结果。标准库的类用于创建派生类。
图形界面 VII: 页面控件 (第二章)
图形界面 VII: 页面控件 (第二章)

图形界面 VII: 页面控件 (第二章)

第七部分的第一章介绍了用于创建三种表格控件的类: 文字标签型表格(CLabelsTable), 编辑框型表格(CTable) 以及绘制型表格(CCanvasTable)。在本文中(第二章)我们将讨论页面(Tabs)控件。