MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
MQL5 简介(第 5 部分):MQL5 数组函数入门指南

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

在第 5 部分中探索 MQL5 数组的世界,该部分专为绝对初学者设计。本文简化了复杂的编码概念,重点在于清晰性和包容性。加入我们的学习者社区,在这里解决问题,分享知识!
preview
开发多币种 EA 交易(第 4 部分):虚拟挂单和保存状态

开发多币种 EA 交易(第 4 部分):虚拟挂单和保存状态

在开始开发多币种 EA 后,我们已经取得了一些成果,并成功地进行了多次代码改进迭代。但是,我们的 EA 无法处理挂单,也无法在终端重启后恢复运行。让我们添加这些功能。
preview
神经网络变得简单(第 72 部分):噪声环境下预测轨迹

神经网络变得简单(第 72 部分):噪声环境下预测轨迹

预测未来状态的品质在“目标条件预测编码”方法中扮演着重要角色,我们曾在上一篇文章中讨论过。在本文中,我想向您介绍一种算法,它可以显著提高随机环境(例如金融市场)中的预测品质。
preview
开发回放系统(第 43 部分):Chart Trade 项目(II)

开发回放系统(第 43 部分):Chart Trade 项目(II)

大多数想要或梦想学习编程的人实际上并不知道自己在做什么。他们的活动包括试图以某种方式创造事物。然而,编程并不是为了定制合适的解决方案。这样做会产生更多的问题而不是解决方案。在这里,我们将做一些更高级、更与众不同的事情。
preview
改编版 MQL5 网格对冲 EA(第 II 部分):制作一款简单的网格 EA

改编版 MQL5 网格对冲 EA(第 II 部分):制作一款简单的网格 EA

在本文中,我们探讨了经典的网格策略,详解 MQL5 的智能交易系统的自动化,并初步分析回测结果。我们强调了该策略对高持有能力的需求,并概括了在未来分期分批优化距离、止盈和手数等关键参数的计划。该系列旨在提高交易策略效率,以及针对不同市场条件的适配性。
preview
交易者基于角度的操作

交易者基于角度的操作

本文将介绍基于角度的操作。我们将研究构建角度和在交易中使用角度的方法。
preview
您应当知道的 MQL5 向导技术(第 10 部分):非常规 RBM

您应当知道的 MQL5 向导技术(第 10 部分):非常规 RBM

限制性玻尔兹曼(Boltzmann)机处于基本等级,是一个两层神经网络,擅长通过降维进行无监督分类。我们取其基本原理,并检验如果我们重新设计和训练它,我们是否可以得到一个实用的信号滤波器。
preview
MQL5 简介(第 4 部分):掌握结构、类和时间函数

MQL5 简介(第 4 部分):掌握结构、类和时间函数

在我们的最新文章中揭开 MQL5 编程的秘密!深入了解结构、类和时间函数的基本要素,为您的编码之旅赋能。无论您是初学者还是经验丰富的开发人员,我们的指南都简化了复杂的概念,为掌握 MQL5 提供了宝贵的见解。提升你的编程技能,在算法交易领域保持领先!
preview
开发多币种 EA 交易(第 3 部分):架构修改

开发多币种 EA 交易(第 3 部分):架构修改

我们在开发多币种 EA 方面已经取得了一些进展,该 EA 有几个并行工作的策略。考虑到所积累的经验,让我们回顾一下我们解决方案的架构,并尝试在我们走得太远之前对其进行改进吧。
preview
数据科学和机器学习(第 18 部分):掌握市场复杂性博弈,截断型 SVD 对比 NMF

数据科学和机器学习(第 18 部分):掌握市场复杂性博弈,截断型 SVD 对比 NMF

截断型奇异值分解(SVD)和非负矩阵分解(NMF)都是降维技术。它们在制定数据驱动的交易策略方面都发挥着重要作用。探索降维的艺术,揭示洞察和优化定量分析,以明智的方式航行在错综复杂的金融市场。
preview
种群优化算法:微人工免疫系统(Micro-AIS)

种群优化算法:微人工免疫系统(Micro-AIS)

本文研究一种基于人体免疫系统原理的优化方法 — 微人工免疫系统(Micro-AIS) - AIS 的修订版。Micro-AIS 使用更简单的免疫系统模型,和更简单的免疫信息处理操作。本文还讨论了 Micro-AIS 与传统 AIS 相比的优缺点。
preview
同时交易多种工具时平衡风险

同时交易多种工具时平衡风险

本文将帮助初学者从头开始编写一个脚本的实现,用于在同时交易多种工具时平衡风险。此外,它还可以为有经验的用户提供新的思路,使他们可以根据本文提出的方案来实现自己的解决方案。
preview
种群优化算法:细菌觅食优化 — 遗传算法(BFO-GA)

种群优化算法:细菌觅食优化 — 遗传算法(BFO-GA)

本文释义了一种解决优化问题的新方式,即把细菌觅食优化(BFO)算法和遗传算法(GA)中所用的技术结合到混合型 BFO-GA 算法当中。它用细菌群落来全局搜索最优解,并用遗传运算器来优调局部最优值。与原始的 BFO 不同,细菌现在可以突变,并继承基因。
preview
使用优化算法即时配置 EA 参数

使用优化算法即时配置 EA 参数

文章讨论了使用优化算法即时查找最佳 EA 参数,以及交易操作和 EA 逻辑虚拟化的实际问题。这篇文章可作为在 EA 中实现优化算法的指导。
preview
构建和测试肯特纳通道交易系统

构建和测试肯特纳通道交易系统

在本文中,我们将尝试使用金融市场中一个非常重要的概念 - 波动性 - 来构建交易系统。我们将在了解肯特纳通道(Keltner Channel)指标后提供一个基于该指标的交易系统,并介绍如何对其进行编码,以及如何根据简单的交易策略创建一个交易系统,然后在不同的资产上进行测试。
preview
神经网络变得简单(第 71 部分):目标条件预测编码(GCPC)

神经网络变得简单(第 71 部分):目标条件预测编码(GCPC)

在之前的文章中,我们讨论了决策转换器方法,以及从其衍生的若干种算法。我们测验了不同的目标设定方法。在测验期间,我们依据各种设定目标的方式进行操作。然而,该模型早期研究时验算过的轨迹,始终处于我们的关注范围之外。在这篇文章中。我想向您介绍一种填补此空白的方法。
preview
在 MQL5 中实现广义赫斯特指数和方差比检验

在 MQL5 中实现广义赫斯特指数和方差比检验

在本文中,我们将研究如何利用广义赫斯特指数(Generalized Hurst Exponent)和方差比检验(Variance Ratio Test)来分析 MQL5 中价格序列的行为。
preview
开发多币种 EA 交易(第 2 部分):过渡到交易策略的虚拟仓位

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

让我们继续开发多币种 EA,让多个策略并行工作。让我们尝试将与市场开仓相关的所有工作从策略级转移到管理策略的 EA 级。这些策略本身只进行虚拟交易,并不建立市场仓位。
preview
GIT:它是什么?

GIT:它是什么?

在本文中,我将为开发人员介绍一个非常重要的工具。如果您不熟悉 GIT,请阅读本文,以了解它是什么以及如何在 MQL5 中使用它。
preview
神经网络变得简单(第 70 部分):封闭式政策改进运算器(CFPI)

神经网络变得简单(第 70 部分):封闭式政策改进运算器(CFPI)

在本文中,我们将领略一种算法,其使用封闭式政策改进运算器来优化离线模式下的智能体动作。
preview
交易中的追踪止损

交易中的追踪止损

在本文中,我们将研究追踪止损在交易中的使用。我们将评估它的实用性和有效性以及如何使用它。追踪止损的效率很大程度上取决于价格波动和止损水平的选择。可以使用各种方法来设置止损。
preview
神经网络变得简单(第 69 部分):基于密度的行为政策支持约束(SPOT)

神经网络变得简单(第 69 部分):基于密度的行为政策支持约束(SPOT)

在离线学习中,我们使用固定的数据集,这限制了环境多样性的覆盖范围。在学习过程中,我们的 Agent 能生成超出该数据集之外的动作。如果没有来自环境的反馈,我们如何判定针对该动作的估测是正确的?在训练数据集中维护 Agent 的政策成为确保训练可靠性的一个重要方面。这就是我们将在本文中讨论的内容。
preview
时间序列分类问题中的因果推理

时间序列分类问题中的因果推理

在本文中,我们将研究使用机器学习的因果推理理论,以及 Python 中的自定义方法实现。因果推理和因果思维植根于哲学和心理学,在我们理解现实中起着重要作用。
preview
MQL5 简介(第 3 部分):掌握 MQL5 的核心元素

MQL5 简介(第 3 部分):掌握 MQL5 的核心元素

在这篇便于初学者阅读的文章中,我们将为您揭开数组、自定义函数、预处理器和事件处理的神秘面纱,并对所有内容进行清晰讲解,让您可以轻松理解每一行代码,从而探索 MQL5 编程的基础知识。加入我们,用一种独特的方法释放 MQL5 的力量,确保每一步都能理解。本文为掌握 MQL5 奠定了基础,强调了对每行代码的解释,并提供了独特而丰富的学习体验。
preview
神经网络变得简单(第 68 部分):离线优先引导政策优化

神经网络变得简单(第 68 部分):离线优先引导政策优化

自从第一篇专门讨论强化学习的文章以来,我们以某种方式触及了 2 个问题:探索环境和检定奖励函数。最近的文章曾专门讨论了离线学习中的探索问题。在本文中,我想向您介绍一种算法,其作者完全剔除了奖励函数。
preview
多交易品种多周期指标中的 DRAW_ARROW 绘图类型

多交易品种多周期指标中的 DRAW_ARROW 绘图类型

本文将介绍如何绘制多交易品种多周期的箭头指标。我们还将改进类方法,以便正确显示箭头指标的数据,这些数据是根据与当前图表交易品种/周期不一致的交易品种/周期计算的。
preview
开发多币种 EA 交易(第 1 部分):多种交易策略的协作

开发多币种 EA 交易(第 1 部分):多种交易策略的协作

交易策略是多种多样的,因此,或许可以采用几种策略并行运作,以分散风险,提高交易结果的稳定性。但是,如果每个策略都作为单独的 EA 交易来实现,那么在一个交易账户上管理它们的工作就会变得更加困难。为了解决这个问题,在一个 EA 中实现不同交易策略的操作是合理的。
preview
开发回放系统(第 41 部分):启动第二阶段(二)

开发回放系统(第 41 部分):启动第二阶段(二)

如果到目前为止,你觉得一切都很好,那就说明你在开始开发应用程序时,并没有真正考虑到长远的问题。随着时间的推移,你将不再需要为新的应用程序编程,只需让它们协同工作即可。让我们看看如何完成鼠标指标的组装。
preview
开发回放系统(第 38 部分):铺路(II)

开发回放系统(第 38 部分):铺路(II)

许多认为自己是 MQL5 程序员的人,其实并不具备我在本文中将要概述的基础知识。许多人认为 MQL5 是一个有限的工具,但实际原因是他们尚未具备所需的知识。所以,如果您有啥不知道,不要为此感到羞愧。最好是因为不去请教而感到羞愧。简单地强制 MetaTrader 5 禁用指标重叠,并不能确保指标和智能系统之间的双向通信。我们离这个目标还很远,但指标在图表上没有重叠的事实给了我们一些信心。
preview
构建和测试 Aroon 交易系统

构建和测试 Aroon 交易系统

在本文中,我们将学习在了解了 Aroon 指标(阿隆指标)的基础知识和基于该指标构建交易系统的必要步骤之后,如何构建 Aroon 交易系统。建立这个交易系统后,我们将对其进行测试,看看它是否能盈利,还是需要进一步优化。
preview
种群优化算法:改变概率分布的形状和位移,并基于智能头足类生物(SC)进行测试

种群优化算法:改变概率分布的形状和位移,并基于智能头足类生物(SC)进行测试

本文研究了改变概率分布形状对优化算法性能的影响。我们将进行的实验,会用到智能头足类生物(SC)测试算法,从而评估优化问题背景下各种概率分布的效能。
preview
开发具有 RestAPI 集成的 MQL5 强化学习代理(第 4 部分):在 MQL5 中组织类中的函数

开发具有 RestAPI 集成的 MQL5 强化学习代理(第 4 部分):在 MQL5 中组织类中的函数

本文讨论 MQL5 中从面向过程编码向面向对象编程 (OOP) 的过渡,重点是与 REST API 的集成。今天,我们将讨论如何将 HTTP 请求函数(GET 和 POST)组织到类中。我们将仔细研究代码重构,并展示如何用类方法替换孤立的函数。本文包含实用的示例和测试。
preview
使用 Python 和 MetaTrader5 python 软件包及 ONNX 模型文件进行深度学习预测和排序

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

本项目涉及在金融市场中使用 Python 进行基于深度学习的预测。我们将探索使用平均绝对误差(MAE)、均方误差(MSE)和R平方(R2)等关键指标测试模型性能的复杂性,并学习如何将所有内容打包到可执行文件中。我们还将制作一个 ONNX 模型文件以及它的 EA。
preview
频域中的滤波和特征提取

频域中的滤波和特征提取

在本文中,我们探索了在时间序列由数字滤波器在频域上进行表达的应用,如此即可提取也许对预测模型有用的独特特征。
preview
用于时间序列挖掘的数据标签(第 6 部分):使用 ONNX 在 EA 中应用和测试

用于时间序列挖掘的数据标签(第 6 部分):使用 ONNX 在 EA 中应用和测试

本系列文章介绍了几种时间序列标注方法,可以创建符合大多数人工智能模型的数据,根据需要进行有针对性的数据标注可以使训练好的人工智能模型更符合预期的设计,提高我们模型的准确性,甚至帮助模型实现质的飞跃!
preview
MetaTrader 5 和 R 进行算法交易新手指南

MetaTrader 5 和 R 进行算法交易新手指南

当我们揭开 R 和 MetaTrader 5 无缝结合的艺术面纱时,您将开始一场金融分析与算法交易的精彩探索。本文是您将 R 语言中的分析技巧与 MetaTrader 5 强大的交易功能连接起来的指南。
preview
为 Metatrader 5 开发 MQTT 客户端:TDD 方法 - 第 5 部分

为 Metatrader 5 开发 MQTT 客户端:TDD 方法 - 第 5 部分

本文是系列文章的第五部分,介绍了我们为 MQTT 5.0 协议开发本地 MQL5 客户端的步骤。在这一部分中,我们将介绍 PUBLISH 数据包的结构、如何设置其发布标志(Publish Flag)、如何对主题名称(Topic Name)字符串进行编码,以及在需要时如何设置数据包标识符(Packet Identifier)。
preview
种群优化算法:进化策略,(μ,λ)-ES 和 (μ+λ)-ES

种群优化算法:进化策略,(μ,λ)-ES 和 (μ+λ)-ES

本文研究一套称为进化策略(ES)的优化算法。它们是最早使用进化原理来寻找最优解的种群算法之一。我们将针对传统的 ES 变体实现变更,并修改算法的测试函数和测试台方法。
preview
数据科学和机器学习(第 17 部分):摇钱树?外汇交易中随机森林的艺术与科学

数据科学和机器学习(第 17 部分):摇钱树?外汇交易中随机森林的艺术与科学

探索算法炼金术的秘密,我们将引导您融会贯通如何在解码金融领域时将艺术性和精确性相结合。揭示随机森林如何将数据转化为预测能力,为驾驭股票市场的复杂场景提供独特的视角。加入我们的旅程,进入金融魔法的心脏地带,此处我们会揭开随机森林在塑造市场命运、及解锁赚钱机会之门方面之角色的神秘面纱
preview
用于时间序列挖掘的数据标签(第 5 部分):使用 Socket 在 EA 中进行应用和测试

用于时间序列挖掘的数据标签(第 5 部分):使用 Socket 在 EA 中进行应用和测试

本系列文章介绍了几种时间序列标注方法,可以创建符合大多数人工智能模型的数据,根据需求有针对性地进行数据标注,可以使训练出来的人工智能模型更符合预期设计,提高我们模型的准确性,甚至帮助模型实现质的飞跃!