MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview

交易中的神经网络:场景感知物体检测(HyperDet3D)

我们邀请您来领略一种利用超网络检测物体的新方式。超网络针对主模型生成权重,允许参考具体的当前市场形势。这种方式令我们能够通过令模型适配不同的交易条件来提升预测准确性。
preview

创建一个基于日波动区间突破策略的 MQL5 EA

在本文中,我们将创建一个基于日波动区间突破策略的 MQL5 EA。我们阐述该策略的关键概念,设计EA框架蓝图,并在 MQL5 语言中实现突破策略逻辑。最后,我们将探讨用于回测和优化EA的技术,以最大限度地提高其有效性。
preview

让新闻交易轻松上手(第4部分):性能增强

本文将深入探讨改进EA在策略测试器中运行时间的方法,通过编写代码将新闻事件时间按小时分类。在指定的小时段内将访问这些新闻事件。这样确保了EA能够在高波动性和低波动性环境中高效管理事件驱动的交易。
preview

开发回放系统(第 64 部分):玩转服务(五)

在本文中,我们将介绍如何修复代码中的两个错误。然而,我将尝试以一种有助于初学者程序员理解事情并不总是如你所愿的方式解释它们。无论如何,这是一个学习的机会。此处提供的内容仅用于教育目的。本应用程序不应被视为最终文件,其目的除了探讨所提出的概念之外,不应有任何其它用途。
preview

开发回放系统(第 63 部分):玩转服务(四)

在本文中,我们将最终解决一分钟柱形上的分时报价模拟问题,以便它们能够与真实分时报价共存。这将帮助我们避免将来出现问题。此处提供的材料仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview

在MQL5中创建交易管理员面板(第四部分):登录安全层

想象一下,一个恶意入侵者潜入了交易管理员房间,获取了用于向全球数百万交易者传递有价值信息的计算机和管理员面板的访问权限。这种入侵可能导致灾难性后果,例如未经授权发送误导性信息或随意点击按钮触发意外操作。在本次讨论中,我们将探究MQL5中的安全措施以及在管理员面板中实施的新安全功能,以防范这些威胁。通过增强安全协议,我们旨在保护通信渠道并维护全球交易社区的可信度。在本文的讨论中了解更多见解。
preview

创建 MQL5-Telegram 集成 EA 交易(第 5 部分):从 Telegram 向 MQL5 发送命令并接收实时响应

在本文中,我们创建了几个类来促进 MQL5 和 Telegram 之间的实时通信。我们专注于从 Telegram 获取命令,解码和解释它们,并发送适当的响应。最后,我们确保这些交互在交易环境中得到有效测试和运行。
preview

重构经典策略(第十部分):人工智能(AI)能否为MACD提供动力?

加入我们的行列,我们将实证分析MACD指标,以测试将AI应用于包含该指标的策略是否会在预测欧元兑美元(EURUSD)方面提高准确性。我们同时评估该指标本身是否比价格更容易预测,以及该指标的值是否能预测未来的价格水平。我们将为您提供所需的信息,以决定是否应该考虑将MACD整合到您的AI交易策略中。
preview

您应当知道的 MQL5 向导技术(第 38 部分):布林带

布林带是一种非常常见的轨道线指标,许多交易者用它来手工下单和平仓。我们,通过考察尽可能多的由它生成的不同信号,来验证该指标,并看看如何在向导汇编的智能系统中运用它们。
preview

如何使用MQL5的控件类创建交互式仪表板/面板(第一部分):设置面板

在本文中,我们将使用MQL5的控件类创建一个交互式交易仪表板,旨在简化交易操作。该面板包含标题、用于交易、平仓和信息的导航按钮,以及用于执行交易和管理仓位的专用操作按钮。到文章结束时,你将拥有一个基础面板,为未来的扩展做好准备。
preview

交易中的神经网络:点云变换器(Pointformer)

在本文中,我们将说道有关使用注意力方法解决点云中物体检测问题的算法。点云中的物体检测对于很多现世应用都很重要。
preview

交易中的神经网络:点云的层次化特征学习

我们继续研究从点云提取特征的算法。在本文中,我们将领略提升 PointNet 方法效率的机制。
preview
Connexus中的正文(第四部分):添加HTTP请求正文

Connexus中的正文(第四部分):添加HTTP请求正文

在本文中,我们探讨了HTTP请求中的正文概念,这对于发送诸如JSON和纯文本之类的数据至关重要。我们讨论并解释了如何正确地使用正文,并结合适当的头部信息。此外,我们还介绍了Connexus库中的ChttpBody类,它将简化对请求正文的处理。
preview
基于人工生态系统的优化(AEO)算法

基于人工生态系统的优化(AEO)算法

本文探讨了一种元启发式算法——基于人工生态系统的优化(Artificial Ecosystem-based Optimization, AEO)算法。该算法通过生成初始解种群并应用自适应更新策略,模拟生态系统各组成部分之间的相互作用。文中详细阐述了AEO算法的运行阶段,包括消耗阶段与分解阶段,以及不同智能体的行为策略。文章还介绍了该算法的特点和优势。
preview
开发基于订单簿的交易系统(第一部分):指标

开发基于订单簿的交易系统(第一部分):指标

市场深度无疑是执行快速交易的一个非常重要的因素,特别是在高频交易(HFT)算法中。在本系列文章中,我们将探讨这种类型的交易事件,这些事件可以通过经纪商在许多可交易的交易品种上获得。我们将从一个指标开始,您可以在其中自定义直接显示在图表上的直方图的调色板、位置和大小。我们还将研究如何生成 BookEvent 事件,以在特定条件下测试指标。未来文章的其他可能主题包括如何存储价格分布数据以及如何在策略测试器中使用它。
preview
您应当知道的 MQL5 向导技术(第 37 部分):配以线性和 Matérn 内核的高斯过程回归

您应当知道的 MQL5 向导技术(第 37 部分):配以线性和 Matérn 内核的高斯过程回归

线性内核是机器学习中,针对线性回归和支持向量机所用的同类中最简单的矩阵。另一方面,Matérn 内核是我们在之前的文章中讲述的径向基函数的更普遍版本,它擅长映射不如 RBF 假设那样平滑的函数。我们构建了一个自定义信号类,即利用两个内核来预测做多和做空条件。
preview
非洲水牛优化(ABO)

非洲水牛优化(ABO)

本文介绍了非洲水牛优化(ABO)算法,这是一种于2015年开发的元启发式方法,基于这些动物的独特行为。文章详细描述了算法实现的各个阶段及其在解决复杂问题时的效率,这使得它成为优化领域中一个有价值的工具。
preview
在MQL5中创建交易管理员面板(第三部分):扩展内置类以进行主题管理(II)

在MQL5中创建交易管理员面板(第三部分):扩展内置类以进行主题管理(II)

在本文的讨论中,我们将逐步扩展现有的对话框库,以纳入主题管理逻辑。此外,我们将把主题切换方法整合到管理员面板项目中使用的 CDialog、CEdit 和 CButton 类中。继续阅读,获取更多深入的了解。
preview
从基础到中级:Include 指令

从基础到中级:Include 指令

在今天的文章中,我们将讨论一个在 MQL5 中可以找到的各种代码中广泛使用的编译指令。虽然这里对这个指令的解释相当肤浅,但重要的是你要开始了解如何使用它,因为随着你进入更高层次的编程,它很快就会变得不可或缺。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview
Connexus的头(第三部分):掌握HTTP请求头的使用方法

Connexus的头(第三部分):掌握HTTP请求头的使用方法

我们继续开发Connexus库。在本章中,我们探讨HTTP协议中请求头的概念,解释它们是什么、它们的用途以及如何在请求中使用它们。我们将涵盖用于与API通信的主要头信息,并展示了如何在库中配置它们的实例。
preview
交易中的神经网络:点云分析(PointNet)

交易中的神经网络:点云分析(PointNet)

直接分析点云避免了不必要的数据增长,并改进了模型在分类和任务分段时的性能。如此方式对于原始数据中的扰动展现出高性能和稳健性。
preview
MQL5 简介(第 9 部分):理解和使用 MQL5 中的对象

MQL5 简介(第 9 部分):理解和使用 MQL5 中的对象

学习使用当前和历史数据在 MQL5 中创建和自定义图表对象。本基于项目的指南可帮助您可视化交易并实际应用 MQL5 概念,从而更容易构建适合您交易需求的工具。
preview
重构经典策略(第九部分):多时间框架分析(第二部分)

重构经典策略(第九部分):多时间框架分析(第二部分)

在今天的讨论中,我们探讨了多时间框架分析的策略,以确定我们的人工智能(AI)模型在哪个时间框架上表现最优。分析结果表明,在欧元兑美元(EURUSD)货币对上,月度和小时时间框架生成的模型具有相对较低的误差率。我们利用这一优势,开发了一个交易算法,该算法在月度时间框架上进行人工智能预测,并在小时时间框架上执行交易。
preview
基于MQL5和Python的自优化EA(第五部分):深度马尔可夫模型

基于MQL5和Python的自优化EA(第五部分):深度马尔可夫模型

在本次讨论中,我们将把一个简单的马尔可夫链应用于相对强弱指标(RSI),以观察指标穿过关键水平后的价格行为。我们得出结论,当RSI处于11-20区间时,会产生最强的买入信号;而当RSI处于71-80区间时,会产生最强的卖出信号,这在新西兰元兑日元(NZDJPY)货币对上表现得尤为明显。我们将展示如何通过对数据的处理和分析,直接从您所拥有的数据中构建出最优的交易策略。此外,我们还将展示如何训练一个深度神经网络,使其能够最优地利用转移矩阵。
preview
大气云模型优化(ACMO):实战

大气云模型优化(ACMO):实战

在本文中,我们将继续深入研究大气云模型优化(ACMO)算法的实现。特别是,我们将讨论两个关键方面:云向低压区域的移动以及降雨模拟,包括液滴的初始化及其在云中的分布。我们还将研究其他在管理云的状态以及确保它们与环境相互作用方面发挥重要作用的方法。
preview
创建 MQL5-Telegram 集成 EA 交易(第 4 部分):模块化代码函数以增强可重用性

创建 MQL5-Telegram 集成 EA 交易(第 4 部分):模块化代码函数以增强可重用性

在本文中,我们将现有的用于从 MQL5 向 Telegram 发送消息和截图的代码重构为可重复使用的模块化函数。这将简化流程,实现跨多个实例的更高效执行和更轻松的代码管理。
preview
您应当知道的 MQL5 向导技术(第 36 部分):依据马尔可夫(Markov)链的 Q-学习

您应当知道的 MQL5 向导技术(第 36 部分):依据马尔可夫(Markov)链的 Q-学习

强化学习是机器学习的三大信条之一,并肩两个是监督学习和无监督学习。因此,它在意的是最优控制,或学习最适合目标函数的最佳长期政策。正是在这种背衬下,我们探索其向一款由向导组装的智能系统中 MLP 中通知学习过程的可能作用。
preview
交易中的神经网络:层次化向量变换器(终章)

交易中的神经网络:层次化向量变换器(终章)

我们继续研究层次化向量变换器方法。在本文中,我们将完成模型的构造。我们还会在真实历史数据上对其进行训练和测试。
preview
美元和欧元指数图表 — MetaTrader 5 服务示例

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

我们将以 MetaTrader 5 服务为例,探讨创建和更新美元指数 (USDX) 和欧元指数 (EURX) 图表。启动服务时,我们将检查所需合成工具的存在,必要时创建它,并将其放置在市场观察窗口中。随后将创建合成工具的分钟和分时报价历史记录,然后创建所创建工具的图表。
preview
在任何市场中获得优势(第五部分):联邦储备经济数据库(FRED)欧元兑美元( EURUSD)可替代数据

在任何市场中获得优势(第五部分):联邦储备经济数据库(FRED)欧元兑美元( EURUSD)可替代数据

在今天的讨论中,我们使用了圣路易斯联邦储备银行(St. Louis Federal Reserve)提供的关于广义美元指数以及其他一系列宏观经济指标的可替代日数据,来预测欧元兑美元(EURUSD)未来的汇率。遗憾的是,尽管数据似乎具有近乎完美的相关性,但我们在模型准确性方面未能实现任何实质性提升,这可能暗示投资者最好采用常规的市场价格数据。
preview
从基础到中级:BREAK 和 CONTINUE 语句

从基础到中级:BREAK 和 CONTINUE 语句

在本文中,我们将学习如何在循环中使用 RETURN、BREAK 和 CONTINUE 语句。了解每个语句在循环执行流程中的作用对于处理更复杂的应用程序非常重要。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
preview
您应当知道的 MQL5 向导技术(第 35 部分):支持向量回归

您应当知道的 MQL5 向导技术(第 35 部分):支持向量回归

支持向量回归是一种理想主义的途径,寻找最能描述两组数据之间关系的函数或“超平面”。我们尝试在 MQL5 向导的自定义类内利用这一点来进行时间序列预测。
preview
一个基于新指标和条件长短期记忆网络(LSTM)的实例

一个基于新指标和条件长短期记忆网络(LSTM)的实例

本文探讨了一种用于自动化交易的EA的开发,该EA结合了技术分析和深度学习预测。
preview
神经网络实践:第一个神经元

神经网络实践:第一个神经元

在本文中,我们将开始构建一些简单而不起眼的东西:神经元。我们将使用非常少量的 MQL5 代码对其进行编程。神经元在我的测试中表现良好。让我们回到这一系列关于神经网络的文章中,了解一下我在说什么。
preview
使用Python和MQL5进行多交易品种分析(第一部分):纳斯达克集成电路制造商

使用Python和MQL5进行多交易品种分析(第一部分):纳斯达克集成电路制造商

加入我们的讨论,了解如何利用人工智能(AI)优化您的仓位规模和订单数量,以最大化您的投资组合回报。我们将展示如何通过算法识别一个最优的投资组合,并根据您的回报预期或风险承受能力来调整投资组合。在本次讨论中,我们将使用SciPy库和MQL5语言,利用所拥有的全部数据创建一个最优且多样化的投资组合。
preview
交易中的神经网络:层次化向量变换器(HiVT)

交易中的神经网络:层次化向量变换器(HiVT)

我们邀请您来领略层次化矢量转换器(HiVT)方法,其专为快速、准确地预测多模态时间序列而开发。
preview
HTTP和Connexus(第2部分):理解HTTP架构和库设计

HTTP和Connexus(第2部分):理解HTTP架构和库设计

本文探讨了HTTP协议的基础知识,涵盖了主要方法(GET、POST、PUT、DELETE)、状态码以及URL的结构。此外,还介绍了Conexus库的构建起点,以及CQueryParam和CURL类,这些类用于在HTTP请求中操作URL和查询参数。
preview
基于MQL5的订单剥头皮交易系统

基于MQL5的订单剥头皮交易系统

这款MetaTrader 5 EA实现了基于订单流的剥头皮交易策略,并配备了高级风险管理功能。它使用多种技术指标,通过订单的不平衡性来识别交易机会。回测结果显示该策略具有潜在的盈利能力,但同时也突显了需要进一步优化的必要性,尤其是在风险管理和交易结果比率方面。该策略适合经验丰富的交易者,但在实际部署之前,需要进行彻底的测试和深入理解。
preview
掌握 MQL5:从入门到精通(第五部分):基本控制流操作符

掌握 MQL5:从入门到精通(第五部分):基本控制流操作符

本文探讨了用于修改程序执行流程的关键操作符:条件语句、循环和 switch 语句。利用这些操作符将使我们创建的函数表现得更加“智能”。
preview
重构MQL5中的经典策略(第三部分):富时100指数预测

重构MQL5中的经典策略(第三部分):富时100指数预测

在本系列文章中,我们将重新审视一些知名的交易策略,以探究是否可以利用AI来改进这些策略。在今天的文章中,我们将研究富时100指数,并尝试使用构成该指数的部分个股来预测该指数。