MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
将人工智能(AI)模型集成到已有的MQL5交易策略中

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

本主题聚焦于将训练好的人工智能(AI)模型(如长短期记忆网络(LSTM)等强化学习模型,或基于机器学习的预测模型)集成到现有的MQL5交易策略中。
preview
价格行为分析工具包开发(第二十部分):外部资金流(4)——相关性路径探索器

价格行为分析工具包开发(第二十部分):外部资金流(4)——相关性路径探索器

作为价格行为分析工具包开发系列的一部分,相关性路径探索器为理解货币对动态提供了一种全新方法。该工具可自动收集和分析数据,深入分析诸如欧元兑美元(EUR/USD)和英镑兑美元(GBP/USD)等货币对之间的相互作用。借助其实用、实时的信息,增强你的交易策略,助您更有效地管理风险并发现机会。
preview
市场模拟(第七部分):套接字(一)

市场模拟(第七部分):套接字(一)

套接字,你知道它们在 MetaTrader 5 中的用途或使用方法吗?如果答案是否定的,那么让我们从研究它们开始。在今天的文章中,我们将介绍一些基础知识。由于有几种方法可以做同样的事情,而且我们总是对结果感兴趣,我想证明确实有一种简单的方法可以将数据从 MetaTrader 5 传输到其他程序,如 Excel。然而,主要目的不是将数据从 MetaTrader 5 传输到 Excel,而是相反,即将数据从 Excel 或任何其他程序传输到 MetaTrader 5。
preview
风险管理(第二部分):在图形界面中实现手数计算

风险管理(第二部分):在图形界面中实现手数计算

在本文中,我们将探讨如何使用强大的 MQL5 图形控件库来改进和更有效地应用上一篇文章中提出的概念。我们将逐步完成创建一个功能齐全的图形用户界面。我将解释它背后的想法,以及所使用的每种方法的目的和操作。此外,在本文的最后,我们将测试我们创建的面板,以确保它正确运行并实现其既定目标。
preview
交易中的神经网络:具有层化记忆的智代(终篇)

交易中的神经网络:具有层化记忆的智代(终篇)

我们继续致力于创建 FinMem 框架,其采用层化记忆方式,即模拟人类认知过程。这令该模型不仅能有效处理复杂的财务数据,还能适应新信号,显著提升了在动态变化市场中投资决策的准确性和有效性。
preview
交易中的神经网络:具有层化记忆的智代

交易中的神经网络:具有层化记忆的智代

模仿人类认知过程的层化记忆方式令复杂金融数据的处理、以及适配新信号成为可能,因此在动态市场中提升投资决策的有效性。
preview
解密开盘区间突破(ORB)日内交易策略

解密开盘区间突破(ORB)日内交易策略

开盘区间突破(ORB)策略基于这样一种理念:市场开盘后不久确立的初始交易区间,反映了买卖双方就价格价值达成共识的重要水平。通过识别突破某一特定区间上方或下方的走势,交易者可以把握随之而来的市场契机——当市场方向愈发明朗时,这种契机往往会进一步显现。本文将探讨三种源自康克瑞图姆集团(Concretum Group)改良的ORB策略。
preview
创建动态多货币对EA(第二部分):投资组合多元化与优化

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

投资组合多元化与优化旨在将投资有策略地分散配置于多种资产之上,在最小化风险的同时,依据风险调整后的绩效指标挑选出最理想的资产组合,从而实现回报最大化。
preview
从基础到中级:模板和类型名称 (五)

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

在本文中,我们将探讨模板的最后一个简单用例,并讨论在代码中使用 typename 的好处和必要性。虽然这篇文章乍一看可能有点复杂,但为了以后使用模板和 typename,正确理解它很重要。
preview
使用Python和MQL5进行特征工程(第四部分):基于UMAP回归的K线模式识别

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

降维技术被广泛用于提升机器学习模型的性能。让我们来讨论一项被称为“统一流形逼近与投影”的相对较新的技术(UMAP)。这项新技术的开发旨在针对性地克服传统方法在数据中产生伪影和失真的局限性。UMAP是一种强大的降维技术,它能以一种新颖而有效的方式帮助我们将相似的K线进行分组,从而降低在样本外数据上的错误率,并提升我们的交易表现。
preview
市场模拟(第六部分):将信息从 MetaTrader 5 传输到 Excel

市场模拟(第六部分):将信息从 MetaTrader 5 传输到 Excel

许多人,尤其是非程序员,发现在 MetaTrader 5 和其他程序之间传输信息非常困难。其中一个程序就是 Excel。许多人使用 Excel 作为管理和维护风险控制的一种方式。这是一个优秀的程序,易于学习,即使对于那些不是 VBA 程序员的人来说也是如此。在这里,我们将看看如何在 MetaTrader 5 和 Excel 之间建立连接(一种非常简单的方法)。
preview
交易中的神经网络:具有预测编码的混合交易框架(StockFormer)

交易中的神经网络:具有预测编码的混合交易框架(StockFormer)

在本文中,我们将讨论混合交易系统 StockFormer,其结合了预测编码和强化学习(RL)算法。该框架用到 3 个变换器分支,集成了多样化多头注意力(DMH-Attn)机制,改进了原版的注意力模块,采用多头前馈模块,能够捕捉不同子空间中的多元化时间序列形态。
preview
让手动回测变得简单:为MQL5策略测试器构建自定义工具包

让手动回测变得简单:为MQL5策略测试器构建自定义工具包

在本文中,我们设计了一个自定义的MQL5工具包,用于在策略测试器中轻松进行手动回测。我们将解释其设计与实现方案,重点介绍交互式交易控制功能。然后,我们将展示如何使用它来有效地测试交易策略。
preview
市场模拟(第五部分):创建 C_Orders 类(二)

市场模拟(第五部分):创建 C_Orders 类(二)

在本文中,我将解释 Chart Trade 如何与 EA 交易一起处理平仓请求,以关闭用户的所有未平仓头寸。这听起来简单,但你需要知道如何应对一些复杂情况。
preview
探索达瓦斯箱体突破策略中的高级机器学习技术

探索达瓦斯箱体突破策略中的高级机器学习技术

达瓦斯箱体突破策略由尼古拉斯·达瓦斯(Nicolas Darvas)提出,是一种技术交易方法:当股价突破预设的"箱体"区间上沿时,视为潜在买入信号,表明强劲的上升动能。本文将以该策略为例,探讨三种高级机器学习技术的应用。其中包括:利用机器学习模型直接生成交易信号(而非仅过滤交易);采用连续型信号(而非离散型信号);使用基于不同时间框架训练的模型进行交易验证。
preview
MQL5中用于预测与分类评估的重采样技术

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

本文将探讨并实现一种方法:利用单一数据集同时作为训练集和验证集,来评估模型质量。
preview
市场模拟(第四部分):创建 C_Orders 类(一)

市场模拟(第四部分):创建 C_Orders 类(一)

在本文中,我们将开始创建 C_Orders 类,以便能够向交易服务器发送订单。我们将循序渐进地进行,目标是通过消息系统详细说明这一过程的具体实现方式。
preview
交易中的神经网络:配备注意力机制(MASAAT)的智代融汇(终章)

交易中的神经网络:配备注意力机制(MASAAT)的智代融汇(终章)

在上一篇文章中,我们讲述了多智代自适应框架 MASAAT,其用一组智代的融汇在不同数据尺度下对多模态时间序列进行交叉分析。今天我们将继续实现该框架方法的 MQL5 版本,并将这项工作带至逻辑完结。
preview
从新手到专家:支撑与阻力强度指标(SRSI)

从新手到专家:支撑与阻力强度指标(SRSI)

在本文中,我们将分享如何利用MQL5编程来精准定位市场关键价位——区分价格水平中的弱势与强势区域。我们将完整开发一个可用的支撑与阻力强度指标(SRSI)。
preview
MQL5 简介(第 12 部分):构建自定义指标的初学者指南

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

了解如何在 MQL5 中构建自定义指标。采用基于项目的方法。本初学者指南涵盖指标缓冲区、属性和趋势可视化,让您一步一步地学习。
preview
优化中自定义准则的新方法(第一部分):激活函数示例

优化中自定义准则的新方法(第一部分):激活函数示例

本系列文章首篇将探讨自定义准则的数学原理,重点聚焦神经网络中使用的非线性函数、MQL5实现代码,以及目标导向与校正偏移量的应用。
preview
接受者操作特征(ROC)曲线入门

接受者操作特征(ROC)曲线入门

ROC 曲线是用于评估分类器性能的图形工具。尽管 ROC 图形相对简单,但在实践中使用它们时,仍存在一些常见的误解和误区。本文旨在为那些希望理解分类器性能评估的交易者提供一份关于 ROC 图形的入门介绍。
preview
交易中的神经网络:配备注意力机制(MASAAT)的智代融汇

交易中的神经网络:配备注意力机制(MASAAT)的智代融汇

我们概述多智代自适应投资组合优化框架(MASAAT),其结合了注意力机制和时间序列分析。MASAAT 生成一组智代,分析价格序列和方向变化,能够在不同细节层次识别资产价格的明显波动。
preview
辩证搜索(DA)

辩证搜索(DA)

本文介绍了辩证算法(DA),这是一种受辩证法哲学概念启发的新的全局优化方法。该算法利用了人口中独特的划分,将其分为投机思想者和实践思想者。测试表明,在低维问题上,性能令人印象深刻,高达 98%,整体效率为 57.95%。本文解释了这些度量,并详细描述了算法和不同类型函数的实验结果。
preview
血液遗传优化算法(BIO)

血液遗传优化算法(BIO)

我向大家介绍我的新种群优化算法——血液遗传优化算法(Blood Inheritance Optimization,BIO),该算法的灵感源自人类血型遗传系统。在该算法中,每个解都有其自身的“血型”,这一血型决定了其进化方式。正如自然界中,孩子的血型是依据特定规则遗传而来,在BIO算法中,新解通过一套遗传与变异机制来获取自身特性。
preview
用于预测金融时间序列的生物神经元

用于预测金融时间序列的生物神经元

我们将为时间序列预测建立一个生物学上正确的神经元系统。在神经网络架构中引入类似等离子体的环境创造了一种“集体智能”,其中每个神经元不仅通过直接连接,还通过长距离电磁相互作用影响系统的运行。让我们看看神经大脑建模系统在市场上的表现。
preview
使用 Python 创建波动率预测指标

使用 Python 创建波动率预测指标

在本文中,我们将使用二元分类来预测未来的极端波动。此外,我们将利用机器学习开发极端波动预测指标。
preview
在 IBM 量子计算机上分析所有价格变动选项

在 IBM 量子计算机上分析所有价格变动选项

我们将使用 IBM 的量子计算机来发现所有价格变动选项。听起来像科幻小说?欢迎来到用于交易的量子计算世界!
preview
百年数学函数如何革新您的交易策略?

百年数学函数如何革新您的交易策略?

本文聚焦R德马赫(Rademacher)函数与沃尔什(Walsh)函数。探讨如何将这两类诞生于20世纪初的数学工具应用于金融时间序列分析,并揭示其在交易策略中的创新应用场景。
preview
您应当知道的 MQL5 向导技术(第 54 部分):搭配混合 SAC 和张量的强化学习

您应当知道的 MQL5 向导技术(第 54 部分):搭配混合 SAC 和张量的强化学习

软性参与者-评论者是一种强化学习算法,我们曾在之前的系列文章中考察过 Python 和 ONNX,作为高效的网络训练方式。我们重新审视该算法,意在利用张量,即 Python 中常用的计算图形。
preview
圆搜索算法(CSA)

圆搜索算法(CSA)

本文提出一种基于圆几何特性的新型元启发式优化算法——圆搜索算法(CSA)。该算法通过模拟切线方向上的点移动机制,在解空间中实现全局探索与局部开发的协同优化。
preview
在MQL5中创建交易管理面板(第九部分):代码组织(5):分析面板(AnalyticsPanel)类

在MQL5中创建交易管理面板(第九部分):代码组织(5):分析面板(AnalyticsPanel)类

在本文中,我们将探讨如何获取实时市场数据和交易账户信息,执行各种计算,并将结果展示在自定义面板上。为此,我们将深入开发一个分析面板(AnalyticsPanel)类,该类封装了所有这些功能,包括面板创建功能。这项工作是我们正在进行的新建管理面板智能交易系统(EA)扩展工作的一部分,旨在运用模块化设计原则和代码组织的最佳实践来引入高级功能。
preview
JSON 从入门到精通: 创建自己的 MQL5 版本 JSON 解读器

JSON 从入门到精通: 创建自己的 MQL5 版本 JSON 解读器

体验分步指南,创建自定义的 MQL5 版本 JSON 解析器,囊括对象和数组处理、错误检查、及序列化。通过这款灵活的解决方案,在 MetaTrader 5 中处理 JSON,获取桥接交易逻辑与结构化数据的实用见解。
preview
将您自己的 LLM 集成到 EA 中(第 5 部分):使用 LLM 开发和测试交易策略(四) —— 测试交易策略

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

随着当今人工智能的快速发展,语言模型(LLMs)是人工智能的重要组成部分,因此我们应该考虑如何将强大的 LLMs 整合到我们的算法交易中。对于大多数人来说,很难根据他们的需求微调这些强大的模型,在本地部署它们,然后将它们应用于算法交易。本系列文章将采取循序渐进的方法来实现这一目标。
preview
MQL5自动化交易策略(第十四部分):基于MACD-RSI统计方法的交易分层策略

MQL5自动化交易策略(第十四部分):基于MACD-RSI统计方法的交易分层策略

本文将介绍一种结合MACD和RSI指标与统计方法的交易分层策略,通过MQL5实现动态自动化交易。我们将探讨这种级联式策略的架构设计,通过关键代码段详解其实现方式,并指导读者如何进行回测以优化策略表现。最后,我们将总结该策略的潜力,并为自动化交易的进一步优化奠定基础。
preview
在 MQL5 中创建交易管理面板(第九部分):代码组织(三):通信模块

在 MQL5 中创建交易管理面板(第九部分):代码组织(三):通信模块

欢迎参与本次深度讨论,我们将揭示 MQL5 界面设计的最新进展,着重介绍重新设计的通信面板,并继续我们关于使用模块化原则构建新管理面板的系列文章。我们将逐步开发 CommunicationsDialog 类,并详细解释如何从 Dialog 类进行继承。此外,在我们的开发过程中,还将利用数组(arrays)和 ListView 类。获取可行的方案,以提升您的 MQL5 开发技能——请阅读本文,并在评论区加入讨论!
preview
从基础到中级:模板和类型名称(四)

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

在本文中,我们将非常仔细地研究如何解决上一篇文章末尾提出的问题。尝试创建这种类型的模板,以便能够创建数据联合的模板。
preview
MQL5 交易工具包(第 7 部分):使用最近取消的挂单函数扩展历史管理 EX5 库

MQL5 交易工具包(第 7 部分):使用最近取消的挂单函数扩展历史管理 EX5 库

了解如何完成历史管理 EX5 库中最终模块的创建,重点关注负责处理最近取消的挂单的函数。这将为您提供使用 MQL5 有效检索和存储与已取消挂单相关的关键详细信息的工具。
preview
从基础到中级:模板和类型名称(三)

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

在本文中,我们将讨论该主题的第一部分,这对初学者来说并不容易理解。为了避免更加困惑并正确解释这个话题,我们将把解释分为几个阶段。我们将把这篇文章用于第一阶段。然而,尽管在本文末尾,我们似乎已经陷入僵局,但事实上,我们将朝着另一种情况迈出一步,这将在下一篇文章中得到更好的理解。
preview
通过配对交易中的均值回归进行统计套利:用数学战胜市场

通过配对交易中的均值回归进行统计套利:用数学战胜市场

本文描述了投资组合层面的统计套利基础知识。其目标是帮助没有深厚数学知识的读者理解统计套利的原则,并提出一个概念性的起点框架。文章包含一个可运行的智能交易系统(EA)、一些关于其一年回测的笔记,以及用于复现实验的相应回测配置设置(.ini 文件)。