MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
可视化交易图表(第二部分):数据图形化展示

可视化交易图表(第二部分):数据图形化展示

接下来,我们将从头开始编写一个脚本,以简化交易订单截图的加载过程,便于分析交易入场点。所有关于单个交易的必要信息都将方便地显示在一个图表上,并且该图表具备绘制不同时间框架的能力。
preview
MQL5自优化智能交易系统(第九部分):双移动平均线交叉

MQL5自优化智能交易系统(第九部分):双移动平均线交叉

本文将介绍双移动平均线交叉策略的设计思路:利用更高的时间框架(日线D1)的信号指导更低的时间框架(15分钟M15)的入场,并通过中间风险周期(4小时H4)计算止损位。本文将讲解系统常量、自定义枚举,以及趋势跟踪和均值回归模式的逻辑,同时强调代码模块化与未来遗传算法优化的扩展性。该方法支持灵活的入场/出场条件,通过让较低的时间框架入场与较高的时间框架趋势保持一致,减少信号滞后、优化交易时机。
preview
让新闻交易轻松上手(第五部分):执行交易(2)

让新闻交易轻松上手(第五部分):执行交易(2)

本文将扩展交易管理类,以包含用于交易新闻事件的买入止损(buy-stop)和卖出止损(sell-stop)订单,并为这些订单添加过期时间限制,以防止隔夜交易。在EA中嵌入一个滑点函数,以尝试防止或最小化在交易中使用止损订单时可能发生的滑点,特别是在新闻事件期间。
preview
DoEasy. 控件 (第 20 部分): SplitContainer WinForms 对象

DoEasy. 控件 (第 20 部分): SplitContainer WinForms 对象

在本文中,我将启动开发模拟 MS Visual Studio工具包的 SplitContainer 控件。 此控件由两个垂直或水平可移动隔板分开的面板组成。
preview
您应当知道的 MQL5 向导技术(第 11 部分):数字墙

您应当知道的 MQL5 向导技术(第 11 部分):数字墙

数字墙(Number Walls)是线性回移寄存器的一种变体,其通过检查收敛性来预筛选序列来达到可预测性。我们看看这些思路如何运用在 MQL5。
preview
算术优化算法(AOA):从AOA到SOA(简单优化算法)

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

在本文中,我们介绍了基于简单算术运算(加法、减法、乘法和除法)的算术优化算法(AOA)。这些基本的数学运算是为各种问题寻找最优解的基础。
preview
交易中的神经网络:多智代自适应模型(MASA)

交易中的神经网络:多智代自适应模型(MASA)

我邀您领略多智代自适应(MASA)框架,其结合了强化学习和自适应策略,在动荡市场条件下提供盈利能力、及风险管理之间的和谐均衡。
preview
在 MQL5 中创建每日回撤限制器 EA

在 MQL5 中创建每日回撤限制器 EA

本文从详细的角度讨论了如何基于交易算法实现 EA 交易系统的创建。这有助于在 MQL5 中实现系统自动化,并控制每日回撤。
preview
价格行为分析工具包开发系列(第4部分):分析预测型EA

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

我们不再局限于仅在图表上查看分析后的指标,而是将视野拓展至更广阔的范畴,其中包括与Telegram的集成。这一增强功能使得重要结果能够通过Telegram应用程序直接发送至您的移动设备。请随我们一同在本篇文章中探索这一过程。
preview
神经网络变得简单(第 85 部分):多变元时间序列预测

神经网络变得简单(第 85 部分):多变元时间序列预测

在本文中,我愿向您介绍一种新的复杂时间序列预测方法,它和谐地结合了线性模型和转换器的优点。
preview
美元和欧元指数图表 — MetaTrader 5 服务示例

美元和欧元指数图表 — MetaTrader 5 服务示例

我们将以 MetaTrader 5 服务为例,探讨创建和更新美元指数 (USDX) 和欧元指数 (EURX) 图表。启动服务时,我们将检查所需合成工具的存在,必要时创建它,并将其放置在市场观察窗口中。随后将创建合成工具的分钟和分时报价历史记录,然后创建所创建工具的图表。
preview
如何使用 Controls 类创建交互式 MQL5 仪表盘/面板(第 2 部分):添加按钮响应。

如何使用 Controls 类创建交互式 MQL5 仪表盘/面板(第 2 部分):添加按钮响应。

在本文中,我们将聚焦于实现按钮的响应,把静态的 MQL5 面板转变为一个交互式工具。我们将探讨如何自动化 GUI 组件的功能,确保它们能够恰当地响应用户的点击操作。最终,我们将建立一个动态界面,提升交互性和交易体验。
preview
您应当知道的 MQL5 向导技术(第 44 部分):平均真实范围(ATR)技术指标

您应当知道的 MQL5 向导技术(第 44 部分):平均真实范围(ATR)技术指标

ATR 振荡指标是一款非常流行的指标,权当波动率代表,尤其是在交易量数据稀缺的外汇市场当中。我们以形态为基础来验证这一点,就如我们对先前指标所做那样,并分享策略和测试报告,致谢 MQL5 向导库的类和汇编。
preview
从新手到专家:自动几何分析系统

从新手到专家:自动几何分析系统

几何形态为交易者提供了一种简洁的方式来解读价格走势。许多分析师手工绘制趋势线、矩形和其他形状,然后根据他们看到的形态做出交易决策。在本文中,我们探索了一种自动化的替代方案:利用 MQL5 来检测和分析最流行的几何形态。我们将分解方法论,讨论实现细节,并强调自动形态识别如何提高交易者的市场洞察力。
preview
人工喷淋算法(ASHA)

人工喷淋算法(ASHA)

本文介绍了人工喷淋算法(Artificial Showering Algorithm,ASHA),这是一种为解决一般优化问题而开发的新型元启发式方法。基于对水流和积聚过程的模拟,该算法构建了理想场的概念,其中要求每个资源单元(水)找到最优解。我们将了解 ASHA 如何调整流和累积原则来有效地分配搜索空间中的资源,并查看其实现和测试结果。
preview
基于时间、价格和成交量创建 3D 柱状图引入波动率测量

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

本文探讨了多元三维价格图表及其创建方法。我们还将探讨 3D 柱状图如何预测价格反转,以及 Python 和 MetaTrader 5 如何让我们实时绘制这些成交量柱状图。
preview
大爆炸-大坍缩(BBBC)算法

大爆炸-大坍缩(BBBC)算法

本文介绍了大爆炸-大坍缩方法,该方法包含两个关键阶段:随机点的循环生成,以及将这些点压缩至最优解。该方法结合了探索与精炼过程,使我们能够逐步找到更优的解,并开拓新的优化可能性。
preview
人工蜂巢算法(ABHA):测试与结果

人工蜂巢算法(ABHA):测试与结果

在本文中,我们将继续深入探索人工蜂巢算法(ABHA),通过深入研究代码并探讨其余的方法。正如您可能还记得的那样,模型中的每只蜜蜂都被表示为一个独立的智能体,其行为取决于内部和外部信息以及动机状态。我们将在各种函数上测试该算法,并通过在评分表中呈现结果来总结测试效果。
preview
创建 MQL5-Telegram 集成 EA 交易 (第 3 部分):将带有标题的图表截图从 MQL5 发送到 Telegram

创建 MQL5-Telegram 集成 EA 交易 (第 3 部分):将带有标题的图表截图从 MQL5 发送到 Telegram

在本文中,我们创建一个 MQL5 EA 交易,将图表截图编码为图像数据并通过 HTTP 请求将其发送到 Telegram 聊天。通过集成图片编码和传输,我们直接在 Telegram 内通过可视化交易洞察增强了现有的 MQL5-Telegram 系统。
preview
创建 MQL5-Telegram 集成 EA 交易(第 6 部分):添加响应式内联按钮

创建 MQL5-Telegram 集成 EA 交易(第 6 部分):添加响应式内联按钮

在本文中,我们将交互式内联按钮集成到 MQL5 EA 交易中,允许通过 Telegram 进行实时控制。每次按下按钮都会触发特定的操作,并将响应发送回用户。我们还模块化了函数,以便有效地处理 Telegram 消息和回调查询。
preview
MQL5 交易工具包(第 4 部分):开发历史管理 EX5 库

MQL5 交易工具包(第 4 部分):开发历史管理 EX5 库

通过详细的分步方法创建扩展的历史管理 EX5 库,学习如何使用 MQL5 检索、处理、分类、排序、分析和管理已平仓头寸、订单和交易历史。
preview
开发回放系统 — 市场模拟(第 17 部分):跳价和更多跳价(I)

开发回放系统 — 市场模拟(第 17 部分):跳价和更多跳价(I)

于此,我们将见识到如何实现一些非常有趣的东西,但同时也会因某些可能十分令人困惑的关键点而极其困难。可能发生的最糟糕的事情是,一些自诩专业人士的交易者却对这些概念在资本市场中的重要性一无所知。好吧,尽管我们在这里专注于编程,但理解市场交易中涉及的一些问题,对于我们将要实现的内容至关重要。
preview
构建一个用于实现带约束条件的自定义最大值的通用优化公式(GOF)

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

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

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

在本文的第一部分中,我们将深入化学反应的世界并发现一种新的优化方法!化学反应优化 (CRO,Chemical reaction optimization) 利用热力学定律得出的原理来实现有效的结果。我们将揭示分解、合成和其他化学过程的秘密,这些秘密成为了这种创新方法的基础。
preview
重构经典策略(第七部分):基于USDJPY的外汇市场与主权债务分析

重构经典策略(第七部分):基于USDJPY的外汇市场与主权债务分析

在今天的文章中,我们将分析汇率走势与政府债券之间的关系。债券是固定收益证券中最受欢迎的形式之一,将成为我们讨论的重点。加入我们,一起探索是否可以利用人工智能技术改进一种经典策略。
preview
使用Python和MQL5进行特征工程(第四部分):基于UMAP回归的K线模式识别

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

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

开发回放系统 — 市场模拟(第 19 部分):必要的调整

在此,我们要做好准备,如此当我们需要往代码里添加新函数时,就能顺滑轻松地发生。当前代码还不能涵盖或处理那些显著推进过程所必需的事情。我们需要将所有东西都结构化,以便能够以最小的工作量实现某些事情。如果我们正确地做好所有事情,我们就能得到一个真正通用的系统,可以轻松地适应任何需要处理的状况。
preview
MQL5 中的组合对称交叉验证

MQL5 中的组合对称交叉验证

在本文中,我们介绍使用纯 MQL5 语言实现组合对称交叉验证的情况,以衡量使用策略测试器的慢速完全算法优化策略后可能出现的过拟合程度。
preview
您应当知道的 MQL5 向导技术(第 53 部分):市场促进指数

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

市场促进指数是比尔·威廉姆斯(Bill Williams)的另一个指标,旨在衡量价格走势与成交量联动的效率。一如既往,我们将在由向导汇编信号类的范畴内分析该指标的各种形态,并为各种形态呈现多种测试报告和分析。
DoEasy 函数库中的图形(第九十四部分):移动和删除复合图形对象
DoEasy 函数库中的图形(第九十四部分):移动和删除复合图形对象

DoEasy 函数库中的图形(第九十四部分):移动和删除复合图形对象

在本文中,我将启动开发各种复合图形对象事件。 我们还将部分研究移动和删除复合图形对象。 实际上,在此,我还会把前一篇文章中实现的东西进行微调。
preview
为 MetaTrader 5 开发一款 MQTT 客户端:TDD 方式 - 第2部分

为 MetaTrader 5 开发一款 MQTT 客户端:TDD 方式 - 第2部分

本文是描述 MQTT 协议的本机MQL5客户端开发步骤系列文章的一部分。在这一部分中,我们将描述我们的代码组织、第一个头文件和类,以及我们如何编写测试。本文还包括关于测试驱动开发实践以及我们如何将其应用于该项目的简要说明。
preview
您应当知道的 MQL5 向导技术(第 16 部分):配合本征向量进行主成分分析

您应当知道的 MQL5 向导技术(第 16 部分):配合本征向量进行主成分分析

本文所见的主成分分析,是数据分析中的一种降维技术,文中还有如何配合本征值和向量来实现它。一如既往,我们瞄向的是开发一个可在 MQL5 向导中使用的原型专业信号类。
preview
您应当知道的 MQL5 向导技术(第 40 部分):抛物线止损和反转(PSAR)

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

抛物线止损和反转(PSAR) 是趋势确认、和趋势终结点的指标。因为它在识别趋势方面滞后,所以它的主要目的是为持仓定位尾随止损。然而,我们要探索它是否真的可以当作智能系统的交易信号,这要归功于由向导汇编智能系统的自定义信号类。
preview
神经网络变得简单(第 73 部分):价格走势预测 AutoBot

神经网络变得简单(第 73 部分):价格走势预测 AutoBot

我们将继续讨论训练轨迹预测模型的算法。在本文中,我们将领略一种称为 “AutoBots” 的方法。
preview
数据科学与机器学习(第 15 部分):SVM,每个交易员工具箱中的必备工具

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

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

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

在三维K线上探索自动化交易的新世界。基于多维价格K线的交易机器人是什么样的?三维K线中的“黄色”簇群能否预测趋势反转?多维交易是什么样的?
preview
基于Python与MQL5的多模块交易机器人(第一部分):构建基础架构与首个模块

基于Python与MQL5的多模块交易机器人(第一部分):构建基础架构与首个模块

我们将开发一个模块化交易系统,该系统结合了 Python 进行数据分析,并使用 MQL5 执行交易。四个独立模块并行监控市场的不同方面:成交量、套利、经济指标和风险,并使用包含400棵树的随机森林( RandomForest )。特别强调风险管理,因为即使是最先进的交易算法,如果没有适当的风险管理,也是毫无用处的。
preview
构建蜡烛图趋势约束模型(第7部分):为EA开发优化我们的模型

构建蜡烛图趋势约束模型(第7部分):为EA开发优化我们的模型

在本文中,我们将详细探讨为开发专家顾问(EA)所准备的指标的相关内容。我们不仅会讨论如何对当前版本的指标进行进一步改进,以提升其准确性和功能,还会引入全新的功能来标记退出点,以弥补之前版本仅具备识别入场点功能的不足。
preview
DoEasy. 控件 (第 28 部分): 进度条控件中的柱线样式

DoEasy. 控件 (第 28 部分): 进度条控件中的柱线样式

在本文中,我将开发进度条控件的柱线显示样式和说明文本。
preview
JSON 从入门到精通: 创建自己的 MQL5 版本 JSON 解读器

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

体验分步指南,创建自定义的 MQL5 版本 JSON 解析器,囊括对象和数组处理、错误检查、及序列化。通过这款灵活的解决方案,在 MetaTrader 5 中处理 JSON,获取桥接交易逻辑与结构化数据的实用见解。