MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
DoEasy 函数库中的图形(第八十三部分):抽象标准图形对象类
DoEasy 函数库中的图形(第八十三部分):抽象标准图形对象类

DoEasy 函数库中的图形(第八十三部分):抽象标准图形对象类

在本文中,我将创建抽象图形对象类。 该对象用作创建标准图形对象类的基础。 图形对象拥有多种属性。 因此,在实际创建抽象图形对象类之前,我还需要做很多的准备工作。 这项工作包括在函数库的枚举中设置属性。
preview
种群优化算法:细菌觅食优化(BFO)

种群优化算法:细菌觅食优化(BFO)

大肠杆菌觅食策略激发出科学家创建 BFO 优化算法的灵感。 该算法包含原创思路和有前景的优化方法,值得深入研究。
preview
神经网络变得轻松(第三十九部分):Go-Explore,一种不同的探索方式

神经网络变得轻松(第三十九部分):Go-Explore,一种不同的探索方式

我们继续在强化学习模型中研究环境。 在本文中,我们将见识到另一种算法 — Go-Explore,它允许您在模型训练阶段有效地探索环境。
preview
MQL5 酷宝书 — 服务

MQL5 酷宝书 — 服务

本文讲述了服务的多功能性 — 不需要绑定图的 MQL5 程序。 我还会重点介绍服务与其它 MQL5 程序的区别,并强调开发人员使用服务的细微差别。 作为示例,为读者提供了各种任务,涵盖了可以作为服务实现的各种功能。
preview
使用凯利准则与蒙特卡洛模拟的投资组合风险模型

使用凯利准则与蒙特卡洛模拟的投资组合风险模型

几十年来,交易员们一直使用凯利准则公式来确定投资或赌注的最优资本配置比例,其目标是在最大化长期增长的同时,最小化破产风险。然而,对于个人交易者而言,盲目地依据单次回测的结果来遵循凯利准则往往是危险的,因为在实盘交易中,交易优势会随着时间的推移而减弱,并且过往业绩并不能保证未来的结果。在本文中,我将提出一种在 MetaTrader 5 平台中,为一个或多个智能交易系统进行风险分配的现实方法,该方法将融合来自 Python 的蒙特卡洛模拟结果。
preview
数据科学和机器学习(第 18 部分):掌握市场复杂性博弈,截断型 SVD 对比 NMF

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

截断型奇异值分解(SVD)和非负矩阵分解(NMF)都是降维技术。它们在制定数据驱动的交易策略方面都发挥着重要作用。探索降维的艺术,揭示洞察和优化定量分析,以明智的方式航行在错综复杂的金融市场。
DoEasy 函数库中的时间序列(第四十四部分):指标缓冲区对象类集合
DoEasy 函数库中的时间序列(第四十四部分):指标缓冲区对象类集合

DoEasy 函数库中的时间序列(第四十四部分):指标缓冲区对象类集合

本文介绍如何创建指标缓冲区对象类的集合。 我计划测试为指标创建和操控任意数量缓冲区的能力(在 MQL 指标中可以创建的最大缓冲区数量为 512)。
preview
从头开始开发智能交易系统(第 17 部分):访问 web 上的数据(III)

从头开始开发智能交易系统(第 17 部分):访问 web 上的数据(III)

在本文中,我们将继续研究如何从 web 获取数据,并在智能系统中使用它。 这次我们将着手开发一个替代系统。
preview
DoEasy. 控件 (第 10 部分): WinForms 对象 — 动画界面

DoEasy. 控件 (第 10 部分): WinForms 对象 — 动画界面

现在是时候实现动画图形界面功能,方便用户与对象的交互了。 为了让更复杂的对象能正确工作,还需要新功能。
preview
MQL5 中的矩阵和向量:激活函数

MQL5 中的矩阵和向量:激活函数

在此,我们将只讲述机器学习的一个方面 — 激活函数。 在人工神经网络中,神经元激活函数会根据一个或一组输入信号的数值,计算输出信号值。 我们将深入研究该过程的内部运作。
preview
开发回放系统 — 市场模拟(第 02 部分):首次实验(II)

开发回放系统 — 市场模拟(第 02 部分):首次实验(II)

这一次,我们尝试换一种不同的方式来实现 1 分钟的目标。 然而,这项任务并非如人们想象的那么简单。
preview
在您的 MQL 项目中使用 JSON 数据 API

在您的 MQL 项目中使用 JSON 数据 API

想象一下,您可以使用 MetaTrader 中没有的数据,您只能通过价格分析和技术分析从指标中获得数据。现在想象一下,您可以访问数据,这将使你的交易能力更高。如果您通过 API(应用程序编程接口)数据混合其他软件、宏观分析方法和超高级工具的输出,您就可以倍增 MetaTrader 软件的力量。在本文中,我们将教您如何使用 API,并介绍有用和有价值的 API 数据服务。
preview
数据科学与机器学习(第 07 部分):多项式回归

数据科学与机器学习(第 07 部分):多项式回归

与线性回归不同,多项式回归是一种很灵活的模型,旨在更好地执行线性回归模型无法处理的任务,我们来找出如何在 MQL5 中制作多项式模型,并据其做出积极东西。
preview
测试不同的移动平均类型以了解它们的洞察力

测试不同的移动平均类型以了解它们的洞察力

我们都知道移动平均指标对很多交易者的重要性。还有其他移动平均线类型在交易中也很有用,我们将在本文中确定这些类型,并将它们中的每一种与最流行的简单移动平均线进行简单比较,看看哪一种可以显示出最好的结果。
preview
您应当知道的 MQL5 向导技术(第 38 部分):布林带

您应当知道的 MQL5 向导技术(第 38 部分):布林带

布林带是一种非常常见的轨道线指标,许多交易者用它来手工下单和平仓。我们,通过考察尽可能多的由它生成的不同信号,来验证该指标,并看看如何在向导汇编的智能系统中运用它们。
preview
数据科学与机器学习(第 09 部分):K-最近邻算法(KNN)

数据科学与机器学习(第 09 部分):K-最近邻算法(KNN)

这是一种惰性算法,它不是基于训练数据集学习,而是以存储数据集替代,并在给定新样本时立即采取行动。 尽管它很简单,但它能用于各种实际应用。
preview
混沌博弈优化(CGO)

混沌博弈优化(CGO)

本文提出了一种新型元启发式算法——混沌博弈优化算法(CGO),该算法在处理高维问题时展现出独特的保持高效率的能力。与大多数优化算法不同,CGO在问题规模扩大时不仅不会降低性能,有时甚至还会提升性能,这便是其关键特性。
preview
在 MQL5 中利用 ARIMA 模型进行预测

在 MQL5 中利用 ARIMA 模型进行预测

在本文中,我们继续开发构建 ARIMA 模型的 CArima 类,添加支持预测的直观方法。
preview
机器学习和交易中的元模型:交易订单的原始时序

机器学习和交易中的元模型:交易订单的原始时序

机器学习中的元模型:很少或无人为干预的情况下自动创建交易系统 — 模型自行决定何时以及如何进行交易。
MVC 设计范式及其应用(第 2 部分):三个组件之间相互作用示意图
MVC 设计范式及其应用(第 2 部分):三个组件之间相互作用示意图

MVC 设计范式及其应用(第 2 部分):三个组件之间相互作用示意图

本文是前一篇文章中所讨论主题的延续和完善:MQL 程序中的 MVC 范式。 在本文中,我们将研究范式的三个组件之间可能的相互作用的示意图。
preview
神经网络变得轻松(第二十九部分):优势扮演者-评价者算法

神经网络变得轻松(第二十九部分):优势扮演者-评价者算法

在本系列的前几篇文章中,我们见识到两种增强的学习算法。 它们中的每一个都有自己的优点和缺点。 正如在这种情况下经常发生的那样,接下来的思路是将这两种方法合并到一个算法,使用两者间的最佳者。 这将弥补它们每种的短处。 本文将讨论其中一种方法。
使用HTML和CSS替换的记录(Log)文件
使用HTML和CSS替换的记录(Log)文件

使用HTML和CSS替换的记录(Log)文件

本文中我们将讲述编写一个简单而功能强大的制作html文件的实例, 在过程中我们会学习调整它们的显示, 以及如何在您的EA交易和脚本程序中轻松实现和使用它们.
更好的程序员(第 06 部分):9 个导致有效编码的习惯
更好的程序员(第 06 部分):9 个导致有效编码的习惯

更好的程序员(第 06 部分):9 个导致有效编码的习惯

并非有关编写代码的所有事情总是导致有效编码。 在我的从业经历中,我发现了一些会导致有效编码的习惯。 我们将在本文中详细讨论其中的一些。 对于每一位想要以更少的麻烦来提高自己编写复杂算法的能力的程序员来说,这是一篇必须阅读的文章。
preview
神经网络变得轻松(第十八部分):关联规则

神经网络变得轻松(第十八部分):关联规则

作为本系列文章的延续,我们来研究无监督学习方法中的另一类问题:挖掘关联规则。 这种问题类型首先用于零售业,即超市等,来分析市场篮子。 在本文中,我们将讨论这些算法在交易中的适用性。
通过 RSS 馈送发送交易信号
通过 RSS 馈送发送交易信号

通过 RSS 馈送发送交易信号

将交易信号作为 RSS 馈送发出是当下与你社区成员沟通的流行方式,在此我要向你介绍我对这种方式的个人理解。
preview
数据科学和机器学习(第 26 部分):时间序列预测的终极之战 — LSTM 对比 GRU 神经网络

数据科学和机器学习(第 26 部分):时间序列预测的终极之战 — LSTM 对比 GRU 神经网络

在上一篇文章中,我们讨论了一个简单的 RNN,尽管它对理解数据中的长期依赖关系无能为力,却仍能制定可盈利策略。在本文中,我们将讨论长-短期记忆(LSTM)、门控递归单元(GRU)。引入这两个是为了克服简单 RNN 的缺点,并令其更聪慧。
preview
DoEasy. 控件 (第 26 部分): 完成 ToolTip(工具提示)WinForms 对象,并转移至 ProgressBar(进度条)开发

DoEasy. 控件 (第 26 部分): 完成 ToolTip(工具提示)WinForms 对象,并转移至 ProgressBar(进度条)开发

在本文中,我将完成 ToolTip(工具提示)控件的开发,并启动 ProgressBar(进度条) WinForms 对象开发。 在处理对象时,我将针对控件及其组件开发动画处理的通用功能。
preview
利用对象轻松制作复杂指标

利用对象轻松制作复杂指标

本文提供了一种创建复杂指标的方法,同时还避免了在处置多个作图板、缓冲区、和/或组合来自多个来源的数据时出现的问题。
preview
MQL5 中的范畴论 (第 7 部分):多域、相对域和索引域

MQL5 中的范畴论 (第 7 部分):多域、相对域和索引域

范畴论是数学的一个多样化和不断扩展的分支,直到最近才在 MQL5 社区中得到一些报道。 这些系列文章旨在探索和验证一些概念和公理,其总体目标是建立一个开放的函数库,提供洞察力,同时也希望进一步在交易者的策略开发中运用这个非凡的领域。
preview
时间序列挖掘的数据标签(第2部分):使用Python制作带有趋势标记的数据集

时间序列挖掘的数据标签(第2部分):使用Python制作带有趋势标记的数据集

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

利用 MQL5 实现 Janus 因子

加里·安德森(Gary Anderson)基于他称之为Janus因子的理论,开发了一套市场分析方法。 该理论描述了一套可揭示趋势和评估市场风险的指标。 在本文中,我们将利用 mql5 实现这些工具。
preview
交易事务. 请求和响应结构、描述和记录

交易事务. 请求和响应结构、描述和记录

本文探讨了处理交易请求结构,即创建请求、将其发送到服务器之前的初步验证、服务器对交易请求的响应以及交易交易的结构。我们将创建简单方便的函数,将交易订单发送到服务器,并根据所讨论的内容,创建EA来通知交易事务。
preview
在 MQL5 中自动化交易策略(第 13 部分):构建头肩形态交易算法

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

在本文中,我们将自动化 MQL5 中的头肩形态。我们分析其架构,实现一个用于检测和交易该形态的 EA,并对结果进行回测。这个过程揭示了一个具有改进空间的实用交易算法。
preview
群体优化算法:粒子群(PSO)

群体优化算法:粒子群(PSO)

在本文中,我将研究流行的粒子群优化(PSO)算法。 之前,我们曾讨论过优化算法的重要特征,如收敛性、收敛率、稳定性、可伸缩性,并开发了一个测试台,并研究了最简单的 RNG 算法。
preview
以 MQL5 实现 ARIMA 训练算法

以 MQL5 实现 ARIMA 训练算法

在本文中,我们将实现一种算法,该算法应用了 Box 和 Jenkins 的自回归集成移动平均模型,并采用了函数最小化的 Powells 方法。 Box 和 Jenkins 表示,大多数时间序列可以由两个框架中之一个或两个来建模。
preview
改编版 MQL5 网格对冲 EA(第 III 部分):优化简单对冲策略(I)

改编版 MQL5 网格对冲 EA(第 III 部分):优化简单对冲策略(I)

在第三部分中,我们重新审视了早前开发的简单对冲和简单网格智能系统(EA)。我们的重点转移到通过数学分析和蛮力方式完善简单对冲 EA,旨在实现最优策略用法。本文深入探讨了该策略的数学优化,为在日后文章中探索未来基于编码的优化奠定了基础。
preview
创建一个基于布林带PIRANHA策略的MQL5 EA

创建一个基于布林带PIRANHA策略的MQL5 EA

在本文中,我们将创建一个MQL5 EA,它基于PIRANHA策略,并使用布林带来提升交易表现。我们会系统梳理该策略的核心原理、代码实现细节,以及测试与优化方法。并助您轻松将 EA 部署到实际的交易环境中。
preview
MQL5自动化交易策略(第九部分):构建亚洲盘突破策略的智能交易系统(EA)

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

在本文中,我们将在MQL5中开发一款适用于亚洲盘突破策略的智能交易系统(EA),用来计算亚洲时段的高低价以及使用移动平均线(MA)进行趋势过滤。同时实现动态对象样式、用户自定义时间输入和完善的风险管理。最后演示回测与优化技术,进一步打磨策略表现。
preview
多层感知器和反向传播算法(第 3 部分):与策略测试器集成 - 概述(I)

多层感知器和反向传播算法(第 3 部分):与策略测试器集成 - 概述(I)

多层感知器是简单感知器的演变,可以解决非线性可分离问题。 结合反向传播算法,可以有效地训练该神经网络。 在多层感知器和反向传播系列的第 3 部分当中,我们将见识到如何将此技术集成到策略测试器之中。 这种集成将允许使用复杂的数据分析,旨在制定更好的决策,从而优化您的交易策略。 在本文中,我们将讨论这种技术的优点和问题。
preview
DoEasy 函数库中的时间序列(第五十二部分):多周期、多品种单缓冲区标准指标的跨平台性质

DoEasy 函数库中的时间序列(第五十二部分):多周期、多品种单缓冲区标准指标的跨平台性质

在本文中,研究创建多品种、多周期标准指标的“建仓/派发”。 略微改进指标依托的函数库类,以便从老旧的 MetaTrader 4 平台切换到 MetaTrader 5 时,基于该函数库开发的程序均可正常运行。