MQL5 编程示例的文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
多层感知器和反向传播算法(第二部分):利用 Python 实现并与 MQL5 集成

多层感知器和反向传播算法(第二部分):利用 Python 实现并与 MQL5 集成

有一个 Python 程序包可用于开发与 MQL 的集成,它提供了大量机会,例如数据探索、创建和使用机器学习模型。 集成在 MQL5 内置的 Python,能够创建各种解决方案,从简单的线性回归、到深度学习模型。 我们来看看如何设置和准备开发环境,以及如何使用一些机器学习函数库。
如何分析图表中所选择信号的交易
如何分析图表中所选择信号的交易

如何分析图表中所选择信号的交易

交易信号服务正在突飞猛进地发展。 将我们的资金托付给信号提供者,我们希望尽量减少资金亏损的风险。 那么如何在这个交易信号的森林中解开拼图呢? 如何发现能赚取盈利的产品? 本文提出创建一种工具,可在品种图表中直观地分析交易信号的交易历史。
深入了解累积/派发以及它的作用
深入了解累积/派发以及它的作用

深入了解累积/派发以及它的作用

累积/派发 (A/D) 指标有一个有趣的功能 - 突破此指标图表中绘制的趋势线暗示着一定概率上会即将突破价格图表中的趋势线。本文对于那些刚开始在 MQL4 中进行编程的人来说很有帮助和趣味性。为此,我尝试用易于理解的方式呈现信息并使用最简单的代码结构。
轻松快捷开发 MetaTrader 程序的函数库(第十五部分):品种对象集合
轻松快捷开发 MetaTrader 程序的函数库(第十五部分):品种对象集合

轻松快捷开发 MetaTrader 程序的函数库(第十五部分):品种对象集合

在本文中,我们将研究基于上一篇文章中所开发的抽象品种对象来创建品种集合。 抽象品种的后代会阐明品种数据,并在程序中定义基本品种对象属性的可用性。 此类品种对象应按其隶属的分组关系加以区分。
先进的自适应指标理论及在 MQL5 中的实施
先进的自适应指标理论及在 MQL5 中的实施

先进的自适应指标理论及在 MQL5 中的实施

本文要讲述的是高级自适应指标及其在 MQL5 中的实施:自适应周期性指标、自适应重心及自适应 RVI。所有指标的最初出处都在 John F. Ehlers 编著的《股票与期货控制分析》一书中。
HTML 中的图表
HTML 中的图表

HTML 中的图表

现今很难找到一台没有安装 Web 浏览器的计算机。长久一来,浏览器一直在进化和改进。本文讨论依据从 MetaTrader 5 客户端获得的信息,以简单和安全的方式创建图表,以在浏览器显示它们。
神经网络在交易中的实际应用
神经网络在交易中的实际应用

神经网络在交易中的实际应用

在本文中,我们将研究神经网络与交易终端集成的主要方面,从而创建功能齐全的交易机器人。
图形界面 X: 在多行文本框中选择文本 (集成构建 13)
图形界面 X: 在多行文本框中选择文本 (集成构建 13)

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

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

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

本文研究新的控件: 文本编辑框, 图片滑块, 以及其它的简单控件: 文本标签和图片。函数库正在持续增长, 并引入了一些其它的新控件, 以前创建的那些也有所改进。
preview
如何从算法交易中赚取$1,000,000?使用MQL5.com服务!

如何从算法交易中赚取$1,000,000?使用MQL5.com服务!

所有交易者都以赚取第一个百万美元为目标来访问市场。如何在没有过多风险和启动预算的情况下实现这个目标?MQL5服务为来自世界各地的开发人员和交易者提供了这样的机会。
无需 DLL 的原生 MT4/MT5 推特(Twitter)客户端
无需 DLL 的原生 MT4/MT5 推特(Twitter)客户端

无需 DLL 的原生 MT4/MT5 推特(Twitter)客户端

是否曾想访问推文和/或在推特(Twitter)上发布您的交易信号? 无需更多搜索,这些持续更新的系列文章将为您展示如何无需任何 DLL 的情况下进行操作。 畅想 MQL 实现 Twitter API 的旅程。 在第一部分中,我们将在访问 Twitter API 时遵循身份验证和授权的荣耀之路。
MQL5 Cookbook: 多币种EA交易 - 简洁而快速的途径
MQL5 Cookbook: 多币种EA交易 - 简洁而快速的途径

MQL5 Cookbook: 多币种EA交易 - 简洁而快速的途径

本文将介绍一个针对多币种EA交易的简单而合适的实现。意思是说您可以设置EA交易,针对多币种在同一条件下测试/交易,但是为每个交易品种设置不同的参数。作为例子,我们将创建针对两个交易品种的模式,但是通过这种方法可以还增加另外的交易品种,如有必要只需修改很少的代码。
Kagi 制图指标
Kagi 制图指标

Kagi 制图指标

文中介绍了 Kagi 图指标以及各种制图选项和其它函数,同时考虑了指标制图原则及其 MQL5 实现功能。本文还展示了最常见的实现方式,阴阳交易策略,偏离走势线并不断提高“肩”部/降低“腰”部。
MQL5 向导:如何教导 EA 以任意价格建立挂单
MQL5 向导:如何教导 EA 以任意价格建立挂单

MQL5 向导:如何教导 EA 以任意价格建立挂单

本文讲述允许您以距当前价格的任意距离设置挂单的功能实现的交易信号模块代码的修改方法:它可以是上一个柱的收盘价或开盘价,或者是移动平均线的值。有很多的选择。重要的是,您可以为挂单设置任意的开盘价。本文对于使用挂单交易的交易人员而言会有所帮助。
MetaTrader 5 和 MATLAB 交互
MetaTrader 5 和 MATLAB 交互

MetaTrader 5 和 MATLAB 交互

本文将详细介绍 MetaTrader 5 和 MatLab 数学包之间的交互。文中说明了数据转换机制,以及开发通用库以与 MatLab 交互的过程。文章还介绍了对 MatLab 环境生成的 DLL 的使用。本文面向掌握了 C++ 和 MQL5 的经验丰富的读者。
轻松快捷开发 MetaTrader 程序的函数库(第十四部分):品种对象
轻松快捷开发 MetaTrader 程序的函数库(第十四部分):品种对象

轻松快捷开发 MetaTrader 程序的函数库(第十四部分):品种对象

在本文中,我们将创建品种对象类,该类将成为创建品种集合的基本对象。 该类可令我们获取必要品种的数据,以便进一步进行分析和比较。
将指标从 MQL4 迁移到 MQL5
将指标从 MQL4 迁移到 MQL5

将指标从 MQL4 迁移到 MQL5

本文旨在说明将用 MQL4 编写的价格构建迁移到 MQL5。为了让将指标计算从 MQL4 迁移到 MQL5 的过程更加容易,建议使用 mql4_2_mql5.mqh 函数库。依据 MACD、随机动量指标和 RSI 指标说明其用途。
绘制支撑/阻力位的方法
绘制支撑/阻力位的方法

绘制支撑/阻力位的方法

本文描述了用于检测支撑/阻力位的简单脚本的创建过程。 由于面向的对象为初学者,你可以找到过程中每个步骤的详细解释。 然而,尽管脚本非常简单,本文对于高级交易者和MetaTrader 4 平台用户也非常有帮助。 其中包含了数据导出至表格格式、表格导入 Microsoft Excel 和绘制便于更加详细分析图表的示例。
轻松快捷开发 MetaTrader 程序的函数库 (第 二十八部分) :延后交易请求之平仓、删除和修改
轻松快捷开发 MetaTrader 程序的函数库 (第 二十八部分) :延后交易请求之平仓、删除和修改

轻松快捷开发 MetaTrader 程序的函数库 (第 二十八部分) :延后交易请求之平仓、删除和修改

这是有关延后请求概念的第三篇文章。 我们将创建平仓、删除挂单、修改持仓和挂单参数等方法来完成延后交易请求的测试。
MetaTrader 4客户段的秘密:警报系统
MetaTrader 4客户段的秘密:警报系统

MetaTrader 4客户段的秘密:警报系统

在没有监视的情况下,如何知道终端和账户的状态。系统事件;客户事件;执行文件;电子信息; SMTP服务器通道设定;公布; FTP服务器通道设定。
优秀程序员(第 01 部分):您必须停止做这 5 件事才能成为一名成功的 MQL5 程序员
优秀程序员(第 01 部分):您必须停止做这 5 件事才能成为一名成功的 MQL5 程序员

优秀程序员(第 01 部分):您必须停止做这 5 件事才能成为一名成功的 MQL5 程序员

萌新甚至高级程序员都会有很多坏习惯,这令他们无法在其编程事业中成为最佳的。 我们将在本文中就这些问题予以讨论并定位。 对于所有梦想成为优秀 MQL5 开发者的人来说,这篇文章都是必读的。
轻松快捷开发 MetaTrader 程序的函数库(第 二十一部分):交易类 - 基准跨平台交易对象
轻松快捷开发 MetaTrader 程序的函数库(第 二十一部分):交易类 - 基准跨平台交易对象

轻松快捷开发 MetaTrader 程序的函数库(第 二十一部分):交易类 - 基准跨平台交易对象

在本文中,我们将着手开发新的函数库部分 - 交易类。 此外,我们将研究开发一套统合 MetaTrader 5 和 MetaTrader 4 平台的基准交易对象。 当向服务器发送请求时,即意味着传递给这种交易对象的交易请求参数已被验证和校正。
从用户面板"动态"更改"EA 交易"参数
从用户面板"动态"更改"EA 交易"参数

从用户面板"动态"更改"EA 交易"参数

本文提供了一个简短的示例,阐释可从用户面板控制其参数的“EA 交易”的实施。在“动态”更改参数时,“EA 交易”将从信息面板获得的值写入文件以从文件中进一步读取它们并相应地显示在面板上。本文面向手动交易或以半自动模式交易的交易人员。
请保护好自己,开发员!
请保护好自己,开发员!

请保护好自己,开发员!

知识产权的保护依旧是个大问题。 本文对 MQL4 程序保护的基本原则进行阐述。 通过这些原则,你可以确保你所开发的成果不会被窃取,或至少能够让小偷的“工作”复杂化,以让他罢手。
通过 DDE 在 MetaTrader 4 与 Matlab 之间进行交互
通过 DDE 在 MetaTrader 4 与 Matlab 之间进行交互

通过 DDE 在 MetaTrader 4 与 Matlab 之间进行交互

分步说明如何使用 DDE 将数据从 Matlab 传输到 MetaTrader 4。
轻松快捷开发 MetaTrader 程序的函数库 (第 二十七部分) :操控交易请求 - 下挂单
轻松快捷开发 MetaTrader 程序的函数库 (第 二十七部分) :操控交易请求 - 下挂单

轻松快捷开发 MetaTrader 程序的函数库 (第 二十七部分) :操控交易请求 - 下挂单

在本文中,我们将继续开发交易请求,实现下挂单,并剔除检测到的交易类操作缺陷。
preview
聚类分析(第一部分):精通指标线的斜率

聚类分析(第一部分):精通指标线的斜率

聚类分析是人工智能最重要的元素之一。 在本文中,我尝试应用指标斜率的聚类分析来获得阈值,据其判定行情是横盘、亦或跟随趋势。
用于在通道中进行交易的 Expert Advisor
用于在通道中进行交易的 Expert Advisor

用于在通道中进行交易的 Expert Advisor

Expert Advisor 绘制通道线。 上下通道线作为支撑位和阻力位。 Expert Advisor 标记基准点,并在价格达到或穿过通道线时提供声音通知,并绘制相关标记。 分形形成时,对应的箭头将显示在最后一个条柱上。 突破通道线意味着可能会形成上涨趋势。 Expert Advisor 自始至终都有大量的注释。
MetaTrader 4客户端的秘密
MetaTrader 4客户端的秘密

MetaTrader 4客户端的秘密

21种快捷方法: MetaTrader 4客户端的潜在功能。 全屏模式;热键;快捷键;迷你窗口;收藏;图表最小化; 新闻显示; 货币对设置;市场观察;测试图表和独立图表模板;数据图表;十字光标;电子尺; 柱图表数据;图表中历史账户;定单类型;修改止损和赢利; 取消删除;打印图表。
使用限价订单替代止盈且无需修改 EA 的原始代码
使用限价订单替代止盈且无需修改 EA 的原始代码

使用限价订单替代止盈且无需修改 EA 的原始代码

使用限价订单来替代传统的止盈是论坛讨论的长期话题。 这种方法的优点是什么?如何在您的交易中实施? 在本文中,我将向您介绍我对此主题的看法。
MQL5酷客宝典 - 滑动通道编程
MQL5酷客宝典 - 滑动通道编程

MQL5酷客宝典 - 滑动通道编程

本文提出了一种用于等距通道系统的编程方法,在此将会探讨构建这种通道的细节,并且提供了通道的分类,提出了一个统一的滑动通道方法。在代码的实现中使用了面向对象的编程(OOP)。
显示支撑/阻力位
显示支撑/阻力位

显示支撑/阻力位

文章涉及在 MetaTrader 4 程序中探明和指示支撑/阻力位。 方便又通用的指标基于简单的算法。 本文同时探讨了一个有用的主题,即创建能够在一个工作空间显示不同时间范围结果的简单指标。
如何使用 EA 遵照您的规则拷贝信号?
如何使用 EA 遵照您的规则拷贝信号?

如何使用 EA 遵照您的规则拷贝信号?

当您订阅了一个信号, 也许会发生这样的情形: 您的交易账户杠杆为 1:100, 而提供者的杠杆为 1:500, 且使用最小手数, 而您的账户余额大约相等 — 但拷贝比率只有 10% 到 15%。本文介绍在这种情况下如何增加拷贝比率。
MQL5 Cookbook: 交易历史和取得仓位信息的函数库
MQL5 Cookbook: 交易历史和取得仓位信息的函数库

MQL5 Cookbook: 交易历史和取得仓位信息的函数库

现在是时候简单总结一下之前关于仓位属性文章的内容了,在本文中,我们会额外创建几个函数来取得只能通过访问交易历史才能获得的属性,我们也会对数据结构更加熟悉,这使我们可以用更加方便的方法访问仓位和交易品种属性。
图形界面 II: 菜单项元件 (第一章)
图形界面 II: 菜单项元件 (第一章)

图形界面 II: 菜单项元件 (第一章)

在本系列文章的第二部分中, 我们将向您展示界面元件开发的详细过程, 例如主菜单和上下文菜单. 我们还会提到元件的绘制以及为此开发一个特别的类. 我们还将深度讨论程序事件管理, 包括自定义事件的问题.
SQL 与 MQL5: 与 SQLite 数据库集成
SQL 与 MQL5: 与 SQLite 数据库集成

SQL 与 MQL5: 与 SQLite 数据库集成

本文的目的,是那些打算在他们的项目中使用 SQL 的开发者。它解释了 SQLite 的功能和优势。本文不需要特别的 SQLite 函数知识, 当然对 SQL 的最小理解将是有益的。
图形界面 IV: 多窗口模式与优先级系统 (第二章)
图形界面 IV: 多窗口模式与优先级系统 (第二章)

图形界面 IV: 多窗口模式与优先级系统 (第二章)

在本章中,我们将扩展库的实现,为MQL应用程序创建多窗口界面。我们还将开发一个优先级系统,用于管理鼠标左键对图形对象的点击,它是用于避免元件对用户操作没有回应的问题的。
指标喷发整体特征的计算
指标喷发整体特征的计算

指标喷发整体特征的计算

指标喷发是市场研究中较少涉及的一个领域。这主要是由于时变数据超大数组的处理造成的分析难度。现有的图形分析过于资源密集,并由此触发了一种采用喷发时间序列的俭省算法的发展。本文要论述的,就是如何利用喷发整体特征的研究,来替代可视(直观图像)分析。无论是交易者,还是自动化交易系统的开发者,都会感兴趣。
MetaTrader 4 中的事件
MetaTrader 4 中的事件

MetaTrader 4 中的事件

本文介绍的是使用编程方法追踪MetaTrader 4客户终端中的事件, 它的目标读者是对终端的操作和MQL4编程具有基本知识和技能的人员.
字符串:ASCII 符号表和用途
字符串:ASCII 符号表和用途

字符串:ASCII 符号表和用途

本文将分析 ASCII 符号表及其使用方法。我们还将处理某些新函数,基于 ASCII 表特性的操作原理,然后我们将创建一个包括这些函数的新库。这些函数在其他编程语言中相当受欢迎,但并没有纳入到内置函数列表中。此外,我们还将深入研究函数处理字符串的基础。我相信你们在这款有用的数据类型中必然能够学习到新知识。