MQL5编程文章

icon

在众多发表的文章中研究 MQL5语言编程交易策略 的多数由您—我们 MQL5.community的会员所作。文章以类别分组来帮助您迅速找到任何有关MQL5编程问题的答案:集成,测试,交易策略等等。

Follow our 新发表讨论它们在 MQL5.community论坛

添加一个新的文章
最近 | 最佳
preview
DoEasy. 控件 (第 5 部分): 基准 WinForms 对象,面板控件,AutoSize 参数

DoEasy. 控件 (第 5 部分): 基准 WinForms 对象,面板控件,AutoSize 参数

在本文中,我将创建所有函数库 WinForms 对象的基准对象,并开始实现面板 WinForms 对象的 AutoSize 属性 — 自动调整尺寸,从而适应对象内部内容。
preview
时间序列挖掘的数据标签(第4部分):使用标签数据的可解释性分解

时间序列挖掘的数据标签(第4部分):使用标签数据的可解释性分解

本系列文章介绍了几种时间序列标记方法,这些方法可以创建符合大多数人工智能模型的数据,而根据需要进行有针对性的数据标记可以使训练后的人工智能模型更符合预期设计,提高我们模型的准确性,甚至帮助模型实现质的飞跃!
preview
您需要了解的有关MQL5程序结构的所有信息

您需要了解的有关MQL5程序结构的所有信息

使用任何编程语言的任何程序都有特定的结构。在本文中,您将通过了解MQL5程序结构每个部分的编程基础知识来学习MQL5计划结构的重要部分,这些基础知识在创建可在MetaTrader 5中执行的MQL5交易系统或交易工具时非常有用。
preview
开发回放系统 — 市场模拟(第 15 部分):模拟器的诞生(V)- 随机游走

开发回放系统 — 市场模拟(第 15 部分):模拟器的诞生(V)- 随机游走

在本文中,我们将完成自有系统模拟器的开发。 于此的主要目标是就上一篇文章中讨论的算法进项配置。 该算法旨在创建随机游走走势。 因此,为了明白今天的讲义,有必要了解以前文章的内容。 如果您尚未跟踪模拟器的开发,我建议您从头开始阅读本系列文章。 否则,您也许对此处将要讲解的内容不明所以。
preview
使用 Python 和 MetaTrader5 python 软件包及 ONNX 模型文件进行深度学习预测和排序

使用 Python 和 MetaTrader5 python 软件包及 ONNX 模型文件进行深度学习预测和排序

本项目涉及在金融市场中使用 Python 进行基于深度学习的预测。我们将探索使用平均绝对误差(MAE)、均方误差(MSE)和R平方(R2)等关键指标测试模型性能的复杂性,并学习如何将所有内容打包到可执行文件中。我们还将制作一个 ONNX 模型文件以及它的 EA。
preview
开发回放系统 — 市场模拟(第 12 部分):模拟器的诞生(II)

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

开发模拟器可能比看起来有趣得多。 今天,我们将朝着这个方向再走几步,因为事情变得越来越有趣。
preview
DoEasy 函数库中的时间序列(第五十六部分):自定义指标对象,从集合中的指标对象获取数据

DoEasy 函数库中的时间序列(第五十六部分):自定义指标对象,从集合中的指标对象获取数据

本文研究在 EA 中创建自定义指标对象。 我们稍微改进一下库类,并添加一些方法,以便从 EA 中的指标对象获取数据。
preview
模式搜索的暴力方法(第六部分):循环优化

模式搜索的暴力方法(第六部分):循环优化

在这篇文章中,我将展示改进的第一部分,这些改进不仅使我能够使MetaTrader 4和5交易的整个自动化链闭环,而且还可以做一些更有趣的事情。从现在起,这个解决方案使我能够完全自动化创建EA和优化,并最大限度地降低寻找有效交易配置的劳动力成本。
preview
开发多币种 EA 交易(第 2 部分):过渡到交易策略的虚拟仓位

开发多币种 EA 交易(第 2 部分):过渡到交易策略的虚拟仓位

让我们继续开发多币种 EA,让多个策略并行工作。让我们尝试将与市场开仓相关的所有工作从策略级转移到管理策略的 EA 级。这些策略本身只进行虚拟交易,并不建立市场仓位。
preview
使用 Python 的深度学习 GRU 模型到使用 EA 的 ONNX,以及 GRU 与 LSTM 模型的比较

使用 Python 的深度学习 GRU 模型到使用 EA 的 ONNX,以及 GRU 与 LSTM 模型的比较

我们将指导您完成使用 Python 进行 DL 制作 GRU ONNX 模型的整个过程,最终创建一个用于交易的专家顾问 (EA),然后将 GRU 模型与 LSTM 模型进行比较。
preview
开发回放系统(第32部分):订单系统(一)

开发回放系统(第32部分):订单系统(一)

在我们迄今为止开发的所有东西中,正如你可能会注意到并最终同意的那样,这个系统是最复杂的。现在我们需要做一些非常简单的事情:让我们的系统模拟交易服务器的操作。准确实现交易服务器操作方式似乎是一件轻而易举的事情。至少说起来是这样。但我们需要这样做,以便对回放/模拟系统的用户来说,一切都是无缝和透明的。
preview
开发回放系统(第33部分):订单系统(二)

开发回放系统(第33部分):订单系统(二)

今天,我们将继续开发订单系统。正如您将看到的,我们将大规模重用其他文章中已经展示的内容。尽管如此,你还是会在这篇文章中获得一点奖励。首先,我们将开发一个可以与真实交易服务器一起使用的系统,无论是从模拟账户还是从真实账户。我们将广泛使用MetaTrader 5平台,该平台将从一开始就为我们提供所有必要的支持。
preview
您应该知道的 MQL5 向导技术(第 04 部分):线性判别分析

您应该知道的 MQL5 向导技术(第 04 部分):线性判别分析

今天的交易者都是哲学家,几乎总是在寻找新的想法,尝试提炼它们,选择修改或丢弃它们:一个探索性的过程,肯定会花费相当的勤奋程度。 这些系列文章将提出 MQL5 向导应该是交易者在此领域努力的中流砥柱。
preview
MQL5 中的范畴论 (第 1 部分)

MQL5 中的范畴论 (第 1 部分)

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

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

我们继续创建系统和控制。 没有掌控服务的能力,就很难向前推进和改进系统。
preview
开发回放系统 — 市场模拟(第 23 部分):外汇(IV)

开发回放系统 — 市场模拟(第 23 部分):外汇(IV)

现在,创建发生在我们将跳价转换为柱线的同一点。以这种方式,如果在转换过程中出现问题,我们就能立即注意到错误。这是因为在快进期间,在图表上放置 1-分钟柱线的代码,也同样在正常表现期间用于定位系统放置柱线。换言之,负责此任务的代码不会在其它任何地方重复。如此这般,我们获得的系统就能更好的维护和改进。
preview
DoEasy 函数库中的图形(第九十九部分):依据单个控制点移动扩展图形对象

DoEasy 函数库中的图形(第九十九部分):依据单个控制点移动扩展图形对象

在前一篇文章中,我实现了依据控件窗体移动扩展图形对象轴点的功能。 现在,我将实现依据单个图形对象控制点(窗体)移动复合图形对象的功能。
preview
多交易品种多周期指标中的颜色缓冲区

多交易品种多周期指标中的颜色缓冲区

在本文中,我们将回顾多交易品种、多周期指标中指标缓冲区的结构,并在图表上组织这些指标的彩色缓冲区的显示。
preview
将ML模型与策略测试器集成(结论):实现价格预测的回归模型

将ML模型与策略测试器集成(结论):实现价格预测的回归模型

本文描述了一个基于决策树的回归模型的实现。该模型应预测金融资产的价格。我们已经准备好了数据,对模型进行了训练和评估,并对其进行了调整和优化。然而,需要注意的是,该模型仅用于研究目的,不应用于实际交易。
preview
学习如何基于 DeMarker 设计交易系统

学习如何基于 DeMarker 设计交易系统

此为我们系列中的一篇新文章,介绍如何基于最流行的技术指标设计交易系统。 在本文中,我们将介绍如何基于 DeMarker 指标创建交易系统。
preview
您应该知道的 MQL5 向导技术(第 03 部分):香农(Shannon)熵

您应该知道的 MQL5 向导技术(第 03 部分):香农(Shannon)熵

今天的交易者都是哲学家,几乎总是在寻找新的想法,尝试提炼它们,选择修改或丢弃它们:一个探索性的过程,肯定会花费相当的勤奋程度。 本系列文章将提出,MQL5 向导应该是交易者的支柱。
preview
DoEasy. 控件 (第 21 部分): SplitContainer 控件 面板隔板

DoEasy. 控件 (第 21 部分): SplitContainer 控件 面板隔板

在本文中,我将为 SplitContainer 控件创建辅助面板隔板对象类。
preview
神经网络变得轻松(第三十七部分):分散关注度

神经网络变得轻松(第三十七部分):分散关注度

在上一篇文章中,我们讨论了在其架构中使用关注度机制的关系模型。 这些模型的具体特征之一是计算资源的密集功用。 在本文中,我们将研究于自我关注度模块内减少计算操作数量的机制之一。 这将提高模型的常规性能。
preview
让新闻交易变得容易(第一部分):创建一个数据库

让新闻交易变得容易(第一部分):创建一个数据库

新闻交易可能很复杂,令人难以招架,在本文中我们将介绍获取新闻数据的步骤。此外,我们还将了解MQL5经济数据日历及其提供的功能。
preview
实现 Deus EA:使用 MQL5 中的 RSI 和移动平均线进行自动交易

实现 Deus EA:使用 MQL5 中的 RSI 和移动平均线进行自动交易

本文概述了基于 RSI 和移动平均线指标实现 Deus EA 以指导自动交易的步骤。
preview
从新手到专家:MQL5交易的必备之旅

从新手到专家:MQL5交易的必备之旅

释放您的潜力!您会被无数机会包围。发现开启您的MQL5之旅或将其提升到更高水平的三大顶级秘诀。让我们深入探讨适合初学者和专业人士的技巧和窍门。
preview
您应该知道的 MQL5 向导技术(第 02 部分):Kohonen 映射

您应该知道的 MQL5 向导技术(第 02 部分):Kohonen 映射

这些系列文章所提议的是,MQL5 向导应作为交易员的支柱。 为什么呢? 因为交易员不仅可以利用 MQL5 向导装配他的新想法来节省时间,还可以大大减少重复编码带来的错误;他最终可把精力投向自我交易哲学中的几个关键领域。
preview
在 MQL5 中实现增广迪基–富勒检验

在 MQL5 中实现增广迪基–富勒检验

在本文中,我们演示了增广迪基–富勒(Augmented Dickey-Fuller,ADF)检验的实现,并将其应用于使用 Engle-Granger 方法进行协整检验。
preview
价格走势模型及其主要规定。(第 3 部分):计算股票证券博弈的最优参数

价格走势模型及其主要规定。(第 3 部分):计算股票证券博弈的最优参数

在作者基于概率论开发的工程方式框架内,找到了开立盈利仓位的条件,并计算了最优(利润最大化)止盈和止损值。
preview
暴力方式搜素形态(第 V 部分):全新视角

暴力方式搜素形态(第 V 部分):全新视角

在这篇文章中,我将展示一种完全不同的方式进行算法交易,我经历了很长一段时间后才最终遇到它。当然,这一切所作所为全靠我的暴力程序,其经历了许多更改,令其能够并发解决若干问题。尽管如此,这篇文章明面上仍然比较笼统和尽可能简单,这就是为什么它也适合那些对暴力一无所知的人。
preview
图表上的历史仓位及其盈利/亏损图指标

图表上的历史仓位及其盈利/亏损图指标

在本文中,我将探讨根据交易历史获取已平仓头寸信息的选项。此外,我将创建一个简单的指标,以图表的形式显示每个柱形上仓位的大致盈利/亏损。
preview
衡量指标信息

衡量指标信息

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

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

在本文中,我们将亲眼见证如何在简单地利用 MQL5 语言锁定指标,我们将以一种非常有趣和迷人的方式做到这一点。
preview
MQL5 中的范畴论 (第 2 部分)

MQL5 中的范畴论 (第 2 部分)

范畴论是数学的一个多样化和不断扩展的分支,到目前为止,在 MQL5 社区中还相对难以发现。 这些系列文章旨在介绍和研究其一些概念,其总体目标是建立一个开放的函数库,吸引评论和研讨,同时希望在交易者的策略开发中进一步在运用这一非凡的领域。
preview
情绪分析与深度学习在交易策略中的应用以及使用Python进行回测

情绪分析与深度学习在交易策略中的应用以及使用Python进行回测

在本文中,我们将介绍如何使用Python中的情绪分析和ONNX模型,并将它们应用于EA中。使用一个脚本运行TensorFlow训练的ONNX模型,以进行深度学习预测;而通过另一个脚本获取新闻标题,并使用人工智能技术量化情绪。
preview
了解 MQL5 面向对象编程(OOP)

了解 MQL5 面向对象编程(OOP)

作为开发人员,我们需要学习如何在创建和开发软件时,无需重复代码做到可重用、且灵活,尤其是当我们拥有不同行为的不同对象时。这可以利用面向对象的编程技术和原则来顺滑地达到。在本文中,我们将介绍 MQL5 面向对象编程的基础知识,以便了解如何在我们的软件中利用这一关键主题的原则和实践。
preview
DoEasy. 控件 (第 12 部分): 基准列表对象、ListBox 和 ButtonListBox WinForms 对象

DoEasy. 控件 (第 12 部分): 基准列表对象、ListBox 和 ButtonListBox WinForms 对象

在本文中,我将继续创建 WinForms 对象列表的基准对象,以及两个新对象:ListBox 和 ButtonListBox。
preview
神经网络变得轻松(第五十四部分):利用随机编码器(RE3)进行高效研究

神经网络变得轻松(第五十四部分):利用随机编码器(RE3)进行高效研究

无论何时我们研究强化学习方法时,我们都会面对有效探索环境的问题。解决这个问题通常会导致算法更复杂性,以及训练额外模型。在本文中,我们将看看解决此问题的替代方法。
preview
交易事务. 请求和响应结构、描述和记录

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

本文探讨了处理交易请求结构,即创建请求、将其发送到服务器之前的初步验证、服务器对交易请求的响应以及交易交易的结构。我们将创建简单方便的函数,将交易订单发送到服务器,并根据所讨论的内容,创建EA来通知交易事务。
preview
如何利用 MQL5 创建简单的多币种智能交易系统(第 5 部分):凯尔特纳(Keltner)通道上的布林带 — 指标信号

如何利用 MQL5 创建简单的多币种智能交易系统(第 5 部分):凯尔特纳(Keltner)通道上的布林带 — 指标信号

本文中的多币种 EA 是一款智能交易系统或交易机器人,可以仅从一个品种图表中交易(开单、平单和管理订单,例如:尾随止损和止盈)多个品种(对)。在本文中,我们将用到来自两个指标的信号,在本例中为凯尔特纳(Keltner)通道上的布林带®。