MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
通过推送通知监控交易——一个MetaTrader 5服务的示例

通过推送通知监控交易——一个MetaTrader 5服务的示例

在本文中,我们将探讨如何创建一个服务应用程序,用于向智能手机发送关于交易结果的通知。我们将学习如何处理标准库对象列表,以便根据所需属性组织对象的选择。
preview
MQL5 简介(第 9 部分):理解和使用 MQL5 中的对象

MQL5 简介(第 9 部分):理解和使用 MQL5 中的对象

学习使用当前和历史数据在 MQL5 中创建和自定义图表对象。本基于项目的指南可帮助您可视化交易并实际应用 MQL5 概念,从而更容易构建适合您交易需求的工具。
preview
创建动态多货币对EA(第二部分):投资组合多元化与优化

创建动态多货币对EA(第二部分):投资组合多元化与优化

投资组合多元化与优化旨在将投资有策略地分散配置于多种资产之上,在最小化风险的同时,依据风险调整后的绩效指标挑选出最理想的资产组合,从而实现回报最大化。
preview
您应当知道的 MQL5 向导技术(第 40 部分):抛物线止损和反转(PSAR)

您应当知道的 MQL5 向导技术(第 40 部分):抛物线止损和反转(PSAR)

抛物线止损和反转(PSAR) 是趋势确认、和趋势终结点的指标。因为它在识别趋势方面滞后,所以它的主要目的是为持仓定位尾随止损。然而,我们要探索它是否真的可以当作智能系统的交易信号,这要归功于由向导汇编智能系统的自定义信号类。
preview
开发回放系统(第 76 部分):新 Chart Trade(三)

开发回放系统(第 76 部分):新 Chart Trade(三)

在本文中,我们将看看上一篇文章中缺少的 DispatchMessage 代码是如何工作的。我们还会介绍下一篇文章的主题。因此,在继续下一个主题之前,了解这段代码的工作原理非常重要。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview
神经网络变得轻松(第五十五部分):对比内在控制(CIC)

神经网络变得轻松(第五十五部分):对比内在控制(CIC)

对比训练是一种无监督训练方法表象。它的目标是训练一个模型,突显数据集中的相似性和差异性。在本文中,我们将谈论使用对比训练方式来探索不同的扮演者技能。
preview
MQL5 中的组合对称交叉验证

MQL5 中的组合对称交叉验证

在本文中,我们介绍使用纯 MQL5 语言实现组合对称交叉验证的情况,以衡量使用策略测试器的慢速完全算法优化策略后可能出现的过拟合程度。
preview
创建动态多货币对EA(第二部分):投资组合多元化与优化

创建动态多货币对EA(第二部分):投资组合多元化与优化

投资组合多元化与优化旨在将投资有策略地分散配置于多种资产之上,在最小化风险的同时,依据风险调整后的绩效指标挑选出最理想的资产组合,从而实现回报最大化。
preview
构建K线图趋势约束模型(第六部分):一体化集成

构建K线图趋势约束模型(第六部分):一体化集成

我们的一个主要挑战是:如何管理运行相同程序但具有不同功能的同一货币对的多个图表窗口。让我们讨论一下如何将多个窗口集成整合到一个主程序中。此外,我们还将分享如何配置程序以将信息打印到日志中,以及在图表界面上对成功发出的信号进行注释的见解。随着本系列文章的推进,您将在本文中找到更多的相关信息。
preview
化学反应优化(CRO)算法(第一部分):在优化中处理化学

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

在本文的第一部分中,我们将深入化学反应的世界并发现一种新的优化方法!化学反应优化 (CRO,Chemical reaction optimization) 利用热力学定律得出的原理来实现有效的结果。我们将揭示分解、合成和其他化学过程的秘密,这些秘密成为了这种创新方法的基础。
preview
开发回放系统 — 市场模拟(第 28 部分):智能交易系统项目 — C_Mouse 类 (II)

开发回放系统 — 市场模拟(第 28 部分):智能交易系统项目 — C_Mouse 类 (II)

当人们开始创建第一个拥有计算能力的系统时,一切都需要工程师的参与,他们必须非常熟知该项目。我们谈论的是计算机技术的曙光,那个时代甚至没有用于编程的终端。随着它的发展,越来越多的人对能够创造一些东西感兴趣,涌现出新的思路和编程方式,取代了旧式风格的改变连接器位置。这就是第一个终端出现的时刻。
preview
开发回放系统(第31部分):EA交易项目——C_Mouse类(五)

开发回放系统(第31部分):EA交易项目——C_Mouse类(五)

我们需要一个计时器,它可以显示距离回放/模拟运行结束还有多少时间。乍一看,这可能是一个简单快捷的解决方案。许多人只是尝试适应并使用交易服务器使用的相同系统。但有一件事是很多人在考虑这个解决方案时没有考虑的:对于回放,甚至更多的是模拟,时钟的工作方式不同。所有这些都使创建这样一个系统变得复杂。
preview
您应当知道的 MQL5 向导技术(第 35 部分):支持向量回归

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

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

MQL5 中的范畴论 (第 11 部分):图论

本文是以 MQL5 实现范畴论系列的续篇。于此,我们验证在开发交易系统的平仓策略时,图论如何与幺半群和其它数据结构集成。
preview
创建动态多货币对EA(第1部分):货币正相关性与负相关性

创建动态多货币对EA(第1部分):货币正相关性与负相关性

动态多货币对EA利用正负相关性来优化EA的交易表现。通过分析实时市场数据,它识别并利用货币对之间的相关性。
preview
MQL5 中的范畴论 (第 16 部分):多层感知器函子

MQL5 中的范畴论 (第 16 部分):多层感知器函子

本文是我们系列文章的第 16 篇,继续考察函子以及如何使用人工神经网络实现它们。我们偏离了迄今为止在该系列中所采用的方式,这涉及预测波动率,并尝试实现自定义信号类来设置入仓和出仓信号。
preview
种群优化算法:二进制遗传算法(BGA)。第 I 部分

种群优化算法:二进制遗传算法(BGA)。第 I 部分

在本文中,我们将探讨二进制遗传和其它种群算法中所用的各种方法。我们将见识到算法的主要组成部分,例如选择、交叠和突变,以及它们对优化的影响。此外,我们还将研究数据表示方法,及其对优化结果的影响。
preview
从基础到中级:BREAK 和 CONTINUE 语句

从基础到中级:BREAK 和 CONTINUE 语句

在本文中,我们将学习如何在循环中使用 RETURN、BREAK 和 CONTINUE 语句。了解每个语句在循环执行流程中的作用对于处理更复杂的应用程序非常重要。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview
无政府社会优化(ASO)算法

无政府社会优化(ASO)算法

本文中,我们将了解无政府社会优化(Anarchic Society Optimization,ASO)算法,并探讨一个基于无政府社会(一个摆脱中央权力和各种等级制度的异常社会交互系统)中参与者非理性与冒险行为的算法是如何能够探索解空间并避免陷入局部最优陷阱的。本文提出了一种适用于连续问题和离散问题的统一ASO结构。
preview
群体优化算法:抵抗陷入局部极值(第二部分)

群体优化算法:抵抗陷入局部极值(第二部分)

我们将继续我们的实验,它的目标是研究群体优化算法在群体多样性较低时有效摆脱局部最小值并达到全局最大值的能力。提供了研究的结果。
preview
将人工智能(AI)模型集成到已有的MQL5交易策略中

将人工智能(AI)模型集成到已有的MQL5交易策略中

本主题聚焦于将训练好的人工智能(AI)模型(如长短期记忆网络(LSTM)等强化学习模型,或基于机器学习的预测模型)集成到现有的MQL5交易策略中。
preview
数据科学与机器学习(第 15 部分):SVM,每个交易员工具箱中的必备工具

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

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

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

Ichimuko Kinko Hyo 是日本著名的指标,可当作趋势识别系统。我们如之前类似文章所为,逐个形态地验证这一点,并借助 MQL5 向导的库类并汇编,来评估其策略和测试报告。
preview
价格行为分析工具包开发系列(第4部分):分析预测型EA

价格行为分析工具包开发系列(第4部分):分析预测型EA

我们不再局限于仅在图表上查看分析后的指标,而是将视野拓展至更广阔的范畴,其中包括与Telegram的集成。这一增强功能使得重要结果能够通过Telegram应用程序直接发送至您的移动设备。请随我们一同在本篇文章中探索这一过程。
preview
开发回放系统 — 市场模拟(第 26 部分):智能交易系统项目 — C_Terminal 类

开发回放系统 — 市场模拟(第 26 部分):智能交易系统项目 — C_Terminal 类

现在,我们可以开始创建回放/模拟系统的智能系统。不过,我们需要改进一些东西,并非敷衍了事。尽管如此,我们不应被最初的复杂性所吓倒。重要的是从某处开始,否则我们最终只会空想一项任务的难度,甚至没有尝试去克服它。这就是编程的全部意义:通过学习、测试和广泛的研究来攻克障碍。
preview
为 MetaTrader 5 开发 MQTT 客户端:TDD 方法 - 最终篇

为 MetaTrader 5 开发 MQTT 客户端:TDD 方法 - 最终篇

本文是介绍我们针对 MQTT 5.0 协议的本机 MQL5 客户端的开发步骤系列文章的最后一部分。尽管该库尚未投入实际使用,但在此部分中,我们将使用我们的客户端来更新来自另一个经纪商的报价(或利率)的自定义交易品种。请参阅本文底部以获取有关该库的当前状态的更多信息、它与 MQTT 5.0 协议完全兼容所缺少的内容、可能的路线图以及如何关注和促进其发展。
preview
算术优化算法(AOA):从AOA到SOA(简单优化算法)

算术优化算法(AOA):从AOA到SOA(简单优化算法)

在本文中,我们介绍了基于简单算术运算(加法、减法、乘法和除法)的算术优化算法(AOA)。这些基本的数学运算是为各种问题寻找最优解的基础。
preview
您应当知道的 MQL5 向导技术(第 53 部分):市场促进指数

您应当知道的 MQL5 向导技术(第 53 部分):市场促进指数

市场促进指数是比尔·威廉姆斯(Bill Williams)的另一个指标,旨在衡量价格走势与成交量联动的效率。一如既往,我们将在由向导汇编信号类的范畴内分析该指标的各种形态,并为各种形态呈现多种测试报告和分析。
preview
神经网络变得简单(第 94 部分):优化输入序列

神经网络变得简单(第 94 部分):优化输入序列

在处理时间序列时,我们始终按其历史序列使用源数据。但这是最好的选项吗?有一种观点认为,改变输入数据顺序将提高训练模型的效率。在本文中,我邀请您领略其中一种优化输入序列的方法。
preview
使用Python和MQL5进行特征工程(第四部分):基于UMAP回归的K线模式识别

使用Python和MQL5进行特征工程(第四部分):基于UMAP回归的K线模式识别

降维技术被广泛用于提升机器学习模型的性能。让我们来讨论一项被称为“统一流形逼近与投影”的相对较新的技术(UMAP)。这项新技术的开发旨在针对性地克服传统方法在数据中产生伪影和失真的局限性。UMAP是一种强大的降维技术,它能以一种新颖而有效的方式帮助我们将相似的K线进行分组,从而降低在样本外数据上的错误率,并提升我们的交易表现。
preview
神经网络变得简单(第 69 部分):基于密度的行为政策支持约束(SPOT)

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

在离线学习中,我们使用固定的数据集,这限制了环境多样性的覆盖范围。在学习过程中,我们的 Agent 能生成超出该数据集之外的动作。如果没有来自环境的反馈,我们如何判定针对该动作的估测是正确的?在训练数据集中维护 Agent 的政策成为确保训练可靠性的一个重要方面。这就是我们将在本文中讨论的内容。
preview
交易中的神经网络:运用形态变换器进行市场分析

交易中的神经网络:运用形态变换器进行市场分析

当我们用模型分析市场形势时,我们主要关注蜡烛条。然而,人们早就知道烛条形态能有助于预测未来的价格走势。在本文中,我们将领略一种能将这两种方法集成的方式。
preview
开发一款波段交易入场监控智能交易系统(EA)

开发一款波段交易入场监控智能交易系统(EA)

随着年末临近,长期交易者往往会回顾市场历史数据,分析市场行为与趋势,以期预测未来可能的走势。本文将探讨如何使用MQL5开发一款长期交易入场监控智能交易系统(EA)。该系统的开发旨在解决因手动交易和缺乏自动化监控系统而导致的长期交易机会错失问题。我们将以交易量最为活跃的货币对之一为例,有效制定策略并开发我们的解决方案。
preview
构建一个用于实现带约束条件的自定义最大值的通用优化公式(GOF)

构建一个用于实现带约束条件的自定义最大值的通用优化公式(GOF)

在这篇文章中,我们将介绍一种在MetaTrader 5终端的设置选项卡中选择“自定义最大值”时,实现具有多个目标和约束的优化问题的方法。举例来说,优化问题可以是:最大化利润因子、净利润和恢复因子,同时满足以下条件:回撤小于10%,连续亏损次数少于5次,每周交易次数多于5次。
preview
神经网络变得简单(第 84 部分):可逆归一化(RevIN)

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

我们已经知晓,输入数据的预处理对于模型训练的稳定性扮演重要角色。为了在线处理 “原始” 输入数据,我们往往会用到批量归一化层。但有时我们需要一个逆过程。在本文中,我们将讨论解决该问题的可能方式之一。
preview
《数据科学与机器学习(第25部分):使用循环神经网络(RNN)进行外汇时间序列预测》

《数据科学与机器学习(第25部分):使用循环神经网络(RNN)进行外汇时间序列预测》

循环神经网络(RNN)非常擅长利用过去的信息来预测未来的事件。它们卓越的预测能力已经在各个领域得到了广泛应用,并取得了巨大成功。在本文中,我们将部署RNN模型来预测外汇市场的趋势,展示它们在提高外汇交易预测准确性方面的潜力。
preview
如何使用 MetaTrader 和 Google Sheets 创建交易日志

如何使用 MetaTrader 和 Google Sheets 创建交易日志

使用 MetaTrader 和 Google Sheets 创建交易日志!您将学习如何通过 HTTP POST 同步您的交易数据,并使用 HTTP 请求来获取它。最后,您有一个交易日志,可以帮助您有效地跟踪您的交易。
preview
基于时间、价格和成交量创建 3D 柱状图引入波动率测量

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

本文探讨了多元三维价格图表及其创建方法。我们还将探讨 3D 柱状图如何预测价格反转,以及 Python 和 MetaTrader 5 如何让我们实时绘制这些成交量柱状图。
preview
您应当知道的 MQL5 向导技术(第 42 部分):ADX 振荡器

您应当知道的 MQL5 向导技术(第 42 部分):ADX 振荡器

ADX 是一些交易者用来衡量主流趋势强度的另一个相对热门的技术指标。作为其它两个指标的组合,它体现为振荡器,在本文中我们借助 MQL5 向导汇编、及其支持类,来探索其形态。
preview
黑洞算法(BHA)

黑洞算法(BHA)

黑洞算法(BHA)利用黑洞引力原理来优化解。在本文中,我们将考察 BHA 如何在避免局部极端情况的同时,吸引最佳解,以及为什么该算法已成为解决复杂问题的强大工具。学习简单的思路如何在优化世界带来令人印象深刻的结果。