MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
开发回放系统(第 40 部分):启动第二阶段(一)

开发回放系统(第 40 部分):启动第二阶段(一)

今天我们将讨论回放/模拟器系统的新阶段。在这个阶段,谈话才会变得真正有趣,内容也相当丰富。我强烈建议您仔细阅读本文并使用其中提供的链接。这将帮助您更好地理解内容。
preview
MetaTrader 5中的蒙特卡罗置换测试

MetaTrader 5中的蒙特卡罗置换测试

在本文中,我们将了解如何仅使用 Metatrader 5在任何 EA 交易上基于修改的分时数据进行置换测试。
preview
DoEasy. 控件 (第 9 部分): 重新编排 WinForms 对象方法、RadioButton 和 Button 控件

DoEasy. 控件 (第 9 部分): 重新编排 WinForms 对象方法、RadioButton 和 Button 控件

在本文中,我将修复 WinForms 对象类方法的名称,并创建 WinForms 的对象 Button 和 RadioButton。
preview
群体优化算法:带电系统搜索(CSS)算法

群体优化算法:带电系统搜索(CSS)算法

在本文中,我们将探讨另一种受无生命自然启发的优化算法--带电系统搜索(Charged System Search,CSS)算法。本文旨在介绍一种基于物理和力学原理的新的优化算法。
preview
开发回放系统 — 市场模拟(第 03 部分):调整设置(I)

开发回放系统 — 市场模拟(第 03 部分):调整设置(I)

我们从梳理当前状况开始,因为我们尚未以最好的方式开始。 如果我们现在不这样做,我们很快就会遇到麻烦。
preview
开发回放系统(第 56 部分):调整模块

开发回放系统(第 56 部分):调整模块

虽然模块之间已经可以正常交互,但在回放服务中尝试使用鼠标指标时会出现错误。在进入下一步之前,我们需要解决这个问题。此外,我们还将修复鼠标指标代码中的一个问题。所以这个版本经过适当的打磨,最终会稳定下来。
preview
如何构建并优化基于成交量的交易系统——蔡金资金流指标(Chaikin Money Flow - CMF)

如何构建并优化基于成交量的交易系统——蔡金资金流指标(Chaikin Money Flow - CMF)

在本文中,我们将在明确如何构建、计算和使用基于成交量的指标——蔡金资金流指标(Chaikin Money Flow,CMF)之后,对该指标进行介绍。我们将了解如何构建自定义指标。我们会分享一些可用的简单策略,然后对这些策略进行测试,以了解哪种策略更优。
preview
流动性攫取交易策略

流动性攫取交易策略

流动性攫取交易策略是智能资金概念(SMC)的核心组成部分,旨在识别并利用市场中机构投资者的操作行为。该策略聚焦于高流动性区域(如支撑位或阻力位),在这些区域,大额订单可引发价格波动,随后市场恢复原有趋势。本文将详细阐释流动性攫取的概念,并概述如何在MQL5中开发流动性攫取交易策略的智能交易系统(EA)。
preview
人工电场算法(AEFA)

人工电场算法(AEFA)

本文介绍了一种受库仑静电力定律启发的人工电场算法(AEFA)。该算法通过模拟电学现象,利用带电粒子及其相互作用来解决复杂的优化问题。与其他基于自然法则的算法相比,AEFA具有独特性质。
preview
MQL5 中的组合对称交叉验证

MQL5 中的组合对称交叉验证

在本文中,我们介绍使用纯 MQL5 语言实现组合对称交叉验证的情况,以衡量使用策略测试器的慢速完全算法优化策略后可能出现的过拟合程度。
preview
MQL5 简介(第 9 部分):理解和使用 MQL5 中的对象

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

学习使用当前和历史数据在 MQL5 中创建和自定义图表对象。本基于项目的指南可帮助您可视化交易并实际应用 MQL5 概念,从而更容易构建适合您交易需求的工具。
preview
神经网络实践:最小二乘法

神经网络实践:最小二乘法

在本文中,我们将探讨一些想法,包括数学公式在外观上怎么会比用代码实现时更复杂。此外,我们还将考虑如何设置图表的象限,以及 MQL5 代码中可能出现的一个有趣问题。不过,说实话,我还是不太明白该如何解释。总之,我会告诉你如何用代码解决这个问题。
preview
开发多币种 EA 交易(第 12 部分):开发自营交易级别风险管理器

开发多币种 EA 交易(第 12 部分):开发自营交易级别风险管理器

在正在开发的 EA 中,我们已经有了某种控制回撤的机制。但它具有概率性,因为它是以历史价格数据的测试结果为基础的。因此,回撤有时会超过最大预期值(尽管概率很小)。让我们试着增加一种机制,以确保遵守指定的回撤水平。
preview
数据科学和机器学习(第 30 部分):预测股票市场的幂对、卷积神经网络(CNN)、和递归神经网络(RNN)

数据科学和机器学习(第 30 部分):预测股票市场的幂对、卷积神经网络(CNN)、和递归神经网络(RNN)

在本文中,我们会探讨卷积神经网络(CNN)和递归神经网络(RNN)在股票市场预测中的动态集成。借力 CNN 提取形态的能力,以及 RNN 的精练度,来处理序列数据。我们看看这个强大的组合如何强化交易算法的准确性和效率。
preview
神经网络变得轻松(第五十三部分):奖励分解

神经网络变得轻松(第五十三部分):奖励分解

我们已经不止一次地讨论过正确选择奖励函数的重要性,我们通过为单独动作添加奖励或惩罚来刺激代理者的预期行为。但是关于由代理者解密我们的信号的问题仍旧悬而未决。在本文中,我们将探讨将单独信号传输至已训练代理者时的奖励分解。
preview
神经网络变得简单(第 70 部分):封闭式政策改进运算器(CFPI)

神经网络变得简单(第 70 部分):封闭式政策改进运算器(CFPI)

在本文中,我们将领略一种算法,其使用封闭式政策改进运算器来优化离线模式下的智能体动作。
preview
神经网络变得简单(第 75 部分):提升轨迹预测模型的性能

神经网络变得简单(第 75 部分):提升轨迹预测模型的性能

我们创建的模型变得越来越大,越来越复杂。这不光提高了它们的训练成本,还有操作成本。不过,做出决定所需的时间往往很关键。有关于此,我们来研究在不损失品质的情况下优化模型性能的方法。
preview
市场模拟(第七部分):套接字(一)

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

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

群体优化算法:思维进化计算(MEC)算法

本文探讨了MEC家族的算法,称为简单思维进化计算(Simple Mind Evolutionary Computation, Simple-MEC,SMEC)算法。该算法以其思想之美和易于实现而著称。
preview
MQL5 交易工具包(第 3 部分):开发挂单管理 EX5 库

MQL5 交易工具包(第 3 部分):开发挂单管理 EX5 库

了解如何在 MQL5 代码或项目中开发和实现全面的挂单 EX5库。本文将向您展示如何创建一个全面的挂单管理 EX5 库,并通过构建交易面板或图形用户界面(GUI)来指导您导入和实现它。EA 交易订单面板将允许用户直接从图表窗口上的图形界面打开、监控和删除与指定幻数相关的挂单。
preview
种群优化算法:微人工免疫系统(Micro-AIS)

种群优化算法:微人工免疫系统(Micro-AIS)

本文研究一种基于人体免疫系统原理的优化方法 — 微人工免疫系统(Micro-AIS) - AIS 的修订版。Micro-AIS 使用更简单的免疫系统模型,和更简单的免疫信息处理操作。本文还讨论了 Micro-AIS 与传统 AIS 相比的优缺点。
preview
开发多币种 EA 交易(第 19 部分):创建用 Python 实现的阶段

开发多币种 EA 交易(第 19 部分):创建用 Python 实现的阶段

到目前为止,我们已经探讨了仅在标准策略测试器中启动顺序程序以优化 EA 的自动化。但是,如果我们想在两次启动之间使用其他方法对获得的数据进行一些处理呢?我们将尝试添加创建由用 Python 编写的程序执行的新优化阶段的功能。
preview
DoEasy. 控件(第 二十九 部分):滚动条(ScrollBar)辅助控件

DoEasy. 控件(第 二十九 部分):滚动条(ScrollBar)辅助控件

在本文中,我起始开发滚动条(ScrollBar)辅助控制元素,及其衍生对象 — 垂直和水平滚动条。 滚动条用于窗体内容(如果窗体超出容器)的滚动显示。 滚动条通常位于窗体的底部和右侧。 底部的水平滚动条可左右滚动内容,而垂直的则上下滚动内容。
preview
克服集成ONNX(Open Neural Network Exchange )的挑战

克服集成ONNX(Open Neural Network Exchange )的挑战

ONNX是集成不同平台间复杂AI代码的强大工具,尽管它非常出色,但要想充分发挥其作用,就必须解决一些伴随而来的挑战。在本文中,我们将讨论您可能会遇到的一些常见问题,以及如何处理这些问题。
preview
开发多币种 EA 交易(第 8 部分):负载测试和处理新柱

开发多币种 EA 交易(第 8 部分):负载测试和处理新柱

随着我们的进步,我们在一个 EA 中使用了越来越多的同时运行的交易策略实例。让我们试着弄清楚在遇到资源限制之前,我们可以得到多少实例。
preview
开发回放系统 — 市场模拟(第 24 部分):外汇(V)

开发回放系统 — 市场模拟(第 24 部分):外汇(V)

今天,我们将去除阻止基于最后成交价进行模拟的限制,并将专门针对这类模拟引入一个新的切入点。整个操作机制将基于外汇市场的原则。该过程的主要区别在于出价(Bid)和最后成交价(Last)模拟的分离。不过,重点要注意,用于随机化时间,并将其调整为与 C_Replay 类兼容的方法在两类模拟中保持雷同。这很好,因为一种模式的变化会导致另一种模式的自动改进,尤其遇到处理跳价之间的时间。
preview
MQL5 简介(第 12 部分):构建自定义指标的初学者指南

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

了解如何在 MQL5 中构建自定义指标。采用基于项目的方法。本初学者指南涵盖指标缓冲区、属性和趋势可视化,让您一步一步地学习。
preview
MQL5交易策略自动化(第二十一部分):借助自适应学习率提升神经网络交易效果

MQL5交易策略自动化(第二十一部分):借助自适应学习率提升神经网络交易效果

在本文中,我们通过引入自适应学习率机制来增强MQL5中的神经网络交易策略,以提高交易准确性。我们设计并实现了这一机制,随后对其性能进行测试。本文结尾总结了有关算法交易的优化见解。
preview
MQL5 交易策略自动化(第 23 部分):带追踪止损与篮子交易的区间补仓系统

MQL5 交易策略自动化(第 23 部分):带追踪止损与篮子交易的区间补仓系统

在本文中,我们将通过引入追踪止损机制与多篮子交易功能,对原有区间补仓系统(Zone Recovery System)进行升级优化。我们将探索升级版架构如何借助动态追踪止损机制锁定已实现利润,以及通过篮子交易管理系统高效处理多维度交易信号。通过实现与回测,我们展示了一个更强大、更能适应市场变化表现的交易系统。
preview
开发回放系统 — 市场模拟(第 22 部分):外汇(III)

开发回放系统 — 市场模拟(第 22 部分):外汇(III)

虽然这是关于这个主题的第三篇文章,但我必须为那些还不了解股票市场和外汇市场之间区别的人解释一下:最大的区别在于,在外汇中没有、或者更确切地说,我们得不到交易过程中有关一些实际发生关键处的信息。
preview
DoEasy. 控件 (第 25 部分): Tooltip WinForms 对象

DoEasy. 控件 (第 25 部分): Tooltip WinForms 对象

在本文中,我将开始开发 Tooltip(工具提示)控件,以及函数库的新图形基元。 自然而然地,并非每个元素都有工具提示,但每个图形对象都有设置它的能力。
preview
基于交易量的神经网络分析:未来趋势的关键

基于交易量的神经网络分析:未来趋势的关键

本文探讨了通过将技术分析原理与 LSTM 神经网络架构相结合,基于交易量分析来改进价格预测准确性的可能性。文章特别关注异常交易量的检测与解读、聚类方法的使用,以及基于交易量的特征创建及其在机器学习背景下的定义。
preview
获取市场优势的秘诀(第二部分):预测技术指标

获取市场优势的秘诀(第二部分):预测技术指标

你知道吗?与预测交易标的的基础价格相比,我们预测某些技术指标时能获得更高的准确性。加入我们,一起探索如何利用这一想法来制定更好的交易策略。
preview
价格行为分析工具包开发(第十五部分):引入四分位理论(1)——四分位绘图脚本

价格行为分析工具包开发(第十五部分):引入四分位理论(1)——四分位绘图脚本

支撑位与阻力位是预示潜在趋势反转和延续的关键价位。尽管识别这些价位颇具挑战性,但一旦精准定位,您便能从容应对市场波动。如需进一步辅助,请参阅本文介绍的四分位绘图工具,该工具可帮助您识别主要及次要支撑位与阻力位。
preview
MQL5中的范畴论(第19部分):自然性四边形归纳法

MQL5中的范畴论(第19部分):自然性四边形归纳法

我们继续通过探讨自然性四边形归纳法来研究自然变换。对于使用MQL5向导构建的EA交易来说,对多货币实现的轻微限制意味着我们正在通过脚本展示我们的数据分类能力。所考虑的主要应用是价格变化分类及其预测。
preview
开发回放系统(第 63 部分):玩转服务(四)

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

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

从零开始在MQL5中实现移动平均线:简单明了

我们将通过简单的示例,探究移动平均线的计算原理,同时了解优化指标计算(包括移动平均线计算)的方法。
preview
您应当知道的 MQL5 向导技术(第 09 部分):K-Means 聚类与分形波配对

您应当知道的 MQL5 向导技术(第 09 部分):K-Means 聚类与分形波配对

“K-均值”聚类采用数据点分组的方式,该过程最初侧重于数据集的宏观视图,使用随机生成的聚类质心,然后放大并调整这些质心,从而准确表示数据集。我们将对此进行研究,并开拓一些它的用例。
preview
开发多币种 EA 交易系统(第 15 部分):为真实交易准备 EA

开发多币种 EA 交易系统(第 15 部分):为真实交易准备 EA

当我们逐渐接近获得一个现成的 EA 时,我们需要注意在测试交易策略阶段看似次要的问题,但在转向真实交易时变得重要。
preview
通过推送通知监控交易——一个MetaTrader 5服务的示例

通过推送通知监控交易——一个MetaTrader 5服务的示例

在本文中,我们将探讨如何创建一个服务应用程序,用于向智能手机发送关于交易结果的通知。我们将学习如何处理标准库对象列表,以便根据所需属性组织对象的选择。