MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
日志记录精通指南(第三部分):探索日志处理器(Handlers)实现方案

日志记录精通指南(第三部分):探索日志处理器(Handlers)实现方案

在本文中,我们将探索日志库中"处理器"(handlers)的概念,理解其工作原理,并创建三种基础实现:控制台、数据库和文件。我们将覆盖从处理器的基本结构到实际测试,为后续文章中的完整功能实现奠定基础。
preview
神经类群优化算法 (NOA)

神经类群优化算法 (NOA)

一种新的生物启发的优化元启发式算法——NOA(Neuroboids Optimization Algorithm,神经类群优化算法),结合了集体智能和神经网络的原理。与传统方法不同,该算法使用了一个由具备自学习能力的“神经类群(neuroboids)”组成的群体,每个神经类群都拥有自己的神经网络,能够实时调整其搜索策略。本文揭示了该算法的架构、代理的自学习机制,以及这种混合方法在解决复杂优化问题方面的应用前景。
preview
中心引力优化(CFO)算法

中心引力优化(CFO)算法

本文介绍了一种受万有引力定律启发的中心引力优化(CFO)算法。它探讨了物理引力的原理如何解决优化问题,其中“较重”的解决方案会吸引不太成功的对应物。
preview
交易中的神经网络:二维连接空间模型(终篇)

交易中的神经网络:二维连接空间模型(终篇)

我们继续探索创新的奇美拉(Chimera)框架 — 这款二维状态空间模型,利用神经网络技术多维度分析时间序列。该方法提供了高预测精度、及低计算成本。
preview
您应当知道的 MQL5 向导技术(第 57 部分):搭配移动平均和随机振荡器的监督训练

您应当知道的 MQL5 向导技术(第 57 部分):搭配移动平均和随机振荡器的监督训练

移动平均线和随机振荡器是十分常用的指标,因其滞后性质,一些交易者或许较少使用。在一个三部分的“迷你序列”中,研究机器学习的三大主要形式,我们会考证对这些指标的偏见是否合理,或者它们可能占据优势。我们经由向导汇编的智能系统来进行实证。
preview
数据科学和机器学习(第 35 部分):MQL5 中的 NumPy — 用更少代码制作复杂算法的艺术

数据科学和机器学习(第 35 部分):MQL5 中的 NumPy — 用更少代码制作复杂算法的艺术

NumPy 库几乎为所有 Python 语言编程的机器学习算法提供核心动力,在本文中我们即将实现一个类似的模块,其收集了所有复杂的代码,辅助我们构建各种类的复杂模型和算法。
preview
计算机视觉在MQL5中的集成(第一部分):构建基础函数

计算机视觉在MQL5中的集成(第一部分):构建基础函数

基于计算机视觉与深度学习的欧元兑美元(EURUSD)汇率预测系统。探索卷积神经网络(CNN)如何识别外汇市场中的复杂价格形态,并实现最高达54%的汇率波动预测准确率。本文将分享一种突破传统技术指标的算法设计方法 —— 通过人工智能(AI)技术对K线图进行可视化分析。作者演示了将价格数据转换为“图像”的过程、神经网络的处理流程,以及通过激活热力图和注意力热图窥视AI“思维”的独特机会。通过基于MetaTrader 5库的Python实践代码,读者可完整复现系统并将其应用于自身的交易中。
preview
使用MQL5经济日历进行交易(第七部分):基于资源型新闻事件分析的策略测试准备

使用MQL5经济日历进行交易(第七部分):基于资源型新闻事件分析的策略测试准备

在本文中,我们通过将经济日历数据作为非实盘分析资源嵌入到MQL5交易系统中,为策略测试做好准备。我们实现了按时间、货币和影响程度加载和筛选事件的功能,并在策略测试器中验证其有效性。这使得基于新闻事件的策略能够进行高效的回测。
preview
基于马尔可夫状态转移矩阵的神经网络自学习型EA

基于马尔可夫状态转移矩阵的神经网络自学习型EA

基于状态矩阵与神经网络的自训练智能交易系统(EA)我们将马尔可夫链与基于ALGLIB MQL5库开发的多层感知器(MLP)神经网络相结合。马尔可夫链与神经网络如何结合应用于外汇预测?
preview
台球优化算法(BOA)

台球优化算法(BOA)

BOA方法灵感源自经典的台球运动,它将寻求最优解的过程模拟为一场游戏:球体致力于落入代表最佳结果的球袋之中。本文将探讨BOA的基本原理、数学模型及其在解决各类优化问题中的效率。
preview
您应当知道的 MQL5 向导技术(第 58 部分):配以移动平均和随机振荡器形态的强化学习(DDPG)

您应当知道的 MQL5 向导技术(第 58 部分):配以移动平均和随机振荡器形态的强化学习(DDPG)

移动平均线和随机振荡器是十分常用的指标,我们在前一篇文章中探讨了它们的共通形态,并通过监督学习网络,见识了哪些“形态能粘附”。我们自该文加以分析,进一步研究当使用该已训练网络时,强化学习的效能。读者应当注意,我们的测试时间窗口非常有限。无论如何,我们在展示这一点时,会继续追求由 MQL5 向导提供最低编码需求。
preview
大逃杀优化器(BRO)

大逃杀优化器(BRO)

本文探讨了大逃杀优化器算法 —— 这是一种元启发式算法,其中各解与其最近邻进行竞争,累积"伤害",当超过阈值时被替换,并周期性地在当前最优解周围缩小搜索空间。文章提供了CAOBRO类的伪代码及MQL5中的实现,包括邻近搜索、向最优解移动以及自适应δ间隔。在Hilly、Forest和Megacity测试函数上的实验结果突出了该方法的优势与局限性。读者可以获得一套开箱即用的基础框架,用于实验和调优关键参数,如种群大小(popSize) 和最大伤害值(maxDamage)。
preview
MQL5 MVC架构中表格视图与控制器组件:简单控件

MQL5 MVC架构中表格视图与控制器组件:简单控件

本文探讨了如何在MVC(模型 - 视图 - 控制器)架构下实现表格,重点介绍简单控件,它们是构建复杂视图组件的基础。控制器主要用来处理用户与元素、元素与元索之间的交互。这是关于视图组件的第二篇文章,也是关于为MetaTrader 5客户端创建表格系列文章中的第四篇。
preview
从基础到中级:指标(二)

从基础到中级:指标(二)

在本文中,我们将研究如何实现移动平均值计算,以及在执行此计算时应该采取哪些预防措施。我们还将讨论如何重载 OnCalculate 函数,以便了解何时以及如何使用不同的模型。
preview
基于马尔可夫链的矩阵预测模型

基于马尔可夫链的矩阵预测模型

我们将创建一个基于马尔可夫链的矩阵预测模型。什么是马尔可夫链?我们如何将马尔可夫链应用于外汇交易?
preview
MQL5 简介(第 14 部分):构建自定义指标的初学者指南(三)

MQL5 简介(第 14 部分):构建自定义指标的初学者指南(三)

学习如何使用图表对象在 MQL5 中构建谐波形态指标。了解如何检测波动点、应用斐波那契回撤线以及自动识别形态。
preview
人工部落算法(ATA)

人工部落算法(ATA)

文章提供了 ATA 优化算法关键组成部分和创新的详细讨论,其为一种进化方法,具有独特的双重行为系统,可根据状况进行调整。ATA 结合了个体和社会学习,同时使用交叉进行探索和迁徙,从而在陷入局部最优时找到解。
preview
MQL5 简介(第 13 部分):构建自定义指标的初学者指南(二)

MQL5 简介(第 13 部分):构建自定义指标的初学者指南(二)

本文将指导您从头开始构建自定义 Heikin Ashi 指标,并演示如何将自定义指标集成到 EA 中。它涵盖了指标计算、交易执行逻辑和风险管理技术,以增强自动化交易策略。
preview
在交易图表上通过资源驱动的双三次插值图像缩放技术创建动态 MQL5 图形界面

在交易图表上通过资源驱动的双三次插值图像缩放技术创建动态 MQL5 图形界面

本文探讨了动态 MQL5 图形界面,利用双三次插值技术在交易图表上实现高质量的图像缩放。我们详细介绍了灵活的定位选项,支持通过自定义偏移量实现动态居中或位置定位。
preview
从基础到中级:模板和类型名称(三)

从基础到中级:模板和类型名称(三)

在本文中,我们将讨论该主题的第一部分,这对初学者来说并不容易理解。为了避免更加困惑并正确解释这个话题,我们将把解释分为几个阶段。我们将把这篇文章用于第一阶段。然而,尽管在本文末尾,我们似乎已经陷入僵局,但事实上,我们将朝着另一种情况迈出一步,这将在下一篇文章中得到更好的理解。
preview
您应当知道的 MQL5 向导技术(第 55 部分):配备优先经验回放的 SAC

您应当知道的 MQL5 向导技术(第 55 部分):配备优先经验回放的 SAC

强化学习中的回放缓冲区对于像 DQN 或 SAC 这样的无政策算法尤为重要。这样就会聚光在该记忆缓冲区的抽样过程。举例,SAC 默认选项从该缓冲区随机选择,而优先经验回放缓冲区则基于 TD 分数从缓冲区中抽样对其优调。我们回顾强化学习的重要性,并一如既往,在由向导汇编的智能系统中验证这一假设(而‘非交叉验证)。
preview
纯 MQL5 货币对强弱指标

纯 MQL5 货币对强弱指标

我们将在 MQL5 中开发货币强势分析的专业指标。这本分步指南将向你展示如何为 MetaTrader 5 开发一款功能强大的交易工具,该工具带有可视化仪表板。您将学习如何计算多个时间周期(H1、H4、D1)内货币对的强度,实现动态数据更新,并创建用户友好的界面。
preview
从基础到中级:模板和类型名称(四)

从基础到中级:模板和类型名称(四)

在本文中,我们将非常仔细地研究如何解决上一篇文章末尾提出的问题。尝试创建这种类型的模板,以便能够创建数据联合的模板。
preview
您应当知道的 MQL5 向导技术(第 62 部分):结合 ADX 与 CCI 形态的强化学习 TRPO

您应当知道的 MQL5 向导技术(第 62 部分):结合 ADX 与 CCI 形态的强化学习 TRPO

ADX 振荡器和 CCI 振荡器是趋势跟踪和动量指标,可在开发智能系统时配对。我们延续上一篇文章未竟的话题,实证如何得益于强化学习来实际运用训练、并更新我们已开发的模型。我们正在使用的算法尚未在本系列中涵盖,其称为可信区域政策优化。一如既往,由 MQL5 向导汇编的智能系统令我们能够更快地搭建测试模型,且可配合不同类型信号进行测试、并派发。
preview
皇冠同花顺优化(RFO)

皇冠同花顺优化(RFO)

最初的皇冠同花顺优化算法提供了一种解决优化问题的新方法,受到扑克牌原则启发,以基于扇区的方式取代了传统的遗传二进制编码算法。RFO 展现出简化的基本原理如何带来高效、且实用的优化方法。文章呈现了一份详细的算法分析和测试结果。
preview
成功餐饮经营者算法(SRA)

成功餐饮经营者算法(SRA)

成功餐饮经营者算法(SRA)是一种受餐饮业管理原则启发的创新优化方法。与传统方法不同,SRA不会直接淘汰劣质解,而是通过融合优质解的元素对其进行改进。该算法在优化问题中展现出极具竞争力的表现,并为平衡探索与利用提供了全新视角。
preview
价格走势:数学模型与技术分析

价格走势:数学模型与技术分析

预测货币对走势是交易成功的重要因素。本文剖析各类价格运行模型,对比其优劣特性,并探究模型在交易策略中的实际落地方式。文中将介绍能够挖掘潜在行情规律、提升预测精准度的分析方法。
preview
市场模拟(第九部分):套接字(三)

市场模拟(第九部分):套接字(三)

今天的文章是上一篇文章的延续。我们将研究 EA 交易的实现,主要关注服务器代码的执行方式。上一篇文章中给出的代码不足以使一切按预期工作,因此我们需要更深入地挖掘它。因此,有必要阅读这两篇文章,以便更好地了解会发生什么。
preview
交易中的神经网络:配备概念强化的多智代系统(FinCon)

交易中的神经网络:配备概念强化的多智代系统(FinCon)

我们邀您探索 FinCon 框架,这是一款基于大语言模型(LLM)的多智代系统。该框架利用概念性词汇强化来提升决策制定和风险管理,能在多种金融任务中有高效表现。
preview
MQL5中用于预测与分类评估的重采样技术

MQL5中用于预测与分类评估的重采样技术

本文将探讨并实现一种方法:利用单一数据集同时作为训练集和验证集,来评估模型质量。
preview
从基础到中级:数组和字符串(二)

从基础到中级:数组和字符串(二)

在本文中,我将展示,尽管我们仍处于编程的一个非常基本的阶段,但我们已经可以实现一些有趣的应用程序。在这种情况下,我们将创建一个相当简单的密码生成器。通过这种方式,我们将能够应用到目前为止已经解释过的一些概念。此外,我们将研究如何为一些具体问题制定解决方案。
preview
您应当知道的 MQL5 向导技术(第 59 部分):配以移动平均和随机振荡器形态的强化学习(DDPG)

您应当知道的 MQL5 向导技术(第 59 部分):配以移动平均和随机振荡器形态的强化学习(DDPG)

我们继续上一篇文章中有关配以 MA 和随机振荡器指标的 DDPG 话题,探讨实现 DDPG 时其他关键的强化学习类。尽管我们大多用 Python 编码,但最终产品是把训练好的网络导出为 ONNX 格式,我们会将它集成到由向导汇编的 MQL5 智能系统中作为资源。
preview
混沌优化算法(COA):续篇

混沌优化算法(COA):续篇

我们继续对混沌优化算法进行讲解。本文第二部分将介绍该算法实现的实操细节、测试过程及相关结论。
preview
市场模拟(第 11 部分):套接字(五)

市场模拟(第 11 部分):套接字(五)

我们开始实现 Excel 和 MetaTrader 5 之间的连接,但首先我们需要了解一些关键点。这样,你就不必绞尽脑汁去弄清楚为什么有些东西有效或无效。在您对集成 Python 和 Excel 的前景感到沮丧之前,让我们看看如何(在某种程度上)使用 xlwings 通过 Excel 控制 MetaTrader 5。我们在这里展示的内容将主要集中在教育目标上。但是,不要以为我们只能做这里涵盖的事情。
preview
交易中的神经网络:层次化双塔变换器(终篇)

交易中的神经网络:层次化双塔变换器(终篇)

我们继续构建 Hidformer 层次化双塔变换器模型,专为分析和预测复杂多变量时间序列而设计。在本文中,我们会把早前就开始的工作推向逻辑结局 — 我们将在真实历史数据上测试模型。
preview
MQL5经济日历交易指南(第九部分):通过动态滚动条与界面优化提升新闻交互体验

MQL5经济日历交易指南(第九部分):通过动态滚动条与界面优化提升新闻交互体验

本文中,我们为MQL5经济日历添加了动态滚动条功能,使用户直观快速浏览新闻事件。确保事件展示界面无卡顿且数据更新高效。并通过测试验证滚动条的响应性与仪表盘的美观度。
preview
市场模拟(第 10 部分):套接字(四)

市场模拟(第 10 部分):套接字(四)

在这篇文章中,我们将以一种非常有趣的方式,看看你需要做什么才能开始使用 Excel 来管理 MetaTrader 5。为此,我们将使用 Excel 加载项来避免使用内置的 VBA。如果您不知道什么是加载项,请阅读本文,学习如何直接在 Excel 中使用 Python 进行编程。
preview
精通日志记录(第七部分):如何在图表上显示日志

精通日志记录(第七部分):如何在图表上显示日志

了解如何在MetaTrader图表上以条理清晰的方式直接显示日志,包括边框、标题和自动 滚动功能。本文将演示如何用MQL5打造可视化日志系统,助您实时监控交易机器人的运行状态。
preview
开发多币种 EA 交易(第 22 部分):开始向设置的热插拔过渡

开发多币种 EA 交易(第 22 部分):开始向设置的热插拔过渡

如果要自动进行周期性优化,我们需要考虑自动更新交易账户上已经运行的 EA 设置。这样一来,我们就可以在策略测试器中运行 EA,并在单次运行中更改其设置。
preview
精通日志记录(第六部分):数据库日志存储方案

精通日志记录(第六部分):数据库日志存储方案

本文探讨如何利用数据库以结构化、可扩展的方式存储日志。内容涵盖基础概念、核心操作、MQL5中数据库处理器的配置与实现。最后验证结果,并阐述该方法在优化与高效监控方面的优势。