MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
使用 Python 创建波动率预测指标

使用 Python 创建波动率预测指标

在本文中,我们将使用二元分类来预测未来的极端波动。此外,我们将利用机器学习开发极端波动预测指标。
preview
突破机器学习的局限(第一部分):缺乏可互操作的度量指标

突破机器学习的局限(第一部分):缺乏可互操作的度量指标

无论以何种形式构建可靠的人工智能(AI)交易策略,都有一种强大且普遍存在的力量,正悄然地侵蚀着我们社区的集体努力,本文提到,我们所面临的部分问题,源于对“最优实践”的盲目遵循。通过为读者提供基于现实市场的简单证据,我们说明为何必须摒弃这种做法,转而采用特定领域内的最优实践,这样一来,我们的社区才有可能重振AI的潜在力量。
preview
原子轨道搜索(AOS)算法:改进与拓展

原子轨道搜索(AOS)算法:改进与拓展

在本文的第二部分,我们将继续开发一种改进版的原子轨道搜索(AOS)算法,重点聚焦于特定操作符的优化设计,以提升算法的效率和适应性。在分析了该算法的基本原理和运行机制之后,我们将探讨提升其性能以及分析复杂解空间能力的方法,并提出新的思路以扩展其作为优化工具的功能。
preview
开发回放系统(第 55 部分):控制模块

开发回放系统(第 55 部分):控制模块

在本文中,我们将实现一个控制指标,以便它可以集成到我们正在开发的消息系统中。虽然这并不难,但关于这个模块的初始化,有一些细节需要了解。此处提供的材料仅用于教育目的。除了学习和掌握所示的概念外,绝不应将其视为任何目的的应用程序。
preview
神经网络实践:伪逆(I)

神经网络实践:伪逆(I)

今天,我们将开始探讨如何在纯MQL5语言中实现伪逆的计算。即将展示的代码对于初学者来说可能比我预期的要复杂得多,我还在思考如何以简单的方式解释它。所以,现在请将其视为学习一些不寻常代码的机会。请保持冷静和专注。虽然它并不旨在高效或快速应用,但其目标是尽可能具有教育意义。
preview
交易中的神经网络:探索局部数据结构

交易中的神经网络:探索局部数据结构

在嘈杂的条件下有效识别和预存市场数据的局部结构是交易中的一项关键任务。运用自注意力机制在处理这类数据方面展现出可喜的结果;不过,经典方式并未考虑底层结构的局部特征。在本文中,我将引入一种能够协同这些结构依赖关系的算法。
preview
开发回放系统(第 74 部分):新 Chart Trade(一)

开发回放系统(第 74 部分):新 Chart Trade(一)

在本文中,我们将修改本系列关于 Chart Trade 中显示的最后一段代码。这些变化对于使代码适应当前的回放/模拟系统模型是必要的。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview
在Python和MQL5中应用局部特征选择

在Python和MQL5中应用局部特征选择

本文探讨了Narges Armanfard等人在论文《数据分类的局部特征选择》中介绍的一种特征选择算法。该算法使用Python实现,用于构建二元分类器模型,这些模型可以与MetaTrader 5应用程序集成以进行推理。
preview
交易中的神经网络:场景感知物体检测(HyperDet3D)

交易中的神经网络:场景感知物体检测(HyperDet3D)

我们邀请您来领略一种利用超网络检测物体的新方式。超网络针对主模型生成权重,允许参考具体的当前市场形势。这种方式令我们能够通过令模型适配不同的交易条件来提升预测准确性。
preview
在MQL5中创建交易管理员面板(第七部分):可信任用户、密码恢复与加密技术

在MQL5中创建交易管理员面板(第七部分):可信任用户、密码恢复与加密技术

每次刷新图表、通过管理面板EA添加新交易品种或重启终端时触发的安全提示,可能会让人感觉繁琐。在本次讨论中,我们将探索并实现一项功能,该功能通过跟踪登录尝试次数来识别可信用户。在达到一定次数的失败尝试后,应用程序将切换至高级登录流程,该流程还为可能忘记密码的用户提供密码恢复功能。此外,我们还将介绍如何将加密技术有效集成到管理面板中,以增强安全性。
preview
市场模拟(第六部分):将信息从 MetaTrader 5 传输到 Excel

市场模拟(第六部分):将信息从 MetaTrader 5 传输到 Excel

许多人,尤其是非程序员,发现在 MetaTrader 5 和其他程序之间传输信息非常困难。其中一个程序就是 Excel。许多人使用 Excel 作为管理和维护风险控制的一种方式。这是一个优秀的程序,易于学习,即使对于那些不是 VBA 程序员的人来说也是如此。在这里,我们将看看如何在 MetaTrader 5 和 Excel 之间建立连接(一种非常简单的方法)。
preview
神经网络变得简单(第 83 部分):“构象”时空连续关注度转换器算法

神经网络变得简单(第 83 部分):“构象”时空连续关注度转换器算法

本文介绍了最初是为天气预报而开发的“构象(Conformer)”算法,其变化多端之处可与金融市场相提并论。“构象(Conformer)”是一种复杂的方法。它结合了关注度模型和常微分方程的优点。
preview
神经网络变得简单(第 79 部分):在状态上下文中的特征聚合查询(FAQ)

神经网络变得简单(第 79 部分):在状态上下文中的特征聚合查询(FAQ)

在上一篇文章中,我们领略了一种从图像中检测对象的方法。不过,处理静态图像与处理动态时间序列(例如我们所分析的价格动态)有些不同。在本文中,我们将研究检测视频中对象的方法,其可在某种程度上更接近我们正在解决的问题。
preview
从基础到中级:数组(四)

从基础到中级:数组(四)

在本文中,我们将看看如何做一些与 C、C++ 和 Java 等语言中实现的非常相似的事情。我说的是在函数或过程中传递几乎无限数量的参数。虽然这似乎是一个相当高级的主题,但在我看来,任何理解了前面概念的人都可以很容易地实现这里展示的内容。只要它们真的被正确理解。
preview
交易中的神经网络:层次化向量变换器(终章)

交易中的神经网络:层次化向量变换器(终章)

我们继续研究层次化向量变换器方法。在本文中,我们将完成模型的构造。我们还会在真实历史数据上对其进行训练和测试。
preview
金融建模中合成数据的生成式对抗网络(GAN)(第 1 部分):金融建模中的 GAN 与合成数据概述

金融建模中合成数据的生成式对抗网络(GAN)(第 1 部分):金融建模中的 GAN 与合成数据概述

本文向交易者介绍产生合成金融数据的生成式对抗网络(GAN),解决模型训练中的数据限制。它涵盖了 GAN 基础知识、python 和 MQL5 代码实现,以及实际的金融应用,令交易者能够通过合成数据强化模型的准确性和健壮性。
preview
名义变量的序数编码

名义变量的序数编码

在本文中,我们将讨论并演示如何使用Python和MQL5将名义预测变量转换为适合机器学习算法的数值格式。
preview
您应当知道的 MQL5 向导技术(第 47 部分):配合时态差异的强化学习

您应当知道的 MQL5 向导技术(第 47 部分):配合时态差异的强化学习

时态差异是强化学习中的另一种算法,它基于智顾训练期间预测和实际奖励之间的差异更新 Q-值。它专门驻守更新 Q-值,而不介意它们的状态-动作配对。因此,我们考察如何在向导汇编的智能系统中应用这一点,正如我们在之前文章中所做的那样。
preview
Connexus观察者模式(第8部分):添加一个观察者请求

Connexus观察者模式(第8部分):添加一个观察者请求

在本系列文章的最后一篇中,我们探讨了观察者模式(Observer Pattern) 在Connexus库中的实现,同时对文件路径和方法名进行了必要的重构优化。该系列文章完整地记录了Connexus库的开发过程——这是一个专为简化复杂应用中的HTTP通信而设计的工具库。
preview
利用 MQL5 经济日历进行交易(第四部分):在仪表盘中实现实时新闻更新

利用 MQL5 经济日历进行交易(第四部分):在仪表盘中实现实时新闻更新

本文通过实现实时新闻更新来增强我们的经济日历仪表盘,以保持市场信息的时效性和可操作性。我们在 MQL5 中集成了实时数据获取技术,以持续更新仪表盘上的事件,从而提升界面的响应速度。此更新优化确保我们可以直接从仪表盘获取最新的经济新闻,从而基于最新数据优化交易决策。
preview
在MQL5中创建交易管理面板(第九部分):代码组织(5):分析面板(AnalyticsPanel)类

在MQL5中创建交易管理面板(第九部分):代码组织(5):分析面板(AnalyticsPanel)类

在本文中,我们将探讨如何获取实时市场数据和交易账户信息,执行各种计算,并将结果展示在自定义面板上。为此,我们将深入开发一个分析面板(AnalyticsPanel)类,该类封装了所有这些功能,包括面板创建功能。这项工作是我们正在进行的新建管理面板智能交易系统(EA)扩展工作的一部分,旨在运用模块化设计原则和代码组织的最佳实践来引入高级功能。
preview
开发回放系统(第 77 部分):新 Chart Trade(四)

开发回放系统(第 77 部分):新 Chart Trade(四)

在本文中,我们将介绍创建通信协议时需要考虑的一些措施和预防措施。这些都是非常简单明了的事情,所以我们在本文中不会详细介绍。但要了解会发生什么,您需要了解文章的内容。
preview
您应当知道的 MQL5 向导技术(第 37 部分):配以线性和 Matérn 内核的高斯过程回归

您应当知道的 MQL5 向导技术(第 37 部分):配以线性和 Matérn 内核的高斯过程回归

线性内核是机器学习中,针对线性回归和支持向量机所用的同类中最简单的矩阵。另一方面,Matérn 内核是我们在之前的文章中讲述的径向基函数的更普遍版本,它擅长映射不如 RBF 假设那样平滑的函数。我们构建了一个自定义信号类,即利用两个内核来预测做多和做空条件。
preview
因果网络分析(CNA)、随机模型最优控制(SMOC)和纳什博弈论结合深度学习的示例

因果网络分析(CNA)、随机模型最优控制(SMOC)和纳什博弈论结合深度学习的示例

我们将向之前发布的文章中的三个例子里加入深度学习,并与之前的版本进行比较。目标是学习如何将深度学习(DL)应用于其他EA。
preview
使用经典机器学习方法预测汇率:逻辑回归(logit)模型和概率回归(probit)模型

使用经典机器学习方法预测汇率:逻辑回归(logit)模型和概率回归(probit)模型

本文尝试构建一款用于预测汇率报价的EA。该算法以经典分类模型——逻辑回归与概率回归为基础。并利用似然比检验作为交易信号的筛选器。
preview
价格行为分析工具包开发(第二十部分):外部资金流(4)——相关性路径探索器

价格行为分析工具包开发(第二十部分):外部资金流(4)——相关性路径探索器

作为价格行为分析工具包开发系列的一部分,相关性路径探索器为理解货币对动态提供了一种全新方法。该工具可自动收集和分析数据,深入分析诸如欧元兑美元(EUR/USD)和英镑兑美元(GBP/USD)等货币对之间的相互作用。借助其实用、实时的信息,增强你的交易策略,助您更有效地管理风险并发现机会。
preview
从基础到中级:FOR 语句

从基础到中级:FOR 语句

在本文中,我们将了解 FOR 语句最基本的概念。了解这里将显示的所有内容非常重要。与我们迄今为止讨论的其他语句不同,FOR 语句有一些怪癖,很快就会变得非常复杂。所以不要让这样的事情堆积起来,尽快开始学习和练习。
preview
您应当知道的 MQL5 向导技术(第 54 部分):搭配混合 SAC 和张量的强化学习

您应当知道的 MQL5 向导技术(第 54 部分):搭配混合 SAC 和张量的强化学习

软性参与者-评论者是一种强化学习算法,我们曾在之前的系列文章中考察过 Python 和 ONNX,作为高效的网络训练方式。我们重新审视该算法,意在利用张量,即 Python 中常用的计算图形。
preview
市场模拟(第三部分):性能问题

市场模拟(第三部分):性能问题

我们经常需要后退一步,然后继续前进。在本文中,我们将展示所有必要的更改,以确保鼠标和 Chart Trade 指标不会中断。作为奖励,我们还将介绍未来将广泛使用的其他头文件中发生的其他更改。
preview
MQL5 简介(第 15 部分):构建自定义指标的初学者指南(四)

MQL5 简介(第 15 部分):构建自定义指标的初学者指南(四)

在本文中,您将学习如何在 MQL5 中构建价格行为指标,重点关注低点 (L)、高点 (H)、更高的低点 (HL)、更高的高点 (HH)、更低的低点 (LL) 和更低的高点 (LH) 等关键点,以分析趋势。你还将学习如何识别溢价和折价区域,标记 50% 回撤位,以及如何使用风险回报比来计算利润目标。文章还介绍了如何根据趋势结构确定入场点、止损 (SL) 和止盈 (TP) 水平。
preview
开发回放系统(第 71 部分):取得正确的时间(四)

开发回放系统(第 71 部分):取得正确的时间(四)

在本文中,我们将研究如何实现上一篇文章中所示的与回放/模拟服务相关的内容。就像生活中的许多其他事情一样,问题必然会出现。这次的情况也不例外。在这篇文章中,我们将继续改进。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview
MQL5 简介(第 17 部分):构建趋势反转 EA 交易

MQL5 简介(第 17 部分):构建趋势反转 EA 交易

本文教初学者如何在 MQL5 中构建一个基于图表形态识别的 EA 交易系统,该系统利用趋势线突破和反转进行交易。通过学习如何动态检索趋势线值并将其与价格走势进行比较,读者将能够开发出能够识别和交易图表形态(如上升和下降趋势线、通道、楔形、三角形等)的 EA 交易。
preview
从基础到中级:浮点数

从基础到中级:浮点数

本文简要介绍浮点数的概念。由于这篇文章非常复杂,请仔细阅读,不要期望很快掌握浮点数系统。随着时间的推移,当你获得使用它的经验时,它才会变得清晰。但本文将帮助您理解为什么您的应用程序有时会产生与预期不同的结果。
preview
交易中的神经网络:降低锐度强化变换器效率(SAMformer)

交易中的神经网络:降低锐度强化变换器效率(SAMformer)

训练变换器模型需要大量数据,并且往往很困难,因为模型不擅长类推到小型数据集。SAMformer 框架通过避免糟糕的局部最小值来帮助解决这个问题。即使在有限的训练数据集上,也能提升模型的效率。
preview
开发回放系统(第 60 部分):玩转服务(一)

开发回放系统(第 60 部分):玩转服务(一)

很长一段时间以来,我们一直在研究指标,但现在是时候让服务重新工作了,看看图表是如何根据提供的数据构建的。然而,由于整个事情并没有那么简单,我们必须注意了解前方等待我们的是什么。
preview
圆搜索算法(CSA)

圆搜索算法(CSA)

本文提出一种基于圆几何特性的新型元启发式优化算法——圆搜索算法(CSA)。该算法通过模拟切线方向上的点移动机制,在解空间中实现全局探索与局部开发的协同优化。
preview
将互信息作为渐进特征选择的准则

将互信息作为渐进特征选择的准则

在本文中,我们展示了基于最优预测变量集与目标变量之间互信息渐进特征选择的MQL5实现。
preview
重新定义MQL5与MetaTrader 5指标

重新定义MQL5与MetaTrader 5指标

MQL5中一种创新的指标信息收集方法,使开发者能够向指标传递自定义输入参数以进行即时计算,从而实现了更灵活、更高效的数据分析。这种方法在算法交易中尤为实用,因为它能突破传统限制,增强对指标所处理信息的掌控力。
preview
Connexus请求解析(第六部分):创建HTTP请求与响应

Connexus请求解析(第六部分):创建HTTP请求与响应

在Connexus库系列文章的第六篇中,我们将聚焦于完整的HTTP请求,涵盖构成请求的各个组件。我们将创建一个表示整个请求的类,这将有助于将之前创建的各个类整合在一起。
preview
数据科学和机器学习(第 33 部分):MQL5 中的 Pandas 数据帧,为机器学习收集数据更加容易

数据科学和机器学习(第 33 部分):MQL5 中的 Pandas 数据帧,为机器学习收集数据更加容易

当与机器学习模型共事时,确保用于训练、验证和测试的数据一致性必不可少。在本文中,我们将创建我们自己的 MQL5 版本 Pandas 函数库,确保使用统一方式来处理机器学习数据;这样做是为确保在 MQL5 内部和外部应用相同的数据,其中大部分发生在训练阶段。