MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
基于时间、价格和成交量创建 3D 柱状图引入波动率测量

基于时间、价格和成交量创建 3D 柱状图引入波动率测量

本文探讨了多元三维价格图表及其创建方法。我们还将探讨 3D 柱状图如何预测价格反转,以及 Python 和 MetaTrader 5 如何让我们实时绘制这些成交量柱状图。
preview
交易中的神经网络:具有预测编码的混合交易框架(StockFormer)

交易中的神经网络:具有预测编码的混合交易框架(StockFormer)

在本文中,我们将讨论混合交易系统 StockFormer,其结合了预测编码和强化学习(RL)算法。该框架用到 3 个变换器分支,集成了多样化多头注意力(DMH-Attn)机制,改进了原版的注意力模块,采用多头前馈模块,能够捕捉不同子空间中的多元化时间序列形态。
preview
从Python到MQL5:量子启发式交易系统的探索之旅

从Python到MQL5:量子启发式交易系统的探索之旅

本文探讨了量子启发式交易系统的开发过程,该系统从Python原型过渡到MQL5实现,以应用于现实世界的交易中。该系统运用了量子计算原理(如叠加态和纠缠态)来分析市场状态,尽管这是在经典计算机上使用量子模拟器运行的。该系统的关键特性包括:采用三量子比特系统,可同时分析八种市场状态;设置24小时的回溯观察期;并运用七种技术指标进行市场分析。尽管准确率看似一般,但若结合恰当的风险管理策略,该系统仍能提供显著的优势。
preview
随机优化和最优控制示例

随机优化和最优控制示例

这款名为SMOC(可能代表随机模型最优控制)的EA,是MetaTrader 5平台上一个较为先进的算法交易系统的简单示例。它结合了技术指标、模型预测控制以及动态风险管理来做出交易决策。该EA融入了自适应参数、基于波动率的仓位规模调整以及趋势分析,以优化其在不同市场条件下的表现。
preview
数据科学与机器学习(第 15 部分):SVM,每个交易员工具箱中的必备工具

数据科学与机器学习(第 15 部分):SVM,每个交易员工具箱中的必备工具

探索支持向量机 (SVM,Support Vector Machines) 在塑造未来交易中不可或缺的作用。本综合指南探讨了 SVM 如何提升您的交易策略,增强决策能力,并在金融市场中释放新的机会。通过实际应用、分步教程和专家见解深入了解 SVM 的世界。为自己配备必要的工具,帮助您应对现代交易的复杂性。使用 SVM 提升您的交易能力 — 这是每个交易者工具箱中的必备工具。
preview
迁移至 MQL5 Algo Forge(第 1 部分):创建主存储库

迁移至 MQL5 Algo Forge(第 1 部分):创建主存储库

在 MetaEditor 中处理项目时,开发人员经常需要管理代码版本。MetaQuotes 最近宣布迁移到 GIT,并推出具有代码版本控制和协作功能的 MQL5 Algo Forge。在本文中,我们将讨论如何更有效地使用新的和以前存在的工具。
preview
重构经典策略(第七部分):基于USDJPY的外汇市场与主权债务分析

重构经典策略(第七部分):基于USDJPY的外汇市场与主权债务分析

在今天的文章中,我们将分析汇率走势与政府债券之间的关系。债券是固定收益证券中最受欢迎的形式之一,将成为我们讨论的重点。加入我们,一起探索是否可以利用人工智能技术改进一种经典策略。
preview
化学反应优化(CRO)算法(第一部分):在优化中处理化学

化学反应优化(CRO)算法(第一部分):在优化中处理化学

在本文的第一部分中,我们将深入化学反应的世界并发现一种新的优化方法!化学反应优化 (CRO,Chemical reaction optimization) 利用热力学定律得出的原理来实现有效的结果。我们将揭示分解、合成和其他化学过程的秘密,这些秘密成为了这种创新方法的基础。
preview
您应当知道的 MQL5 向导技术(第 46 部分):Ichimoku

您应当知道的 MQL5 向导技术(第 46 部分):Ichimoku

Ichimuko Kinko Hyo 是日本著名的指标,可当作趋势识别系统。我们如之前类似文章所为,逐个形态地验证这一点,并借助 MQL5 向导的库类并汇编,来评估其策略和测试报告。
preview
将 MQL5 与数据处理包集成(第 4 部分):大数据处理

将 MQL5 与数据处理包集成(第 4 部分):大数据处理

本部分探讨了将 MQL5 与强大的数据处理工具集成的高级技术,重点是高效处理大数据,以增强交易分析和决策。
preview
基于Python与MQL5的多模块交易机器人(第一部分):构建基础架构与首个模块

基于Python与MQL5的多模块交易机器人(第一部分):构建基础架构与首个模块

我们将开发一个模块化交易系统,该系统结合了 Python 进行数据分析,并使用 MQL5 执行交易。四个独立模块并行监控市场的不同方面:成交量、套利、经济指标和风险,并使用包含400棵树的随机森林( RandomForest )。特别强调风险管理,因为即使是最先进的交易算法,如果没有适当的风险管理,也是毫无用处的。
preview
交易中的神经网络:具有层化记忆的智代

交易中的神经网络:具有层化记忆的智代

模仿人类认知过程的层化记忆方式令复杂金融数据的处理、以及适配新信号成为可能,因此在动态市场中提升投资决策的有效性。
preview
开发回放系统 — 市场模拟(第 17 部分):跳价和更多跳价(I)

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

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

S&P 500交易策略在MQL5中的实现(适合初学者)

了解如何利用MQL5精准预测标普500指数,结合经典技术分析以增强稳定性,并将算法与经过时间验证的原则相结合,以获得稳健的市场洞察。
preview
MQL5 中的 SQLite 功能示例:按交易品种及 Magic 编码展示交易统计信息的仪表盘

MQL5 中的 SQLite 功能示例:按交易品种及 Magic 编码展示交易统计信息的仪表盘

本文将介绍如何创建一个指标型仪表盘,按账户、交易品种及交易策略展示交易统计信息。我们将以官方文档及数据库相关文章中的示例为基础,逐步实现完整程序。
preview
智能系统健壮性测试

智能系统健壮性测试

在策略开发中,有许多错综复杂的细节需要考虑,对于初学交易者其中许多都未予重视。如是结果,众多交易者,包括我自己,都不得不历经苦难来学习这些教训。本文基于我观察到的大多数初学交易者在 MQL5 上开发策略时常见的陷阱。它将提供一系列提示、技巧、和示例,帮助辨别不合格的 EA,并以一种易于实现的方式来测试我们自己 EA 的稳健性。目标是教导读者,帮助他们未来购买 EA 时避免遭遇骗局,以及预防他们自己开发策略时的错误。
preview
开发回放系统 — 市场模拟(第 19 部分):必要的调整

开发回放系统 — 市场模拟(第 19 部分):必要的调整

在此,我们要做好准备,如此当我们需要往代码里添加新函数时,就能顺滑轻松地发生。当前代码还不能涵盖或处理那些显著推进过程所必需的事情。我们需要将所有东西都结构化,以便能够以最小的工作量实现某些事情。如果我们正确地做好所有事情,我们就能得到一个真正通用的系统,可以轻松地适应任何需要处理的状况。
preview
MQL5自动化交易策略(第十九部分):包络线趋势反弹剥头皮交易——交易执行与风险管理(下篇)

MQL5自动化交易策略(第十九部分):包络线趋势反弹剥头皮交易——交易执行与风险管理(下篇)

我们将为MQL5中的包络线趋势反弹剥头皮策略实现交易执行模块与风险管理功能。我们实现了订单触发逻辑,并构建了包含止损设置与头寸规模计算在内的风险控制体系。最终在第十八部分的基础上完成策略回测与参数优化。
preview
开发多币种 EA 交易 (第 5 部分):可变仓位大小

开发多币种 EA 交易 (第 5 部分):可变仓位大小

在前面的部分中,我们正在开发的智能交易系统 (EA) 只能使用固定的仓位大小进行交易。这对于测试来说是可以接受的,但在真实账户交易时并不建议这样做。让我们能够使用可变的仓位大小进行交易。
preview
构建蜡烛图趋势约束模型(第7部分):为EA开发优化我们的模型

构建蜡烛图趋势约束模型(第7部分):为EA开发优化我们的模型

在本文中,我们将详细探讨为开发专家顾问(EA)所准备的指标的相关内容。我们不仅会讨论如何对当前版本的指标进行进一步改进,以提升其准确性和功能,还会引入全新的功能来标记退出点,以弥补之前版本仅具备识别入场点功能的不足。
DoEasy 函数库中的图形(第九十四部分):移动和删除复合图形对象
DoEasy 函数库中的图形(第九十四部分):移动和删除复合图形对象

DoEasy 函数库中的图形(第九十四部分):移动和删除复合图形对象

在本文中,我将启动开发各种复合图形对象事件。 我们还将部分研究移动和删除复合图形对象。 实际上,在此,我还会把前一篇文章中实现的东西进行微调。
preview
MQL5 中的范畴论 (第 12 部分):秩序(Orders)

MQL5 中的范畴论 (第 12 部分):秩序(Orders)

本文是范畴论系列文章之以 MQL5 实现图论的部分,深入研讨秩序(Orders)。我们通过研究两种主要的秩序类型,实测秩序论的概念如何支持幺半群集合,从而为交易决策提供信息。
preview
DoEasy. 控件 (第 28 部分): 进度条控件中的柱线样式

DoEasy. 控件 (第 28 部分): 进度条控件中的柱线样式

在本文中,我将开发进度条控件的柱线显示样式和说明文本。
preview
在 MQL5 中构建自优化EA(第六部分):自适应交易规则(二)

在 MQL5 中构建自优化EA(第六部分):自适应交易规则(二)

本文探讨了如何优化 RSI 的水平和周期,以获得更好的交易信号。我们介绍了估算最优 RSI 值的方法,并使用网格搜索和统计模型来自动选择周期。最后,我们在 MQL5 中实现了该解决方案,同时利用 Python 进行分析。我们的方法力求务实和直接,旨在以简单的方式帮助您解决潜在复杂的问题。
preview
重构经典策略(第十四部分):高胜率交易形态

重构经典策略(第十四部分):高胜率交易形态

高胜率交易形态在交易圈内广为人知,但遗憾的是,其定义始终缺乏明确标准。本文将通过实证研究与算法建模,为高胜率形态构建量化定义框架,并探索其识别与运用方法。借助梯度提升树模型,我们演示如何系统性优化任意交易策略的性能,同时以更精准、可解释的方式向计算机传达交易指令的核心逻辑。
preview
跨邻域搜索(ANS)

跨邻域搜索(ANS)

本文揭示了跨邻域搜索(ANS)算法的潜力,作为重要的一步,旨在开发灵活且智能的优化方法,使其能够在搜索空间中考虑问题的具体特性和环境的动态变化。
preview
交易中的趋势准则

交易中的趋势准则

趋势是许多交易策略的重要组成部分。在本文中,我们将考察一些用来识别趋势及其特征的工具。理解并正确解释趋势,能够显著提升交易效率,并将风险最小化。
preview
交易中的神经网络:时空神经网络(STNN)

交易中的神经网络:时空神经网络(STNN)

在本文中,我们将谈及使用时空变换来有效预测即将到来的价格走势。为了提高 STNN 中的数值预测准确性,提出了一种连续注意力机制,令模型能够更好地参考数据的重要方面。
preview
交易中的神经网络:TEMPO 方法的实施结果

交易中的神经网络:TEMPO 方法的实施结果

我们继续领略 TEMPO 方法。在本文中,我们将评估所提议方法在真实历史数据上的真实有效性。
preview
价格行为分析工具包开发(第二十七部分):利用移动平均线进行流动性扫单

价格行为分析工具包开发(第二十七部分):利用移动平均线进行流动性扫单

理解价格走势背后的微妙动态,能让您获得至关重要的优势。流动性扫单便是这样一种现象,大型交易者(尤其是机构)会刻意运用这一策略,推动价格突破关键支撑位或阻力位。这些价位往往集中了零售交易者的止损单,从而形成流动性池,大资金玩家可以借此机会买入或卖出大额头寸,且滑点极小。
preview
使用机器学习开发趋势交易策略

使用机器学习开发趋势交易策略

本研究介绍了一种开发趋势跟踪交易策略的新方法。本节介绍标注训练数据并利用它训练分类器的过程。这个过程获得了可在 MetaTrader 5 上运行的完全可操作的交易系统。
preview
神经网络变得简单(第 77 部分):交叉协方差变换器(XCiT)

神经网络变得简单(第 77 部分):交叉协方差变换器(XCiT)

在我们的模型中,我们经常使用各种关注度算法。而且,可能我们最常使用变换器。它们的主要缺点是资源需求。在本文中,我们将研究一种新算法,它可以帮助降低计算成本,而不会降低品质。
preview
开发回放系统(第 59 部分):新的未来

开发回放系统(第 59 部分):新的未来

正确理解不同的想法可以让我们事半功倍。在本文中,我们将探讨为什么在服务与图表交互之前需要配置模板。此外,如果我们改进鼠标指标,这样我们就可以用它做更多的事情呢?
preview
神经网络变得轻松(第五十一部分):行为-指引的扮演者-评论者(BAC)

神经网络变得轻松(第五十一部分):行为-指引的扮演者-评论者(BAC)

最后两篇文章研究了软性扮演者-评论者算法,该算法将熵正则化整合到奖励函数当中。这种方式在环境探索和模型开发之间取得平衡,但它仅适用于随机模型。本文提出了一种替代方式,能适用于随机模型和确定性模型两者。
preview
神经网络变得简单(第 84 部分):可逆归一化(RevIN)

神经网络变得简单(第 84 部分):可逆归一化(RevIN)

我们已经知晓,输入数据的预处理对于模型训练的稳定性扮演重要角色。为了在线处理 “原始” 输入数据,我们往往会用到批量归一化层。但有时我们需要一个逆过程。在本文中,我们将讨论解决该问题的可能方式之一。
preview
为 MetaTrader 5 开发一款 MQTT 客户端:TDD 方式 - 第2部分

为 MetaTrader 5 开发一款 MQTT 客户端:TDD 方式 - 第2部分

本文是描述 MQTT 协议的本机MQL5客户端开发步骤系列文章的一部分。在这一部分中,我们将描述我们的代码组织、第一个头文件和类,以及我们如何编写测试。本文还包括关于测试驱动开发实践以及我们如何将其应用于该项目的简要说明。
preview
开发回放系统(第 53 部分):事情变得复杂(五)

开发回放系统(第 53 部分):事情变得复杂(五)

在本文中,我们将介绍一个很少有人了解的重要话题:定制事件。危险。这些要素的优缺点。对于希望成为 MQL5 或其他语言专业程序员的人来说,本主题至关重要。在此,我们将重点介绍 MQL5 和 MetaTrader 5。
preview
MQL5 中的范畴论 (第 17 部分):函子与幺半群

MQL5 中的范畴论 (第 17 部分):函子与幺半群

本文是我们系列文章的最后一篇,将函子作为一个主题来讨论,且把幺半群作为一个范畴来重新审视。幺半群已在我们的系列中多次讲述,于此配合多层感知器帮助确定持仓规模。
preview
MQL5自优化智能交易系统(第八部分):多策略分析(2)

MQL5自优化智能交易系统(第八部分):多策略分析(2)

欢迎继续阅读本系列文章,我们将把前两个交易策略合并为一个集成交易策略。本文将展示多种合并多个策略的可行方案,并介绍如何控制参数空间,确保即使在参数数量增加的情况下,仍能进行有效的优化。
preview
您应当知道的 MQL5 向导技术(第 35 部分):支持向量回归

您应当知道的 MQL5 向导技术(第 35 部分):支持向量回归

支持向量回归是一种理想主义的途径,寻找最能描述两组数据之间关系的函数或“超平面”。我们尝试在 MQL5 向导的自定义类内利用这一点来进行时间序列预测。