MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
在类中包装 ONNX 模型

在类中包装 ONNX 模型

面向对象编程可以创建更紧凑、易于阅读和修改的代码。 在此,我们将会看到三个 ONNX 模型的示例。
preview
时间序列挖掘的数据标签(第4部分):使用标签数据的可解释性分解

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

本系列文章介绍了几种时间序列标记方法,这些方法可以创建符合大多数人工智能模型的数据,而根据需要进行有针对性的数据标记可以使训练后的人工智能模型更符合预期设计,提高我们模型的准确性,甚至帮助模型实现质的飞跃!
preview
MQL5 中的范畴论 (第 1 部分)

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

范畴论是数学的一个多样化和不断扩展的分支,到目前为止,在 MQL 社区中还相对难以发现。 这些系列文章旨在介绍和研究其一些概念,其总体目标是建立一个开放的函数库,吸引评论和研讨,同时希望在交易者的策略开发中进一步在运用这一非凡的领域。
preview
构建K线图趋势约束模型(第8部分):EA的开发(一)

构建K线图趋势约束模型(第8部分):EA的开发(一)

在本文中,我们将基于前文创建的指标,开发我们的第一个由MQL5语言编写的EA。我们将涵盖实现自动化交易所需的所有功能,包括风险管理。这将极大地帮助用户从手动交易转变为自动化交易系统。
preview
神经网络实验(第 4 部分):模板

神经网络实验(第 4 部分):模板

在本文中,我将利用实验和非标准方法开发一个可盈利的交易系统,并验证神经网络是否对交易者有任何帮助。 若在交易中运用神经网络的话, MetaTrader 5 完全可作为一款自给自足的工具。 简单的解释。
preview
模式搜索的暴力方法(第六部分):循环优化

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

在这篇文章中,我将展示改进的第一部分,这些改进不仅使我能够使MetaTrader 4和5交易的整个自动化链闭环,而且还可以做一些更有趣的事情。从现在起,这个解决方案使我能够完全自动化创建EA和优化,并最大限度地降低寻找有效交易配置的劳动力成本。
preview
您应该知道的 MQL5 向导技术(第 03 部分):香农(Shannon)熵

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

今天的交易者都是哲学家,几乎总是在寻找新的想法,尝试提炼它们,选择修改或丢弃它们:一个探索性的过程,肯定会花费相当的勤奋程度。 本系列文章将提出,MQL5 向导应该是交易者的支柱。
preview
种群优化算法:入侵杂草优化(IWO)

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

在各种条件下杂草的惊人生存能力已演化成强大优化算法的思路。 IWO 是以前审阅过的算法中最好的算法之一。
preview
交易中的神经网络:针对金融市场的多模态、扩增工具型智代(FinAgent)

交易中的神经网络:针对金融市场的多模态、扩增工具型智代(FinAgent)

我们邀请您来探索 FinAgent,一个多模态金融交易智代框架,设计用来分析反映市场动态和历史交易形态的各种数据。
preview
MQL5中的范畴论(第22部分):对移动平均的不同看法

MQL5中的范畴论(第22部分):对移动平均的不同看法

在本文中,我们尝试通过只关注一个指标来简化对这些系列中所涵盖概念的说明,这是最常见的,可能也是最容易理解的。它就是移动平均。在这样做的时候,我们会探讨垂直自然变换的意义和可能的应用。
preview
在MQL5中实现基于抛物线转向指标(Parabolic SAR)和简单移动平均线(SMA)的快速交易策略算法

在MQL5中实现基于抛物线转向指标(Parabolic SAR)和简单移动平均线(SMA)的快速交易策略算法

在本文中,我们将在MQL5中开发一个快速交易EA,利用抛物线SAR和简单移动平均线(SMA)指标来创建一个响应迅速的交易策略。我们详细介绍了该策略的实施过程,包括指标的使用、信号的生成以及测试和优化过程。
preview
种群优化算法:树苗播种和成长(SSG)算法

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

树苗播种和成长(SSG)算法的灵感来自星球上最具韧性的生物之一,在各种条件下都表现出杰出的生存能力。
preview
风险管理(第二部分):在图形界面中实现手数计算

风险管理(第二部分):在图形界面中实现手数计算

在本文中,我们将探讨如何使用强大的 MQL5 图形控件库来改进和更有效地应用上一篇文章中提出的概念。我们将逐步完成创建一个功能齐全的图形用户界面。我将解释它背后的想法,以及所使用的每种方法的目的和操作。此外,在本文的最后,我们将测试我们创建的面板,以确保它正确运行并实现其既定目标。
preview
您应该知道的 MQL5 向导技术(第 04 部分):线性判别分析

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

今天的交易者都是哲学家,几乎总是在寻找新的想法,尝试提炼它们,选择修改或丢弃它们:一个探索性的过程,肯定会花费相当的勤奋程度。 这些系列文章将提出 MQL5 向导应该是交易者在此领域努力的中流砥柱。
DoEasy 函数库中的时间序列(第五十七部分):存储一次即时报价数据的对象
DoEasy 函数库中的时间序列(第五十七部分):存储一次即时报价数据的对象

DoEasy 函数库中的时间序列(第五十七部分):存储一次即时报价数据的对象

从本文开始,着手创建操控价格数据的函数库功能。 今天,创建一个对象类,存储到达的即时报价的全部价格数据。
DoEasy 函数库中的图形(第七十九部分):“动画框”对象类及其衍生对象
DoEasy 函数库中的图形(第七十九部分):“动画框”对象类及其衍生对象

DoEasy 函数库中的图形(第七十九部分):“动画框”对象类及其衍生对象

在本文中,我将开发单个的动画框,及其衍生类。 该类允许绘制造型,同时维护,并恢复它们得下层背景。
preview
MQL5 简介(第 5 部分):MQL5 数组函数入门指南

MQL5 简介(第 5 部分):MQL5 数组函数入门指南

在第 5 部分中探索 MQL5 数组的世界,该部分专为绝对初学者设计。本文简化了复杂的编码概念,重点在于清晰性和包容性。加入我们的学习者社区,在这里解决问题,分享知识!
preview
如何使用MQL5的控件类创建交互式仪表板/面板(第一部分):设置面板

如何使用MQL5的控件类创建交互式仪表板/面板(第一部分):设置面板

在本文中,我们将使用MQL5的控件类创建一个交互式交易仪表板,旨在简化交易操作。该面板包含标题、用于交易、平仓和信息的导航按钮,以及用于执行交易和管理仓位的专用操作按钮。到文章结束时,你将拥有一个基础面板,为未来的扩展做好准备。
preview
DoEasy. 控件(第 15 部分):TabControl WinForms 对象 — 多行选项卡标题、选项卡处理方法

DoEasy. 控件(第 15 部分):TabControl WinForms 对象 — 多行选项卡标题、选项卡处理方法

在本文中,我将继续工作于 TabControl WinForm 对象 — 我将创建一个选项卡字段对象类,令选项卡标题排列几行成为可能,并添加处理对象相应选项卡的方法。
preview
学习如何基于 DeMarker 设计交易系统

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

此为我们系列中的一篇新文章,介绍如何基于最流行的技术指标设计交易系统。 在本文中,我们将介绍如何基于 DeMarker 指标创建交易系统。
preview
了解 MQL5 面向对象编程(OOP)

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

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

龟壳演化算法(TSEA)

这是一种受乌龟壳演化启发的独特优化算法。TSEA算法模拟了角质化皮肤区域的逐渐形成,这些区域代表了一个问题的最优解。最优解会变得更加“坚硬”,并位于更靠近外层表面的位置,而不太理想的解则保持“较软”的状态,并位于内部。该算法通过根据质量和距离对解进行聚类,从而保留了不太理想的选项,并提供了灵活性和适应性。
preview
通过应用程序了解MQL5中的函数

通过应用程序了解MQL5中的函数

函数在任何编程语言中都是至关重要的东西,它有助于开发人员应用(DRY)的概念,这意味着不要重复自己,还有许多其他好处。在本文中,您将找到更多关于函数的信息,以及我们如何使用简单的应用程序在MQL5中创建自己的函数,这些应用程序可以在任何系统中使用或调用。您必须在不使事情复杂化的情况下丰富您的交易系统。
DoEasy 函数库中的图形(第九十六部分):窗体对象中的图形和鼠标事件的处理
DoEasy 函数库中的图形(第九十六部分):窗体对象中的图形和鼠标事件的处理

DoEasy 函数库中的图形(第九十六部分):窗体对象中的图形和鼠标事件的处理

在本文中,我将启动创建处理窗体对象中的鼠标事件的功能,以及向品种对象添加新属性并跟踪。 此外,我将改进品种对象类,因为图表品种现在有新的属性需要考虑和跟踪。
preview
MQL5 交易工具包(第 2 部分):扩展和实现仓位管理 EX5 库

MQL5 交易工具包(第 2 部分):扩展和实现仓位管理 EX5 库

了解如何在 MQL5 代码或项目中导入和使用 EX5 库。在这篇续文中,我们将通过向现有库中添加更多仓位管理功能并创建两个 EA 交易系统来扩展 EX5 库。第一个例子将使用可变指数动态平均(Variable Index Dynamic Average,VIDYA)技术指标来开发追踪止损交易策略 EA 交易,而第二个例子将利用交易面板来监控、开仓、平仓和修改仓位。这两个例子将演示如何使用和实现升级后的 EX5 仓位管理库。
preview
DoEasy 函数库中的图形(第九十九部分):依据单个控制点移动扩展图形对象

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

在前一篇文章中,我实现了依据控件窗体移动扩展图形对象轴点的功能。 现在,我将实现依据单个图形对象控制点(窗体)移动复合图形对象的功能。
preview
神经网络变得轻松(第四十二部分):模型拖延症、原因和解决方案

神经网络变得轻松(第四十二部分):模型拖延症、原因和解决方案

在强化学习的背景下,模型拖延症可能由多种原因引起。 本文研究了模型拖延症的一些可能原因,以及克服它们的方法。
preview
重构经典策略(第十部分):人工智能(AI)能否为MACD提供动力?

重构经典策略(第十部分):人工智能(AI)能否为MACD提供动力?

加入我们的行列,我们将实证分析MACD指标,以测试将AI应用于包含该指标的策略是否会在预测欧元兑美元(EURUSD)方面提高准确性。我们同时评估该指标本身是否比价格更容易预测,以及该指标的值是否能预测未来的价格水平。我们将为您提供所需的信息,以决定是否应该考虑将MACD整合到您的AI交易策略中。
preview
周期与外汇

周期与外汇

周期在我们的生活中具有极其重要的意义。昼夜交替、四季更迭、一周的七天以及许多其他不同性质的周期都存在于每个人的生活中。在本文中,我们将探究金融市场中的周期。
preview
DoEasy 函数库中的图形(第九十八部分):移动扩展的标准图形对象的轴点

DoEasy 函数库中的图形(第九十八部分):移动扩展的标准图形对象的轴点

在本文中,我将继续扩展的标准图形对象的开发,创建移动复合图形对象轴点的功能,通过控制点来管理图形对象轴点坐标。
preview
让新闻交易变得容易(第一部分):创建一个数据库

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

新闻交易可能很复杂,令人难以招架,在本文中我们将介绍获取新闻数据的步骤。此外,我们还将了解MQL5经济数据日历及其提供的功能。
preview
在MetaTrader 5中集成隐马尔可夫模型

在MetaTrader 5中集成隐马尔可夫模型

在本文中,我们将展示如何将使用Python训练的隐马尔可夫模型(Hidden Markov Models, HMMs)集成到MetaTrader 5应用程序中。HMM是一种强大的统计工具,用于对时间序列数据进行建模,其中被建模的系统以不可观察(隐藏)的状态为特征。HMM的一个基本前提是,在特定时间处于给定状态的概率取决于该过程在前一个时间点的状态。
DoEasy 函数库中的图形(第九十二部分):标准图形对象记忆类。 对象属性变更历史记录
DoEasy 函数库中的图形(第九十二部分):标准图形对象记忆类。 对象属性变更历史记录

DoEasy 函数库中的图形(第九十二部分):标准图形对象记忆类。 对象属性变更历史记录

在本文中,我将创建标准图形对象记忆类,能够在对象修改其属性时保存其过往状态。 反之,这样就能够溯源以前的图形对象状态。
preview
重构经典策略:原油

重构经典策略:原油

在本文中,我们重新审视一种经典的原油交易策略,旨在通过利用监督机器学习算法来对其进行优化。我们将构建一个最小二乘模型,该模型基于布伦特原油(Brent)和西德克萨斯中质原油(WTI)之间的价差来预测未来布伦特原油价格。我们的目标是找到一个能够预测布伦特原油未来价格变化的领先指标。
preview
在MQL5中构建自优化智能交易系统(EA)(第五部分):自适应交易规则

在MQL5中构建自优化智能交易系统(EA)(第五部分):自适应交易规则

如何完美使用指标的原则,并不总是易于遵循。在市场行情较为平稳的情况下,指标可能会意外地给出不构成交易条件的信号,导致算法交易者错失交易机会。本文将提出一个潜在的解决方案,我们将讨论如何构建能够根据现有市场数据调整其交易规则的交易应用程序。
preview
从基础到中级:结构(一)

从基础到中级:结构(一)

今天,我们将开始以更简单、更实用、更舒适的方式研究结构。结构是编程的基础之一,无论它们是否结构化。我知道很多人认为结构只是数据的集合,但我向你保证,它们不仅仅是结构。接下来,我们将以最富启发性的方式开始探索这个全新的宇宙。
preview
开发回放系统 — 市场模拟(第 15 部分):模拟器的诞生(V)- 随机游走

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

在本文中,我们将完成自有系统模拟器的开发。 于此的主要目标是就上一篇文章中讨论的算法进项配置。 该算法旨在创建随机游走走势。 因此,为了明白今天的讲义,有必要了解以前文章的内容。 如果您尚未跟踪模拟器的开发,我建议您从头开始阅读本系列文章。 否则,您也许对此处将要讲解的内容不明所以。
preview
利用 MQL5 的交互式 GUI 改进您的交易图表(第 II 部分):可移动 GUI(II)

利用 MQL5 的交互式 GUI 改进您的交易图表(第 II 部分):可移动 GUI(II)

依靠我们的以 MQL5 创建可移动 GUI 的深度指南,在您的交易策略和实用程序中解锁动态数据表达的潜力。深入研究面向对象编程的基本原理,并探索如何在同一图表上轻松高效地设计和实现单个或多个可移动 GUI。
preview
量化风险管理方法:应用 VaR 模型优化多货币投资组合(使用 Python 和 MetaTrader 5)

量化风险管理方法:应用 VaR 模型优化多货币投资组合(使用 Python 和 MetaTrader 5)

本文探讨了价值风险(VaR)模型在多货币投资组合优化中的潜力。借助 Python 的强大功能和 MetaTrader 5 的功能,我们展示了如何实施 VaR 分析,以实现高效的资金分配和头寸管理。从理论基础到实际实施,文章涵盖了将 VaR——这一最稳健的风险计算系统之一——应用于算法交易的方方面面。
preview
在MQL5中自动化交易策略(第5部分):开发自适应交叉RSI交易套件策略

在MQL5中自动化交易策略(第5部分):开发自适应交叉RSI交易套件策略

在本文中,我们开发了自适应交叉RSI交易套件系统。该系统使用周期为14和50的移动平均线交叉来产生信号,并由一个周期为14的RSI过滤器进行确认。该系统包含一个交易日过滤器、带注释的信号箭头,以及一个用于监控的实时仪表盘。 这种方法确保了自动化交易中的精确性和适应性。