MQL5 编程示例的文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
交易事务. 请求和响应结构、描述和记录

交易事务. 请求和响应结构、描述和记录

本文探讨了处理交易请求结构,即创建请求、将其发送到服务器之前的初步验证、服务器对交易请求的响应以及交易交易的结构。我们将创建简单方便的函数,将交易订单发送到服务器,并根据所讨论的内容,创建EA来通知交易事务。
preview
MQL5 中的范畴论 (第 11 部分):图论

MQL5 中的范畴论 (第 11 部分):图论

本文是以 MQL5 实现范畴论系列的续篇。于此,我们验证在开发交易系统的平仓策略时,图论如何与幺半群和其它数据结构集成。
preview
开发回放系统 — 市场模拟(第 17 部分):跳价和更多跳价(I)

开发回放系统 — 市场模拟(第 17 部分):跳价和更多跳价(I)

于此,我们将见识到如何实现一些非常有趣的东西,但同时也会因某些可能十分令人困惑的关键点而极其困难。可能发生的最糟糕的事情是,一些自诩专业人士的交易者却对这些概念在资本市场中的重要性一无所知。好吧,尽管我们在这里专注于编程,但理解市场交易中涉及的一些问题,对于我们将要实现的内容至关重要。
preview
MQL5中的结构及其数据打印方法

MQL5中的结构及其数据打印方法

在本文中,我们将研究MqlDateTime、MqlTick、MqlRates和MqlBookInfo结构,以及从它们打印数据的方法。为了打印结构的所有字段,有一个标准的ArrayPrint()函数,它以方便的表格格式显示数组中包含的数据以及处理结构的类型。
preview
StringFormat(). 回顾和现成的例子

StringFormat(). 回顾和现成的例子

本文继续介绍PrintFormat()函数。我们将简要介绍使用StringFormat()格式化字符串及其在程序中的进一步使用。我们还将编写模板,在终端日志中显示交易品种数据。这篇文章对初学者和有经验的开发人员都很有用。
DoEasy. 控件 (第 32 部分): 水平滚动条,鼠标轮滚动
DoEasy. 控件 (第 32 部分): 水平滚动条,鼠标轮滚动

DoEasy. 控件 (第 32 部分): 水平滚动条,鼠标轮滚动

在本文中,我们将完成水平滚动条对象功能的开发。我们还将令移动滚动条滑块和旋转鼠标滚轮来滚动容器的内容成为可能,以及考虑到 MQL5 中的新订单执行策略,和新的运行时错误代码,在函数库里相应添加。
preview
研究PrintFormat()并应用现成的示例

研究PrintFormat()并应用现成的示例

这篇文章对初学者和有经验的开发人员都很有用。我们将研究PrintFormat()函数,分析字符串格式的示例,并编写用于在终端日志中显示各种信息的模板。
preview
MQL5中的ALGLIB数值分析库

MQL5中的ALGLIB数值分析库

本文简要介绍了ALGLIB 3.19数值分析库、它的应用以及可以提高金融数据分析效率的新算法。
preview
GUI:利用 MQL 创建您自己的图形库的提示和技巧

GUI:利用 MQL 创建您自己的图形库的提示和技巧

我们将通览 GUI 函数库的基础知识,以便您能理解它们如何工作,甚至着手打造您自己的函数库。
preview
MQL5 中的范畴论 (第 10 部分):幺半群组

MQL5 中的范畴论 (第 10 部分):幺半群组

本文是以 MQL5 实现范畴论系列的延续。 在此,我们将”幺半群-组“视为常规化幺半群集的一种手段,令它们在更广泛的幺半群集和数据类型中更具可比性。
preview
为智能系统制定品质因数

为智能系统制定品质因数

在本文中,我们将见识到如何制定一个品质得分,并由您的智能系统从策略测试器返回。 我们将查看两种著名的计算方法 — Van Tharp 和 Sunny Harris。
preview
利用回归衡量度评估 ONNX 模型

利用回归衡量度评估 ONNX 模型

回归是一项依据未标记样本预测真实数值的任务。 所谓的回归衡量度则是用来评估回归模型的预测准确性。
preview
时间序列的频域表示:功率谱

时间序列的频域表示:功率谱

在本文中,我们将讨论在频域中分析时间序列的相关方法。 构建预测模型时,强调检验时间序列功率谱的效用 在本文中,我们将讨论运用离散傅里叶变换(dft)在频域中分析时间序列获得的一些实用观点。
preview
开发回放系统 — 市场模拟(第 11 部分):模拟器的诞生(I)

开发回放系统 — 市场模拟(第 11 部分):模拟器的诞生(I)

为了依据数据形成柱线,我们必须放弃回放,并开始研发一款模拟器。 我们将采用 1-分钟柱线,因为它们所需的难度最小。
开发回放系统 — 市场模拟(第 10 部分):仅用真实数据回放
开发回放系统 — 市场模拟(第 10 部分):仅用真实数据回放

开发回放系统 — 市场模拟(第 10 部分):仅用真实数据回放

在此,我们将查看如何在回放系统中使用更可靠的数据(交易跳价),而不必担心它是否被调整。
preview
开发回放系统 — 市场模拟(第 09 部分):自定义事件

开发回放系统 — 市场模拟(第 09 部分):自定义事件

在此,我们将见到自定义事件是如何被触发的,以及指标如何报告回放/模拟服务的状态。
preview
MQL5 中的矩阵和向量:激活函数

MQL5 中的矩阵和向量:激活函数

在此,我们将只讲述机器学习的一个方面 — 激活函数。 在人工神经网络中,神经元激活函数会根据一个或一组输入信号的数值,计算输出信号值。 我们将深入研究该过程的内部运作。
preview
在类中包装 ONNX 模型

在类中包装 ONNX 模型

面向对象编程可以创建更紧凑、易于阅读和修改的代码。 在此,我们将会看到三个 ONNX 模型的示例。
preview
以 MQL5 实现 ARIMA 训练算法

以 MQL5 实现 ARIMA 训练算法

在本文中,我们将实现一种算法,该算法应用了 Box 和 Jenkins 的自回归集成移动平均模型,并采用了函数最小化的 Powells 方法。 Box 和 Jenkins 表示,大多数时间序列可以由两个框架中之一个或两个来建模。
preview
开发回放系统 — 市场模拟(第 08 部分):锁定指标

开发回放系统 — 市场模拟(第 08 部分):锁定指标

在本文中,我们将亲眼见证如何在简单地利用 MQL5 语言锁定指标,我们将以一种非常有趣和迷人的方式做到这一点。
preview
开发回放系统 — 市场模拟(第 07 部分):首次改进(II)

开发回放系统 — 市场模拟(第 07 部分):首次改进(II)

在上一篇文章中,我们针对复现系统进行了一些修复并加入了测试,以确保可能的最佳稳定性。 我们还着手为这个系统创建和使用配置文件。
preview
MetaTrader 中的多机器人:从单图表中启动多个机器人

MetaTrader 中的多机器人:从单图表中启动多个机器人

在本文中,我将研究一个简单的模板,用来创建通用的 MetaTrader 机器人,该机器人可以在多个图表上使用,同时仅附加到一个图表,无需在每个单独的图表上为每个机器人实例进行配置。
preview
开发回放系统 — 市场模拟(第 05 部分):加入预览

开发回放系统 — 市场模拟(第 05 部分):加入预览

我们已设法开发了一套以逼真和可访问的方式来实现市场回放的系统。 现在,我们继续我们的项目,并添加数据,从而提升回放行为。
preview
利用 MQL5 实现 Janus 因子

利用 MQL5 实现 Janus 因子

加里·安德森(Gary Anderson)基于他称之为Janus因子的理论,开发了一套市场分析方法。 该理论描述了一套可揭示趋势和评估市场风险的指标。 在本文中,我们将利用 mql5 实现这些工具。
preview
种群优化算法:类电磁算法(EM - ElectroMagnetism)

种群优化算法:类电磁算法(EM - ElectroMagnetism)

本文讲述在各种优化问题中采用电磁算法(EM - ElectroMagnetism)的原理、方法和可能性。 EM 算法是一种高效的优化工具,能够处理大量数据和多维函数。
preview
MQL5 中的范畴论 (第 4 部分):跨度、实验、及合成

MQL5 中的范畴论 (第 4 部分):跨度、实验、及合成

范畴论是数学的一个多样化和不断扩展的分支,到目前为止,在 MQL5 社区中还相对难以发现。 这些系列文章旨在介绍和研究其一些概念,其总体目标是建立一个开放的函数库,提供洞察力,同时希望在交易者的策略开发中进一步运用这一非凡的领域。
preview
开发回放系统 — 市场模拟(第 04 部分):调整设置(II)

开发回放系统 — 市场模拟(第 04 部分):调整设置(II)

我们继续创建系统和控制。 没有掌控服务的能力,就很难向前推进和改进系统。
preview
基于画布的指标:为通道填充透明度

基于画布的指标:为通道填充透明度

在本文中,我将介绍一种创建自定义指标的方法,该方法利用标准库中的类 CCanvas 来完成绘图,并可查看图表属性以便坐标转换。 我将着手处理特殊的指标,其需要用透明度填充两条线之间的区域。
preview
开发回放系统 — 市场模拟(第 03 部分):调整设置(I)

开发回放系统 — 市场模拟(第 03 部分):调整设置(I)

我们从梳理当前状况开始,因为我们尚未以最好的方式开始。 如果我们现在不这样做,我们很快就会遇到麻烦。
preview
种群优化算法:树苗播种和成长(SSG)算法

种群优化算法:树苗播种和成长(SSG)算法

树苗播种和成长(SSG)算法的灵感来自星球上最具韧性的生物之一,在各种条件下都表现出杰出的生存能力。
preview
MQL5 — 您也可以成为该语言的大师

MQL5 — 您也可以成为该语言的大师

本文将是一次自我访谈,我将告诉您我是如何迈出 MQL5 语言的第一步的。 我将向您展示如何成为一名出色的 MQL5 程序员。 我将为您解释实现这一壮举的必要基础。 唯一的先决条件是愿意学习。
preview
利用 MQL5 矩阵的反向传播神经网络

利用 MQL5 矩阵的反向传播神经网络

本文讲述在 MQL5 中利用矩阵来应用反向传播算法的理论和实践。 它还提供了现成的类,以及脚本、指标和智能交易系统的示例。
preview
种群优化算法:和弦搜索(HS)

种群优化算法:和弦搜索(HS)

在本文中,我将研究和测试最强大的优化算法 — 和弦搜索(HS),其灵感来自寻找完美声音和声的过程。 那么现在什么算法在我们的评级中处于领先地位?
preview
构建自动运行的 EA(第 15 部分):自动化(VII)

构建自动运行的 EA(第 15 部分):自动化(VII)

我们将继续讨论上一篇文章的主题,以便完成有关自动化的这一系列文章。 我们将看到所有内容如何搭配到一起,令 EA 像钟表一样运行。
preview
种群优化算法:引力搜索算法(GSA)

种群优化算法:引力搜索算法(GSA)

GSA 是一种受无生命自然启发的种群优化算法。 万幸在算法中实现了牛顿的万有引力定律,对物理物体相互作用进行建模的高可靠性令我们能够观察到行星系统和星系团的迷人舞蹈。 在本文中,我将研究最有趣和最原始的优化算法之一。 还提供了空间物体运动的模拟器。
preview
衡量指标信息

衡量指标信息

机器学习已成为策略制定的流行方法。 虽然人们更强调最大化盈利能力和预测准确性,但处理用于构建预测模型的数据的重要性,仍未受到太多关注。 在本文中,我们研究依据熵的概念来评估预测模型构建的指标的适配性,如 Timothy Masters 的《测试和优调市场交易系统》一书中所述。
preview
MQL5 酷宝书 — 宏观经济事件数据库

MQL5 酷宝书 — 宏观经济事件数据库

本文讨论了基于 SQLite 引擎处理数据库的可能性。 形成的 CDatabase 类就是为了方便和有效地运用 OOP 原则。 随后它会参与宏观经济事件数据库的创建和管理。 本文提供了使用 CDatabase 类的多种方法的示例。
preview
在 Linux 上利用 C++ 多线程支持开发 MetaTrader 5 概念验证 DLL

在 Linux 上利用 C++ 多线程支持开发 MetaTrader 5 概念验证 DLL

我们将开始探索如何仅基于 Linux 系统开发 MetaTrader 5 平台的步骤和工作流程,其中最终产品能在 Windows 和 Linux 系统上无缝运行。 我们将了解 Wine 和 Mingw;两者都是制作跨平台开发任务的基本工具。 特别是 Mingw 的线程实现(POSIX 和 Win32),我们在选择追随哪一个时需要仔细考虑。 然后,我们构建一个能在 MQL5 代码中所用的概念验证 DLL,最后比较两种线程实现的性能。 这一切都是为了您的基金能进一步扩张自己。 阅读本文后,您应该可以轻松地在 Linux 上构建 MT 相关工具。
preview
种群优化算法:细菌觅食优化(BFO)

种群优化算法:细菌觅食优化(BFO)

大肠杆菌觅食策略激发出科学家创建 BFO 优化算法的灵感。 该算法包含原创思路和有前景的优化方法,值得深入研究。
preview
种群优化算法:入侵杂草优化(IWO)

种群优化算法:入侵杂草优化(IWO)

在各种条件下杂草的惊人生存能力已演化成强大优化算法的思路。 IWO 是以前审阅过的算法中最好的算法之一。