MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
大逃杀优化器(BRO)

大逃杀优化器(BRO)

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

价格行为分析工具包开发(第 35 部分):预测模型训练与部署

历史行情数据绝非 “无用糟粕”,而是所有稳健市场分析的根基。本文将带您循序渐进,从历史数据采集入手,利用数据训练预测模型,最终完成模型部署,实盘价格预测落地应用。继续往下阅读,掌握完整实现流程!
preview
价格行为分析工具包开发(第三十三部分):K线区间理论工具

价格行为分析工具包开发(第三十三部分):K线区间理论工具

提升您对市场的解读能力,这款适用于MetaTrader 5的K线区间理论套件是完全原生的MQL5解决方案,能将原始K线数据转化为实时波动率情报。轻量级的CRangePattern库会将每根K线的真实波幅与自适应ATR进行基准对比,并在K线收盘的瞬间完成形态分类;CRT指标随后会将这些分类结果以清晰的彩色矩形和箭头形式呈现在图表上,实时揭示市场的缩量盘整、强势突破以及全区间吞没形态。
preview
从基础到中级:数组(一)

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

本文是迄今为止所讨论的内容与新的研究阶段之间的过渡。要理解这篇文章,您需要阅读前面的文章。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview
台球优化算法(BOA)

台球优化算法(BOA)

BOA方法灵感源自经典的台球运动,它将寻求最优解的过程模拟为一场游戏:球体致力于落入代表最佳结果的球袋之中。本文将探讨BOA的基本原理、数学模型及其在解决各类优化问题中的效率。
preview
数据科学和机器学习(第 35 部分):MQL5 中的 NumPy — 用更少代码制作复杂算法的艺术

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

NumPy 库几乎为所有 Python 语言编程的机器学习算法提供核心动力,在本文中我们即将实现一个类似的模块,其收集了所有复杂的代码,辅助我们构建各种类的复杂模型和算法。
preview
从基础到中级:模板和类型名称(二)

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

本文解释了如何处理您可能遇到的最困难的编程情况之一:在同一个函数或过程模板中使用不同的类型。尽管我们大部分时间只关注函数,但这里介绍的所有内容都是有用的,并且可以应用于过程。
preview
神经类群优化算法 (NOA)

神经类群优化算法 (NOA)

一种新的生物启发的优化元启发式算法——NOA(Neuroboids Optimization Algorithm,神经类群优化算法),结合了集体智能和神经网络的原理。与传统方法不同,该算法使用了一个由具备自学习能力的“神经类群(neuroboids)”组成的群体,每个神经类群都拥有自己的神经网络,能够实时调整其搜索策略。本文揭示了该算法的架构、代理的自学习机制,以及这种混合方法在解决复杂优化问题方面的应用前景。
preview
您应当知道的 MQL5 向导技术(第 57 部分):搭配移动平均和随机振荡器的监督训练

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

移动平均线和随机振荡器是十分常用的指标,因其滞后性质,一些交易者或许较少使用。在一个三部分的“迷你序列”中,研究机器学习的三大主要形式,我们会考证对这些指标的偏见是否合理,或者它们可能占据优势。我们经由向导汇编的智能系统来进行实证。
preview
从基础到中级:运算符优先级

从基础到中级:运算符优先级

这绝对是纯理论上最难解释的问题。这就是为什么你需要练习我们在这里讨论的所有内容。虽然这起初看起来很简单,但操作符的话题只有在实践中结合不断的教育才能理解。
preview
MQL5 简介(第 13 部分):构建自定义指标的初学者指南(二)

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

本文将指导您从头开始构建自定义 Heikin Ashi 指标,并演示如何将自定义指标集成到 EA 中。它涵盖了指标计算、交易执行逻辑和风险管理技术,以增强自动化交易策略。
preview
MQL5 简介(第 14 部分):构建自定义指标的初学者指南(三)

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

学习如何使用图表对象在 MQL5 中构建谐波形态指标。了解如何检测波动点、应用斐波那契回撤线以及自动识别形态。
preview
从基础到中级:递归

从基础到中级:递归

在本文中,我们将探讨一个非常有趣且颇具挑战性的编程概念,尽管应该非常谨慎地对待它,因为它的误用或误解会将相对简单的程序变成不必要的复杂程序。但是,当正确使用并完全适应同样合适的情况时,递归成为解决问题的绝佳盟友,否则这些问题会更加费力和耗时。此处提供的材料仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview
从基础到中级:事件(一)

从基础到中级:事件(一)

鉴于目前所展示的一切,我认为我们现在可以开始实现某种应用程序,以便直接在图表上运行某些交易品种。然而,首先我们需要讨论一个对初学者来说可能相当困惑的概念。也就是说,在 MQL5 中开发并用于在图表上显示的应用程序的创建方式与我们迄今为止看到的不同。在本文中,我们将开始更好地理解这一点。
preview
在交易图表上通过资源驱动的双三次插值图像缩放技术创建动态 MQL5 图形界面

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

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

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

在本文中,我们将研究如何实现移动平均值计算,以及在执行此计算时应该采取哪些预防措施。我们还将讨论如何重载 OnCalculate 函数,以便了解何时以及如何使用不同的模型。
preview
精通日志记录(第五部分):通过缓存和轮转优化处理程序

精通日志记录(第五部分):通过缓存和轮转优化处理程序

本文通过为处理器添加格式化器、引入用于管理执行周期的 CIntervalWatcher 类、以及采用缓存和文件轮转进行优化,并辅以性能测试和实际示例,从而改进了该日志库。通过这些改进,我们确保了一个高效、可扩展且能适应不同开发场景的日志系统。
preview
在训练中激活神经元的函数:快速收敛的关键?

在训练中激活神经元的函数:快速收敛的关键?

本文研究了在神经网络训练背景下,不同激活函数与优化算法之间的相互作用。我们特别关注了经典的 ADAM 算法及其种群版本在处理多种激活函数(包括振荡的 ACON 和 Snake 函数)时的表现。通过使用一个极简的 MLP (1-1-1) 架构和单个训练样本,我们将激活函数对优化的影响与其他因素隔离开来。文章提出了一种通过激活函数边界来管理网络权重的方法,以及一种权重反射机制,这有助于避免训练中的饱和和停滞问题。
preview
您应当知道的 MQL5 向导技术(第 58 部分):配以移动平均和随机振荡器形态的强化学习(DDPG)

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

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

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

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

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

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

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

我们继续对混沌优化算法进行讲解。本文第二部分将介绍该算法实现的实操细节、测试过程及相关结论。
preview
神经网络实践:绘制神经元

神经网络实践:绘制神经元

在本文中,我们将构建一个基本神经元。虽然它看起来很简单,许多人可能会认为这段代码完全微不足道,毫无意义,但我希望你在学习这个简单的神经元草图时能玩得开心。不要害怕修改代码,完全理解它才是目标。
preview
日志记录精通指南(第三部分):探索日志处理器(Handlers)实现方案

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

在本文中,我们将探索日志库中"处理器"(handlers)的概念,理解其工作原理,并创建三种基础实现:控制台、数据库和文件。我们将覆盖从处理器的基本结构到实际测试,为后续文章中的完整功能实现奠定基础。
preview
MQL5自优化智能交易系统(第八部分):多策略分析(3)—— 加权投票机制

MQL5自优化智能交易系统(第八部分):多策略分析(3)—— 加权投票机制

本文将探讨如何确定集成策略中最优的策略数量 —— 这是一个复杂问题,而借助MetaTrader 5的遗传算法优化器可以轻松解决。同时,我们也会使用MQL5云端计算作为核心资源,加速回测与优化过程。具体而言,本篇内容将为后续开发统计评估模型奠定基础,用于基于初始集成结果评估并改进交易策略。
preview
纯 MQL5 货币对强弱指标

纯 MQL5 货币对强弱指标

我们将在 MQL5 中开发货币强势分析的专业指标。这本分步指南将向你展示如何为 MetaTrader 5 开发一款功能强大的交易工具,该工具带有可视化仪表板。您将学习如何计算多个时间周期(H1、H4、D1)内货币对的强度,实现动态数据更新,并创建用户友好的界面。
preview
您应当知道的 MQL5 向导技术(第 55 部分):配备优先经验回放的 SAC

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

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

人工部落算法(ATA)

文章提供了 ATA 优化算法关键组成部分和创新的详细讨论,其为一种进化方法,具有独特的双重行为系统,可根据状况进行调整。ATA 结合了个体和社会学习,同时使用交叉进行探索和迁徙,从而在陷入局部最优时找到解。
preview
金融时间序列中的保形预测探索

金融时间序列中的保形预测探索

本文将介绍保形预测(conformal predictions)及其实现库MAPIE。这是一种较新的机器学习方法,重点不在于发现数据规律,而在于为现有模型提供风险管理与不确定性量化能力。保形预测本身并非用于挖掘数据中的规律,而仅用于评估现有模型对特定样本预测的置信度,并筛选出可靠的预测结果。
preview
开发多币种 EA 交易(第 22 部分):开始向设置的热插拔过渡

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

如果要自动进行周期性优化,我们需要考虑自动更新交易账户上已经运行的 EA 设置。这样一来,我们就可以在策略测试器中运行 EA,并在单次运行中更改其设置。
preview
交易中的神经网络:层次化双塔变换器(终篇)

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

我们继续构建 Hidformer 层次化双塔变换器模型,专为分析和预测复杂多变量时间序列而设计。在本文中,我们会把早前就开始的工作推向逻辑结局 — 我们将在真实历史数据上测试模型。
preview
皇冠同花顺优化(RFO)

皇冠同花顺优化(RFO)

最初的皇冠同花顺优化算法提供了一种解决优化问题的新方法,受到扑克牌原则启发,以基于扇区的方式取代了传统的遗传二进制编码算法。RFO 展现出简化的基本原理如何带来高效、且实用的优化方法。文章呈现了一份详细的算法分析和测试结果。
preview
交易中的神经网络:配备概念强化的多智代系统(FinCon)

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

我们邀您探索 FinCon 框架,这是一款基于大语言模型(LLM)的多智代系统。该框架利用概念性词汇强化来提升决策制定和风险管理,能在多种金融任务中有高效表现。
preview
您应当知道的 MQL5 向导技术(第 62 部分):结合 ADX 与 CCI 形态的强化学习 TRPO

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

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

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

我们开始实现 Excel 和 MetaTrader 5 之间的连接,但首先我们需要了解一些关键点。这样,你就不必绞尽脑汁去弄清楚为什么有些东西有效或无效。在您对集成 Python 和 Excel 的前景感到沮丧之前,让我们看看如何(在某种程度上)使用 xlwings 通过 Excel 控制 MetaTrader 5。我们在这里展示的内容将主要集中在教育目标上。但是,不要以为我们只能做这里涵盖的事情。
preview
您应当知道的 MQL5 向导技术(第 63 部分):运用 DeMarker 和包络通道形态

您应当知道的 MQL5 向导技术(第 63 部分):运用 DeMarker 和包络通道形态

DeMarker 振荡器和包络指标是动量和支撑/阻力工具,能够在开发智能系统时配对。因此,我们逐一实证哪些形态能够实用,哪些潜在要回避。我们一如既往地使用由向导汇编的智能系统,伴同在信号类中内置的形态用法函数。
preview
MQL5经济日历交易指南(第九部分):通过动态滚动条与界面优化提升新闻交互体验

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

本文中,我们为MQL5经济日历添加了动态滚动条功能,使用户直观快速浏览新闻事件。确保事件展示界面无卡顿且数据更新高效。并通过测试验证滚动条的响应性与仪表盘的美观度。
preview
MQL5中用于预测与分类评估的重采样技术

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

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

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

在本文中,我们将非常仔细地研究如何解决上一篇文章末尾提出的问题。尝试创建这种类型的模板,以便能够创建数据联合的模板。
preview
博弈论方法在交易算法中的应用

博弈论方法在交易算法中的应用

我们正在基于深度Q网络(DQN)机器学习技术,结合多维因果推理,开发一款自适应、自学习的交易 EA。该 EA 将能够同时成功交易 7 个货币对。不同货币对的智能体之间会相互交换信息。