MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
利用 Python 和 MQL5 构建您的第一个玻璃盒模型

利用 Python 和 MQL5 构建您的第一个玻璃盒模型

如果我们想从机器学习这些先进技术中获得任何价值,那么很难解释和理解为什么我们的模型偏离我们的期望至关重要。如果对模型内部工作原理的没有全面了解,我们可能无法发现破坏模型性能的错误,我们可能会在无法预测的参照特征上浪费时间,从长远来看,我们有可能没有充分利用这些模型的功能。幸运的是,有一个复杂且维护良好的多合一解决方案,令我们能够准确地看到我们的模型在引擎盖下正在做什么。
preview
从头开始开发智能交易系统(第 29 部分):谈话平台

从头开始开发智能交易系统(第 29 部分):谈话平台

在本文中,我们将学习如何让 MetaTrader 5 平台谈话。 我们如何才能让 EA 更有趣呢? 金融市场交易往往过于无聊和单调,但我们能够令这项工作少些无趣。 请注意,对于那些经历过上瘾等问题的人来说,这个项目可能是危险的。 然而,在一般情况下,它只会让事情聊胜于无。
preview
神经网络变得轻松(第二十四部分):改进迁移学习工具

神经网络变得轻松(第二十四部分):改进迁移学习工具

在上一篇文章中,我们创建了一款用于创建和编辑神经网络架构的工具。 今天我们将继续打造这款工具。 我们将努力令其对用户更加友好。 也许可以看到,我们的主题往上更进一步。 但是,您不认为规划良好的工作空间在实现结果方面起着重要作用吗?
preview
MQL5中的ALGLIB数值分析库

MQL5中的ALGLIB数值分析库

本文简要介绍了ALGLIB 3.19数值分析库、它的应用以及可以提高金融数据分析效率的新算法。
preview
学习如何基于加速(Accelerator)振荡器设计交易系统

学习如何基于加速(Accelerator)振荡器设计交易系统

我们系列中的一篇新文章,介绍如何通过最流行的技术指标创建简单的交易系统。 我们将学习一个新的加速(Accelerator)振荡器指标,我们将学习如何利用它来设计交易系统。
preview
多层感知器和反向传播算法(第 3 部分):与策略测试器集成 - 概述(I)

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

多层感知器是简单感知器的演变,可以解决非线性可分离问题。 结合反向传播算法,可以有效地训练该神经网络。 在多层感知器和反向传播系列的第 3 部分当中,我们将见识到如何将此技术集成到策略测试器之中。 这种集成将允许使用复杂的数据分析,旨在制定更好的决策,从而优化您的交易策略。 在本文中,我们将讨论这种技术的优点和问题。
DoEasy 函数库中的其他类(第七十一部分):图表对象集合事件
DoEasy 函数库中的其他类(第七十一部分):图表对象集合事件

DoEasy 函数库中的其他类(第七十一部分):图表对象集合事件

在本文中,我将创建一些跟踪图表对象事件的功能 — 添加/删除品种图表和图表子窗口,以及添加/删除/更改图表窗口中的指标。
preview
神经网络变得轻松(第四十六部分):条件导向目标强化学习(GCRL)

神经网络变得轻松(第四十六部分):条件导向目标强化学习(GCRL)

在本文中,我们要看看另一种强化学习方式。 它被称为条件导向目标强化学习(GCRL)。 按这种方式,代理者经过训练,可以在特定场景中达成不同的目标。
preview
构建K线趋势约束模型(第十部分):战略均线金叉与死叉(智能交易系统EA)

构建K线趋势约束模型(第十部分):战略均线金叉与死叉(智能交易系统EA)

您是否知道,基于移动平均线交叉的金叉和死叉策略,是识别长期市场趋势最为可靠的指标之一?当短期移动平均线上穿长期移动平均线时,金叉发出看涨趋势信号;而当短期移动平均线下穿长期移动平均线时,死叉则表明看跌趋势。尽管这些策略简单且有效,但手动运用时往往会导致错失机会或延迟交易。
preview
MQL5 酷宝书 — 服务

MQL5 酷宝书 — 服务

本文讲述了服务的多功能性 — 不需要绑定图的 MQL5 程序。 我还会重点介绍服务与其它 MQL5 程序的区别,并强调开发人员使用服务的细微差别。 作为示例,为读者提供了各种任务,涵盖了可以作为服务实现的各种功能。
preview
重塑经典策略(第二部分):布林带突破

重塑经典策略(第二部分):布林带突破

本文探讨了一种将线性判别分析(LDA)与布林带相结合的交易策略,利用对市场区域的分类预测来生成战略性入场信号。
preview
利用 MQL5 矩阵的反向传播神经网络

利用 MQL5 矩阵的反向传播神经网络

本文讲述在 MQL5 中利用矩阵来应用反向传播算法的理论和实践。 它还提供了现成的类,以及脚本、指标和智能交易系统的示例。
preview
群体优化算法:智能水滴(IWD)算法

群体优化算法:智能水滴(IWD)算法

文章探讨了一种源自无生命自然的有趣算法 - 模拟河床形成过程的智能水滴(IWD,Intelligent Water Drops)。这种算法的理念大大改进了之前的评级领先者 - SDS。与往常一样,新的领先者(修改后的 SDSm)可在附件中找到。
preview
开发多币种 EA 交易(第 2 部分):过渡到交易策略的虚拟仓位

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

让我们继续开发多币种 EA,让多个策略并行工作。让我们尝试将与市场开仓相关的所有工作从策略级转移到管理策略的 EA 级。这些策略本身只进行虚拟交易,并不建立市场仓位。
preview
数据科学和机器学习(第 14 部分):运用 Kohonen 映射在市场中寻找出路

数据科学和机器学习(第 14 部分):运用 Kohonen 映射在市场中寻找出路

您是否正在寻找一种可以帮助您驾驭复杂且不断变化的市场的尖端交易方法? Kohonen 映射是一种创新的人工神经网络形式,可以帮助您发现市场数据中隐藏的形态和趋势。 在本文中,我们将探讨 Kohonen 映射的工作原理,以及如何运用它们来开发更智能、更有效的交易策略。 无论您是经验丰富的交易者,还是刚刚起步,您都不想错过这种令人兴奋的新交易方式。
preview
您应当知道的 MQL5 向导技术(第 38 部分):布林带

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

布林带是一种非常常见的轨道线指标,许多交易者用它来手工下单和平仓。我们,通过考察尽可能多的由它生成的不同信号,来验证该指标,并看看如何在向导汇编的智能系统中运用它们。
preview
神经网络变得轻松(第二十九部分):优势扮演者-评价者算法

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

在本系列的前几篇文章中,我们见识到两种增强的学习算法。 它们中的每一个都有自己的优点和缺点。 正如在这种情况下经常发生的那样,接下来的思路是将这两种方法合并到一个算法,使用两者间的最佳者。 这将弥补它们每种的短处。 本文将讨论其中一种方法。
preview
如何构建和优化基于波动率的交易系统(Chaikin volatility-CHV)

如何构建和优化基于波动率的交易系统(Chaikin volatility-CHV)

在本文中,我们将介绍另一个基于波动率的指标——蔡金波动率(Chaikin Volatility)。在了解到蔡金波动率的使用方法和构建方式之后,我们将学习如何构建自定义指标。我们将分享一些可用的简单策略,并对其进行测试,以了解哪个策略更优。
preview
数据科学与机器学习(第 07 部分):多项式回归

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

与线性回归不同,多项式回归是一种很灵活的模型,旨在更好地执行线性回归模型无法处理的任务,我们来找出如何在 MQL5 中制作多项式模型,并据其做出积极东西。
preview
多交易品种多周期指标中的颜色缓冲区

多交易品种多周期指标中的颜色缓冲区

在本文中,我们将回顾多交易品种、多周期指标中指标缓冲区的结构,并在图表上组织这些指标的彩色缓冲区的显示。
意见调查:交易者对移动终端的评估
意见调查:交易者对移动终端的评估

意见调查:交易者对移动终端的评估

不幸的是,关于移动交易的未来,目前尚无清晰的概念。但是,在这一方面有很多推测。为了消除这种不确定性,我们决定在交易者中进行一次调查,以挖掘他们对于我们移动终端的意见。通过这次调查,我们已经清晰地认识到了客户当前对产品的看法及对我们的移动终端未来发展的要求和期望。
preview
群体优化算法:粒子群(PSO)

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

在本文中,我将研究流行的粒子群优化(PSO)算法。 之前,我们曾讨论过优化算法的重要特征,如收敛性、收敛率、稳定性、可伸缩性,并开发了一个测试台,并研究了最简单的 RNG 算法。
preview
DoEasy 函数库中的时间序列(第五十七部分):指标缓冲区数据对象

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

在本文中,开发一个对象,其中包含一个指标的一个缓冲区的所有数据。 这些对象对于存储指标缓冲区的数据序列将是必需的。 在其的辅助下,才有可能对任何指标的缓冲区数据,以及其他类似数据进行排序和比较。
preview
神经网络变得轻松(第二十三部分):构建迁移学习工具

神经网络变得轻松(第二十三部分):构建迁移学习工具

在本系列文章中,我们已经不止一次提到了迁移学习。 然而,都只是提及而已。 在本文中,我建议填补这一空白,并仔细研究迁移学习。
preview
测试不同的移动平均类型以了解它们的洞察力

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

我们都知道移动平均指标对很多交易者的重要性。还有其他移动平均线类型在交易中也很有用,我们将在本文中确定这些类型,并将它们中的每一种与最流行的简单移动平均线进行简单比较,看看哪一种可以显示出最好的结果。
preview
了解如何在MQL5中处理日期和时间

了解如何在MQL5中处理日期和时间

这是一篇关于一个新的重要话题的新文章,这个话题是关于日期和时间的。作为交易工具的交易员或程序员,了解如何很好、有效地处理日期和时间这两个方面至关重要。因此,我将分享一些重要信息,关于我们如何处理日期和时间,以便顺利、简单地创建有效的交易工具。
嘉盛市场可否预测?如何制定自己的交易策略?
嘉盛市场可否预测?如何制定自己的交易策略?

嘉盛市场可否预测?如何制定自己的交易策略?

每个开始进入嘉盛的人都会尝试回答这些问题。但是,并非每个人都找到了答案,甚至在经过了多年的努力钻研和寻找之后仍未找到答案。我个人已经回答了上述问题以及本文提到的很多其他问题。根据这些答案,制定了一种高效交易策略的方式。
preview
神经网络变得轻松(第四十部分):在大数据上运用 Go-Explore

神经网络变得轻松(第四十部分):在大数据上运用 Go-Explore

本文讨论 Go-Explore 算法覆盖长周期训练的运用,因为随着训练时间的增加,随机动作选择策略也许不会导致可盈利验算。
preview
开发回放系统 — 市场模拟(第 05 部分):加入预览

开发回放系统 — 市场模拟(第 05 部分):加入预览

我们已设法开发了一套以逼真和可访问的方式来实现市场回放的系统。 现在,我们继续我们的项目,并添加数据,从而提升回放行为。
preview
混沌博弈优化(CGO)

混沌博弈优化(CGO)

本文提出了一种新型元启发式算法——混沌博弈优化算法(CGO),该算法在处理高维问题时展现出独特的保持高效率的能力。与大多数优化算法不同,CGO在问题规模扩大时不仅不会降低性能,有时甚至还会提升性能,这便是其关键特性。
preview
DoEasy. 控件(第 4 部分):面板控件,Padding(填充)和 Dock(驻靠)参数

DoEasy. 控件(第 4 部分):面板控件,Padding(填充)和 Dock(驻靠)参数

在本文中,我将实现处理 Padding(填充,元素所有侧边的内部缩进/边距)和 Dock(驻靠)参数(对象在其容器中的定位方式)。
preview
如何在MQL5的EA中实现自优化

如何在MQL5的EA中实现自优化

MQL5中EA自优化的分步指南。我们将涵盖稳健的优化逻辑、参数选择的最佳实践,以及如何通过回测重构策略。此外,还将讨论诸如分步优化等高级方法,以增强您的交易方法。
preview
如何利用 MQL5 创建简单的多币种智能交易系统(第 2 部分):指标信号:多时间帧抛物线 SAR 指标

如何利用 MQL5 创建简单的多币种智能交易系统(第 2 部分):指标信号:多时间帧抛物线 SAR 指标

本文中的多币种智能交易系统是智能交易系统或交易机器人,它仅在一个品种图表上就能交易(开单、平单、和管理订单,例如:尾随停损和止盈)超过 1 个交易品种对。这次我们只用 1 个指标,即抛物线 SAR 或 iSAR, 将其应用在 PERIOD_M15 到 PERIOD_D1 的多个时间帧。
preview
价格走势模型及其主要规定。(第 3 部分):计算股票证券博弈的最优参数

价格走势模型及其主要规定。(第 3 部分):计算股票证券博弈的最优参数

在作者基于概率论开发的工程方式框架内,找到了开立盈利仓位的条件,并计算了最优(利润最大化)止盈和止损值。
preview
种群优化算法:鱼群搜索(FSS)

种群优化算法:鱼群搜索(FSS)

鱼群搜索(FSS)是一种新的优化算法,其灵感来自鱼群中鱼的行为,其中大多数(高达 80%)游弋在有组织的亲属群落中。 经证明,鱼类的聚集在觅食效率和保护捕食者方面起着重要作用。
preview
如何利用 MQL5 创建简单的多币种智能交易系统(第 5 部分):凯尔特纳(Keltner)通道上的布林带 — 指标信号

如何利用 MQL5 创建简单的多币种智能交易系统(第 5 部分):凯尔特纳(Keltner)通道上的布林带 — 指标信号

本文中的多币种 EA 是一款智能交易系统或交易机器人,可以仅从一个品种图表中交易(开单、平单和管理订单,例如:尾随止损和止盈)多个品种(对)。在本文中,我们将用到来自两个指标的信号,在本例中为凯尔特纳(Keltner)通道上的布林带®。
preview
DoEasy 函数库中的时间序列(第五十五部分):指标集合类

DoEasy 函数库中的时间序列(第五十五部分):指标集合类

本文继续开发指标对象类及其集合。 为每个指标对象创建其描述和正确的集合类,从而实现无错存储,并从集合列表中获取指标对象。
preview
在MetaTrader 5中实现基于EMA交叉的级联订单交易策略

在MetaTrader 5中实现基于EMA交叉的级联订单交易策略

本文介绍一个基于EMA交叉信号的自动交易算法,该算法适用于MetaTrader 5平台。文章详细阐述了在MQL5中开发一个EA所需的方方面面,以及在MetaTrader 5中进行测试的过程——从分析价格区间行为到风险管理。
分组文件的操作
分组文件的操作

分组文件的操作

有时候需要对一组文件执行相同的操作。如果你有包含在一组中的文件列表,则没有问题。但是,如果你需要自己制作列表,问题就出现了:“我该如何去做呢?”文本提出了利用 kernel32.dll 中包含的 FindFirstFile() 和 FindNextFile() 函数实现的方法。
preview
模式搜索的暴力方法(第六部分):循环优化

模式搜索的暴力方法(第六部分):循环优化

在这篇文章中,我将展示改进的第一部分,这些改进不仅使我能够使MetaTrader 4和5交易的整个自动化链闭环,而且还可以做一些更有趣的事情。从现在起,这个解决方案使我能够完全自动化创建EA和优化,并最大限度地降低寻找有效交易配置的劳动力成本。