MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
DoEasy. C控件(第 7 部分):文本标签控件

DoEasy. C控件(第 7 部分):文本标签控件

在本文中,我将创建 WinForms 文本标签控件的对象类。 这样的对象能够将其容器放置在任何位置,而其自身的功能将重现 MS Visual Studio 文本标签的功能。 我们能够为欲显示的文本设置字体参数。
preview
频域中的滤波和特征提取

频域中的滤波和特征提取

在本文中,我们探索了在时间序列由数字滤波器在频域上进行表达的应用,如此即可提取也许对预测模型有用的独特特征。
preview
神经网络变得轻松(第四十七部分):连续动作空间

神经网络变得轻松(第四十七部分):连续动作空间

在本文中,我们扩展了代理者的任务范围。训练过程将包括一些资金和风险管理等方面,这是任何交易策略不可或缺的部分。
preview
用置信区间估计未来效能

用置信区间估计未来效能

在这篇文章中,我们深入研究自举法技术的应用,作为评估自动化策略未来效能的一种手段。
DoEasy 函数库中的图形(第九十三部分):准备创建复合图形对象的功能
DoEasy 函数库中的图形(第九十三部分):准备创建复合图形对象的功能

DoEasy 函数库中的图形(第九十三部分):准备创建复合图形对象的功能

在本文中,我将着手开发用于创建复合图形对象的功能。 该函数库将支持创建复合图形对象,允许这些对象含有任意层次的连接。 我将为这些对象的后续实现准备所有必要的类。
preview
在 MQL5 中自动化交易策略(第 13 部分):构建头肩形态交易算法

在 MQL5 中自动化交易策略(第 13 部分):构建头肩形态交易算法

在本文中,我们将自动化 MQL5 中的头肩形态。我们分析其架构,实现一个用于检测和交易该形态的 EA,并对结果进行回测。这个过程揭示了一个具有改进空间的实用交易算法。
preview
DoEasy. 控件 (第 13 部分): 优化 WinForms 对象与鼠标的交互,启动开发 TabControl WinForms 对象

DoEasy. 控件 (第 13 部分): 优化 WinForms 对象与鼠标的交互,启动开发 TabControl WinForms 对象

在本文中,我将修复和优化当鼠标光标移离 WinForms 对象后 WinForms 对象的外观处理,并启动开发 TabControl WinForms 对象。
preview
MQL5中的替代风险回报标准

MQL5中的替代风险回报标准

在这篇文章中,我们介绍了几种被称为夏普比率(Sharpe ratio)替代品的风险回报标准的实现,并检查了假设的权益曲线以分析其特征。
preview
数据科学和机器学习(第 16 部分):全新面貌的决策树

数据科学和机器学习(第 16 部分):全新面貌的决策树

在我们的数据科学和机器学习系列的最新一期中,深入到错综复杂的决策树世界。本文专为寻求策略洞察的交易者量身定制,全面回顾了决策树在分析市场趋势中所发挥的强大作用。探索这些算法树的根和分支,解锁它们的潜力,从而强化您的交易决策。加入我们,以全新的视角审视决策树,并探索它们如何在复杂的金融市场航行中成为您的盟友。
preview
日内交易:拉里·康纳斯(Larry Connors)RSI2均值回归策略

日内交易:拉里·康纳斯(Larry Connors)RSI2均值回归策略

拉里·康纳斯(Larry Connors)是知名交易员与量化交易领域权威作家,其最著名的成果之一是2周期相对强弱指数(RSI2)策略。该指标通过捕捉短期超买超卖信号,辅助判断市场反转时机。在本文中,我们将首先阐述研究契机,随后在MQL5中复现康纳斯的三大经典策略,并应用于标普500指数差价合约(CFD)的日内交易场景。
DoEasy 库中的其他类(第七十部分):扩展功能并自动更新图表对象集合
DoEasy 库中的其他类(第七十部分):扩展功能并自动更新图表对象集合

DoEasy 库中的其他类(第七十部分):扩展功能并自动更新图表对象集合

在本文中,我将扩展图表对象的功能,并编排图表导航、创建屏幕截图、以及为图表保存和应用模板。 此外,我还将实现图表对象集合、其窗口和其内指标的自动更新。
preview
群体优化算法:差分进化(DE)

群体优化算法:差分进化(DE)

在本文中,我们将讨论在前面讨论过的所有算法中最有争议的算法 - 差分进化算法(Differential Evolution,DE)。
preview
神经网络变得简单(第 67 部分):按照过去的经验解决新任务

神经网络变得简单(第 67 部分):按照过去的经验解决新任务

在本文中,我们将继续讨论收集数据至训练集之中的方法。显然,学习过程需要与环境不断互动。不过,状况可能会有所不同。
preview
交易中的神经网络:一种复杂的轨迹预测方法(Traj-LLM)

交易中的神经网络:一种复杂的轨迹预测方法(Traj-LLM)

在本文中,我想向您介绍一种为解决自动驾驶领域问题而开发的有趣的轨迹预测方法。该方法的作者结合了各种架构解决方案的最佳元素。
preview
开发多币种 EA 交易系统(第 14 部分):风险管理器的适应性交易量变化

开发多币种 EA 交易系统(第 14 部分):风险管理器的适应性交易量变化

之前开发的风险管理器仅包含基本功能,让我们试着探讨其可能的开发方式,使我们能够在不干扰交易策略逻辑的情况下改善交易结果。
preview
MQL5 中的范畴论 (第 8 部分):幺半群(Monoids)

MQL5 中的范畴论 (第 8 部分):幺半群(Monoids)

本文是以 MQL5 实现范畴论系列的延续。 本期,我们引入幺半群作为域(集合),通过包含规则和幺元,将范畴论自其它数据分类方法分离开来。
preview
MQL5自动化交易策略(第十一部分):开发多层级网格交易系统

MQL5自动化交易策略(第十一部分):开发多层级网格交易系统

在本文中,我们将使用MQL5开发一款多层级网格交易系统EA,重点探讨网格交易策略背后的架构与算法设计。我们将研究多层网格逻辑的实现方式以及应对不同市场状况的风险管理技术。最后,我们将提供详尽的解释和实用技巧,指导您完成自动化交易系统的构建、测试与优化。
preview
神经网络变得轻松(第二十八部分):政策梯度算法

神经网络变得轻松(第二十八部分):政策梯度算法

我们继续研究强化学习方法。 在上一篇文章中,我们领略了深度 Q-学习方法。 按这种方法,已训练模型依据在特定情况下采取的行动来预测即将到来的奖励。 然后,根据政策和预期奖励执行动作。 但并不总是能够近似 Q-函数。 有时它的近似不会产生预期的结果。 在这种情况下,近似方法不应用于功用函数,而是应用于动作的直接政策(策略)。 其中一种方法是政策梯度。
preview
神经网络变得简单(第 68 部分):离线优先引导政策优化

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

自从第一篇专门讨论强化学习的文章以来,我们以某种方式触及了 2 个问题:探索环境和检定奖励函数。最近的文章曾专门讨论了离线学习中的探索问题。在本文中,我想向您介绍一种算法,其作者完全剔除了奖励函数。
preview
利用 Python 实现价格走势离散方法

利用 Python 实现价格走势离散方法

我们将考察使用 Python + MQL5 来离散价格的方法。在本文中,我将分享我开发 Python 函数库的实践经验,其以多种方式实现柱线形成 — 从经典的交易量和范围柱线,到更奇特的方法,如 Renko 和 Kagi。我们将研究三线突破蜡烛和范围柱线,分析它们的统计数据,并尝试定义如何将价格以离散化表示。
preview
通过配对交易中的均值回归进行统计套利:用数学战胜市场

通过配对交易中的均值回归进行统计套利:用数学战胜市场

本文描述了投资组合层面的统计套利基础知识。其目标是帮助没有深厚数学知识的读者理解统计套利的原则,并提出一个概念性的起点框架。文章包含一个可运行的智能交易系统(EA)、一些关于其一年回测的笔记,以及用于复现实验的相应回测配置设置(.ini 文件)。
preview
DoEasy. 控件 (第 3 部分): 创建绑定控件

DoEasy. 控件 (第 3 部分): 创建绑定控件

在本文中,我将创建绑定到基准元素的从属控件。 开发任务将使用基准控件功能执行。 此外,我还会稍微修改一下图形元素阴影对象,因为把它应用于任何有阴影的对象时会遇到一些逻辑错误。
preview
StringFormat(). 回顾和现成的例子

StringFormat(). 回顾和现成的例子

本文继续介绍PrintFormat()函数。我们将简要介绍使用StringFormat()格式化字符串及其在程序中的进一步使用。我们还将编写模板,在终端日志中显示交易品种数据。这篇文章对初学者和有经验的开发人员都很有用。
preview
机器学习中的量化(第 2 部分):数据预处理、表格选择、训练 CatBoost 模型

机器学习中的量化(第 2 部分):数据预处理、表格选择、训练 CatBoost 模型

本文探讨了量化在树模型构建中的实际应用。探讨了选择量化表和数据预处理的方法。没有使用复杂的数学方程。
preview
在 MQL5 中创建交互式图形用户界面(第 2 部分):添加控制和响应

在 MQL5 中创建交互式图形用户界面(第 2 部分):添加控制和响应

通过动态功能增强 MQL5 图形用户界面(GUI)面板,可以大大改善用户的交易体验。通过整合互动元素、悬停效果和实时数据更新,该面板成为现代交易者的强大工具。
preview
在MQL5中实现基于抛物线转向指标(Parabolic SAR)和简单移动平均线(SMA)的快速交易策略算法

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

在本文中,我们将在MQL5中开发一个快速交易EA,利用抛物线SAR和简单移动平均线(SMA)指标来创建一个响应迅速的交易策略。我们详细介绍了该策略的实施过程,包括指标的使用、信号的生成以及测试和优化过程。
DoEasy 函数库中的图形(第九十五部分):复合图形对象控件
DoEasy 函数库中的图形(第九十五部分):复合图形对象控件

DoEasy 函数库中的图形(第九十五部分):复合图形对象控件

在本文中,我将研究管理复合图形对象的工具包 — 管理扩展标准图形对象的控件。 今天,我从复合图形对象重新定位的内容稍微离题 ,并实现图表上复合图形对象的变更事件处理。 此外,我将重点讲解管理复合图形对象的控件。
preview
构建K线图趋势约束模型(第一部分):针对EA和技术指标

构建K线图趋势约束模型(第一部分):针对EA和技术指标

本文面向初学者和专业的MQL5开发者。它提供了一段代码,用于定义并限制信号生成指标仅在较长的时间框架的趋势中运行。通过这种方式,交易者可以通过融入更广泛的市场视角来增强他们的策略,从而可能产生更稳健和可靠的交易信号。
preview
神经网络变得简单(第 92 部分):频域和时域中的自适应预测

神经网络变得简单(第 92 部分):频域和时域中的自适应预测

FreDF 方法的作者通过实验证实了结合频域和时域进行预测的优势。不过,权重超参数的使用对于非稳态时间序列并非最优。在本文中,我们将领略结合频域和时域预测的自适应方法。
preview
量化风险管理方法:应用 VaR 模型优化多货币投资组合(使用 Python 和 MetaTrader 5)

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

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

MQL5自动化交易策略(第九部分):构建亚洲盘突破策略的智能交易系统(EA)

在本文中,我们将在MQL5中开发一款适用于亚洲盘突破策略的智能交易系统(EA),用来计算亚洲时段的高低价以及使用移动平均线(MA)进行趋势过滤。同时实现动态对象样式、用户自定义时间输入和完善的风险管理。最后演示回测与优化技术,进一步打磨策略表现。
preview
MQL5 简介(第 6 部分):MQL5 中的数组函数新手指南 (二)

MQL5 简介(第 6 部分):MQL5 中的数组函数新手指南 (二)

开始我们 MQL5 旅程的下一阶段。在这篇深入浅出、适合初学者的文章中,我们将探讨其余的数组函数,揭开复杂概念的神秘面纱,让您能够制定高效的交易策略。我们将讨论 ArrayPrint、ArrayInsert、ArraySize、ArrayRange、ArrarRemove、ArraySwap、ArrayReverse 和 ArraySort。利用这些基本的数组函数,提升您的算法交易专业知识。加入我们的精通 MQL5 之路吧!
preview
开发多币种 EA 交易(第 17 部分):为真实交易做进一步准备

开发多币种 EA 交易(第 17 部分):为真实交易做进一步准备

目前,我们的 EA 使用数据库来获取交易策略单个实例的初始化字符串。然而,这个数据库相当大,包含许多实际 EA 操作不需要的信息。让我们尝试在不强制连接到数据库的情况下确保 EA 的功能。
preview
DoEasy 函数库中的时间序列(第五十八部分):指标缓冲区数据的时间序列

DoEasy 函数库中的时间序列(第五十八部分):指标缓冲区数据的时间序列

关于操控时间序列的主题总结,诸如组织存储、针对存储在指标缓冲区中的数据进行搜索和分类,如此即可在程序里利用函数库创建指标值,并进一步据其执行分析。 函数库的所有集合类的一般概念,能够轻松地在相应的集合中找到必要的数据。 在今天创建的类中,也可分别完成同样功能。
preview
用Python重塑经典策略:移动平均线交叉

用Python重塑经典策略:移动平均线交叉

在本文中,我们重新审视了经典的移动平均线交叉策略,以评估其当前的有效性。鉴于该策略自诞生以来已经过去了很长时间,我们探索了人工智能可能为其带来的潜在增强效果。通过融入人工智能技术,我们旨在利用高级的预测能力来潜在地优化交易的入场和出场点,适应不断变化的市场条件,并与传统方法相比提高整体表现。
preview
开发回放系统(第 37 部分):铺平道路 (一)

开发回放系统(第 37 部分):铺平道路 (一)

在这篇文章中,我们终于要开始做我们早就想做的事情了。之前,由于缺乏 "坚实的基础",我没有信心公开介绍这部分内容。现在我有了这样做的基础。我建议您尽可能集中精力理解本文的内容。我指的不仅仅是阅读,我想强调的是,如果你不理解这篇文章,你可能就是完全放弃了理解以后文章内容的希望。
preview
时间序列挖掘的数据标签(第3部分):使用标签数据的示例

时间序列挖掘的数据标签(第3部分):使用标签数据的示例

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

交易中的混沌理论(第二部分):深入探索

我们继续深入探讨金融市场的混沌理论,这一次我将考虑其对货币和其他资产分析的适用性。
preview
重构经典策略(第九部分):多时间框架分析(第二部分)

重构经典策略(第九部分):多时间框架分析(第二部分)

在今天的讨论中,我们探讨了多时间框架分析的策略,以确定我们的人工智能(AI)模型在哪个时间框架上表现最优。分析结果表明,在欧元兑美元(EURUSD)货币对上,月度和小时时间框架生成的模型具有相对较低的误差率。我们利用这一优势,开发了一个交易算法,该算法在月度时间框架上进行人工智能预测,并在小时时间框架上执行交易。
preview
神经网络变得简单(第 71 部分):目标条件预测编码(GCPC)

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

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