MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
基于通用 MLP 逼近器的EA

基于通用 MLP 逼近器的EA

本文介绍了一种在交易 EA 中使用神经网络的简单且易于实现的方法,该方法不需要深厚的机器学习知识。该方法免除了对目标函数进行归一化的步骤,同时克服了“权重爆炸”和“网络停滞”等问题,并提供了直观的训练过程和结果的可视化控制。
preview
开发回放系统(第 71 部分):取得正确的时间(四)

开发回放系统(第 71 部分):取得正确的时间(四)

在本文中,我们将研究如何实现上一篇文章中所示的与回放/模拟服务相关的内容。就像生活中的许多其他事情一样,问题必然会出现。这次的情况也不例外。在这篇文章中,我们将继续改进。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview
使用凯利准则与蒙特卡洛模拟的投资组合风险模型

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

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

MQL5 Algo Forge 入门

我们正在推出 MQL5 Algo Forge —— 一个专为算法交易开发人员设计的门户网站。它将 Git 的强大功能与直观的界面相结合,用于管理和组织 MQL5 生态系统内的项目。在这里,您可以关注有趣的作者,组建团队,并在算法交易项目上进行协作。
preview
外汇投资组合优化:风险价值理论与马科维茨理论的融合

外汇投资组合优化:风险价值理论与马科维茨理论的融合

外汇市场中的投资组合交易是如何运作的?我们如何将用于优化投资组合权重的马科维茨投资组合理论与用于优化投资组合风险的VaR模型结合起来?我们基于投资组合理论创建一个EA,一方面,我们将获得低风险;另一方面,获得可接受的长期盈利能力。
preview
基于三维反转形态的算法交易

基于三维反转形态的算法交易

在三维K线上探索自动化交易的新世界。基于多维价格K线的交易机器人是什么样的?三维K线中的“黄色”簇群能否预测趋势反转?多维交易是什么样的?
preview
您应当知道的 MQL5 向导技术(第 47 部分):配合时态差异的强化学习

您应当知道的 MQL5 向导技术(第 47 部分):配合时态差异的强化学习

时态差异是强化学习中的另一种算法,它基于智顾训练期间预测和实际奖励之间的差异更新 Q-值。它专门驻守更新 Q-值,而不介意它们的状态-动作配对。因此,我们考察如何在向导汇编的智能系统中应用这一点,正如我们在之前文章中所做的那样。
preview
从基础到中级:数组(三)

从基础到中级:数组(三)

在本文中,我们将介绍如何在 MQL5 中使用数组,包括如何使用数组在函数和过程之间传递信息。目的是为您准备在本系列后续材料中演示和解释的内容。因此,我强烈建议您仔细研究本文将展示的内容。
preview
经典策略重塑(第12部分):欧元兑美元(EURUSD)突破交易策略

经典策略重塑(第12部分):欧元兑美元(EURUSD)突破交易策略

今天,我们将挑战在MQL5中构建一套盈利的突破交易系统。我们选择欧元兑美元(EURUSD)货币对,尝试在H1(1小时)时间框架下捕捉价格的突破行情。初期挑战:系统难以区分假突破与真实趋势的开端,导致亏损较多。我们给系统叠加了多层过滤器,旨在把亏损压到最低,同时把盈利抬到最高。最终,我们成功地让系统实现盈利,并大幅降低假突破带来的风险。
preview
开发回放系统(第 70 部分):取得正确的时间(三)

开发回放系统(第 70 部分):取得正确的时间(三)

在本文中,我们将了解如何正确有效地使用 CustomBookAdd 函数。尽管它看起来很简单,但它有许多细微差别。例如,它允许您告诉鼠标指标自定义交易品种是否正在竞价、交易或市场是否关闭。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview
您应当知道的 MQL5 向导技术(第 48 部分):比尔·威廉姆斯(Bill Williams)短吻鳄

您应当知道的 MQL5 向导技术(第 48 部分):比尔·威廉姆斯(Bill Williams)短吻鳄

短吻鳄指标是比尔·威廉姆斯(Bill Williams)的创意,是一种多功能趋势识别指标,可产生清晰的信号,并经常与其它指标结合使用。MQL5 向导类和汇编允许我们在形态基础上测试各种信号,故此我们也研究了这个指标。
preview
如何构建并优化基于成交量的交易系统——蔡金资金流指标(Chaikin Money Flow - CMF)

如何构建并优化基于成交量的交易系统——蔡金资金流指标(Chaikin Money Flow - CMF)

在本文中,我们将在明确如何构建、计算和使用基于成交量的指标——蔡金资金流指标(Chaikin Money Flow,CMF)之后,对该指标进行介绍。我们将了解如何构建自定义指标。我们会分享一些可用的简单策略,然后对这些策略进行测试,以了解哪种策略更优。
preview
从基础到中级:数组(二)

从基础到中级:数组(二)

在本文中,我们将了解动态数组和静态数组是什么。使用一个或另一个有区别吗?还是它们总是一样的?何时应该使用一种类型,何时应该使用另一种类型?那么常数数组呢?我们将尝试了解它们的设计目的,并考虑不初始化数组中所有值的风险。
preview
市场轮廓指标 (第二部分):基于画布的优化与渲染

市场轮廓指标 (第二部分):基于画布的优化与渲染

本文探讨了一种优化后的市场轮廓指标,该版本用基于 CCanvas 类对象(即画布)的渲染,取代了原先使用多个图形对象进行渲染的方式。
preview
在MQL5中创建交易管理员面板(第八部分):分析面板

在MQL5中创建交易管理员面板(第八部分):分析面板

今天,我们将深入探讨如何在管理员面板EA的一个集成专用窗口中,加入有用的交易指标。本次讨论的重点是使用MQL5实现一个分析面板,并强调其所提供数据对交易管理员的价值。其影响主要体现在教学意义上,因为整个开发过程能提炼出宝贵的经验教训,使新手和经验丰富的开发者都能从中受益。此功能展示了我们开发的系列工具在为交易经理配备先进软件工具方面所提供的无限可能。此外,作为对交易管理员面板能力的持续扩展,我们将探讨PieChart(饼图)和ChartCanvas(图表画布)类的实现。
preview
交易中的神经网络:双曲型潜在扩散模型(终篇)

交易中的神经网络:双曲型潜在扩散模型(终篇)

正如 HypDIff 框架所提议,使用各向异性扩散过程针对双曲潜在空间中的初始数据进行编码,助力保留当前市场状况的拓扑特征,并提升其分析品质。在上一篇文章中,我们开始利用 MQL5 实现所提议的方式。今天,我们将继续我们已开始的工作,并得出合乎逻辑的结论。
preview
使用MQL5经济日历进行交易(第五部分):添加响应式控件和过滤按钮的增强型仪表盘

使用MQL5经济日历进行交易(第五部分):添加响应式控件和过滤按钮的增强型仪表盘

在本文中,我们创建了用于货币对过滤、重要性级别过滤、时间过滤以及取消选项的按钮,以改进仪表盘的控制功能。通过编程让这些按钮能够动态响应用户操作,实现无缝交互。我们还对其行为进行了自动化处理,以便在仪表盘上实时反映变化。这样就提升了面板的整体功能性、灵活性和响应速度。
preview
MQL5 交易工具包(第 3 部分):开发挂单管理 EX5 库

MQL5 交易工具包(第 3 部分):开发挂单管理 EX5 库

了解如何在 MQL5 代码或项目中开发和实现全面的挂单 EX5库。本文将向您展示如何创建一个全面的挂单管理 EX5 库,并通过构建交易面板或图形用户界面(GUI)来指导您导入和实现它。EA 交易订单面板将允许用户直接从图表窗口上的图形界面打开、监控和删除与指定幻数相关的挂单。
preview
群体自适应矩估计(ADAM)优化算法

群体自适应矩估计(ADAM)优化算法

本文介绍了将广为人知且广受欢迎的ADAM梯度优化方法转变为群体算法的过程,并介绍了通过引入混合个体对其进行改进的方案。这种新方法能够利用概率分布创建融合了成功决策要素的智能体。关键创新点在于形成了群体混合个体,这些个体能够自适应地积累来自最具潜力解决方案的信息,从而提高了在复杂多维空间中的搜索效率。
preview
价格行为分析工具包开发系列(第4部分):分析预测型EA

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

我们不再局限于仅在图表上查看分析后的指标,而是将视野拓展至更广阔的范畴,其中包括与Telegram的集成。这一增强功能使得重要结果能够通过Telegram应用程序直接发送至您的移动设备。请随我们一同在本篇文章中探索这一过程。
preview
将 MQL5 与数据处理包集成(第 3 部分):增强的数据可视化

将 MQL5 与数据处理包集成(第 3 部分):增强的数据可视化

在本文中,我们将通过结合交互性、分层数据和动态元素等功能,超越基本图表,实现增强的数据可视化,使交易者能够更有效地探索趋势、形态和相关性。
preview
金融建模中合成数据的生成式对抗网络(GAN)(第 1 部分):金融建模中的 GAN 与合成数据概述

金融建模中合成数据的生成式对抗网络(GAN)(第 1 部分):金融建模中的 GAN 与合成数据概述

本文向交易者介绍产生合成金融数据的生成式对抗网络(GAN),解决模型训练中的数据限制。它涵盖了 GAN 基础知识、python 和 MQL5 代码实现,以及实际的金融应用,令交易者能够通过合成数据强化模型的准确性和健壮性。
preview
通过成交量洞察交易:趋势确认

通过成交量洞察交易:趋势确认

增强型趋势确认技术结合了价格行为、成交量分析和机器学习,用以识别真实的市场行情。该技术要求价格突破和成交量激增(高于平均值50%)这两个条件同时满足以验证交易信号,同时使用一个LSTM神经网络进行附加确认。该系统采用基于ATR(平均真实波幅)的仓位调整和动态风险管理,使其能够适应不同的市场条件,同时过滤掉虚假信号。
preview
将您自己的 LLM 集成到 EA 中(第 5 部分):使用 LLM 开发和测试交易策略(二)-LoRA-调优

将您自己的 LLM 集成到 EA 中(第 5 部分):使用 LLM 开发和测试交易策略(二)-LoRA-调优

随着当今人工智能的快速发展,语言模型(LLMs)是人工智能的重要组成部分,因此我们应该考虑如何将强大的 LLMs 整合到我们的算法交易中。对于大多数人来说,很难根据他们的需求微调这些强大的模型,在本地部署它们,然后将它们应用于算法交易。本系列文章将采取循序渐进的方法来实现这一目标。
preview
基于时间、价格和成交量创建 3D 柱状图引入波动率测量

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

本文探讨了多元三维价格图表及其创建方法。我们还将探讨 3D 柱状图如何预测价格反转,以及 Python 和 MetaTrader 5 如何让我们实时绘制这些成交量柱状图。
preview
利用 MQL5 经济日历进行交易(第四部分):在仪表盘中实现实时新闻更新

利用 MQL5 经济日历进行交易(第四部分):在仪表盘中实现实时新闻更新

本文通过实现实时新闻更新来增强我们的经济日历仪表盘,以保持市场信息的时效性和可操作性。我们在 MQL5 中集成了实时数据获取技术,以持续更新仪表盘上的事件,从而提升界面的响应速度。此更新优化确保我们可以直接从仪表盘获取最新的经济新闻,从而基于最新数据优化交易决策。
preview
利用CatBoost机器学习模型作为趋势跟踪策略的过滤器

利用CatBoost机器学习模型作为趋势跟踪策略的过滤器

CatBoost是一种强大的基于树的机器学习模型,擅长基于静态特征进行决策。其他基于树的模型,如XGBoost和随机森林(Random Forest),在稳健性、处理复杂模式的能力以及可解释性方面具有相似特性。这些模型应用广泛,可用于特征分析、风险管理等多个领域。在本文中,我们将逐步介绍如何将训练好的CatBoost模型用作经典移动平均线交叉趋势跟踪策略的过滤器。
preview
交易中的神经网络:双曲型潜在扩散模型(HypDiff)

交易中的神经网络:双曲型潜在扩散模型(HypDiff)

本文研究经由各向异性扩散过程在双曲型潜在空间中编码初始数据的方法。这有助于更准确地保留当前市场状况的拓扑特征,并提升其分析品质。
preview
从基础到中级:数组(一)

从基础到中级:数组(一)

本文是迄今为止所讨论的内容与新的研究阶段之间的过渡。要理解这篇文章,您需要阅读前面的文章。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview
使用 MQL5 经济日历进行交易(第三部分):添加货币、重要性和时间过滤器

使用 MQL5 经济日历进行交易(第三部分):添加货币、重要性和时间过滤器

在本文中,我们将在 MQL5 经济日历仪表板中添加过滤器,以便通过货币、重要性和时间来细化新闻事件的显示。我们首先为每个类别建立过滤标准,然后将这些标准集成到仪表板中,以仅显示相关事件。最后,我们确保每个过滤器都能动态更新,为交易者提供专注的、实时的经济信息。
preview
股票交易中的非线性回归模型

股票交易中的非线性回归模型

股票交易中的非线性回归模型:能否预测金融市场?让我们考虑创建一个用于预测欧元兑美元(EURUSD)汇率的模型,并基于此模型制作两个交易机器人——分别使用Python和MQL5语言。
preview
您应当知道的 MQL5 向导技术(第 46 部分):Ichimoku

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

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

价格行为分析工具箱开发(第三部分):分析大师 —EA

从一个简单的交易脚本升级到一个功能完备的智能交易系统(EA),可以极大地提升您的交易体验。想象一下,拥有一个能够自动监控您的图表、在后台执行关键计算,并每隔两小时提供定期更新的系统。这款EA将配备分析关键指标的功能,而这些指标对于做出明智的交易决策至关重要,从而确保您能获取最新信息,以有效地调整您的交易策略。
preview
从零开始在MQL5中实现移动平均线:简单明了

从零开始在MQL5中实现移动平均线:简单明了

我们将通过简单的示例,探究移动平均线的计算原理,同时了解优化指标计算(包括移动平均线计算)的方法。
preview
基于交易量的神经网络分析:未来趋势的关键

基于交易量的神经网络分析:未来趋势的关键

本文探讨了通过将技术分析原理与 LSTM 神经网络架构相结合,基于交易量分析来改进价格预测准确性的可能性。文章特别关注异常交易量的检测与解读、聚类方法的使用,以及基于交易量的特征创建及其在机器学习背景下的定义。
preview
在Python中使用Numba对交易策略进行快速测试

在Python中使用Numba对交易策略进行快速测试

本文实现了一个快速策略测试器,它使用Numba对机器学习模型进行快速策略测试。它的速度比纯 Python 策略回测器快 50 倍。作者推荐使用该库来加速数学计算,尤其是那些涉及循环的计算。
preview
交易中的神经网络:定向扩散模型(DDM)

交易中的神经网络:定向扩散模型(DDM)

在本文中,我们讨论定向扩散模型,其利用数据相关的各向异性、和定向噪声,在前向扩散过程中捕获有意义的图形表征。
preview
开发回放系统(第 69 部分):取得正确的时间(二)

开发回放系统(第 69 部分):取得正确的时间(二)

今天我们将看看为什么我们需要 iSpread 功能。同时,我们将了解当没有可用的分时报价时,系统如何通知我们柱形的剩余时间。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview
原子轨道搜索(AOS)算法

原子轨道搜索(AOS)算法

本文探讨了原子轨道搜索(Atomic Orbital Search,AOS)算法,该算法运用原子轨道模型的概念来模拟解的搜索过程。此算法基于概率分布以及原子内相互作用的动力学原理。本文详细阐述了关于AOS算法的数学层面,包括候选解位置的更新方式,以及能量吸收与释放的机制。AOS算法通过为计算问题提供一种创新的优化方法,为将量子原理应用于计算问题开辟了新思路。
preview
创建 MQL5-Telegram 集成 EA 交易(第 7 部分):图表指标自动化的命令分析

创建 MQL5-Telegram 集成 EA 交易(第 7 部分):图表指标自动化的命令分析

在本文中,我们将探讨如何将 Telegram 命令与 MQL5 集成,以自动在交易图表上添加指标。我们涵盖了解析用户命令、在MQL5中执行命令以及测试系统以确保基于指标的交易顺利进行的过程