MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
种群优化算法:灰狼优化器(GWO)

种群优化算法:灰狼优化器(GWO)

我们来研究一种最新的现代优化算法 — 灰狼优化。 测试函数的原始行为令该算法成为以前研究过的算法中最有趣的算法之一。 这是训练神经网络的顶级算法之一,具有许多变量的平滑函数。
preview
从头开始开发智能交易系统(第 20 部分):新订单系统 (III)

从头开始开发智能交易系统(第 20 部分):新订单系统 (III)

我们继续实现新的订单系统。 创建这样的一个系统需要熟练地掌握 MQL5,以及了解 MetaTrader 5 平台的实际工作方式,及其提供的资源。
preview
探索创建多彩烛条的选项

探索创建多彩烛条的选项

在本文中,我将探讨创建烛条自定义指标的可能性,并指出它们的优缺点。
MetaTrader 4中的测试特性和限定
MetaTrader 4中的测试特性和限定

MetaTrader 4中的测试特性和限定

文章介绍在MetaTrader 4中更多策略测试的特性和限定。
preview
如何选择智能系统:拒绝一款交易机器人的 20 条强大准则

如何选择智能系统:拒绝一款交易机器人的 20 条强大准则

本文尝试回答这个问题:我们如何选择正确的智能系统? 哪些最适合我们的投资组合,我们如何过滤市场上提供的庞大交易机器人列表? 本文将介绍二十条明确而强大的准则来拒绝一款智能系统。 每条提出的准则都将得到很好的解释,从而帮助您做出更持久的决定,并为您建立一个更有前途的智能系统集合,从而赚取利润。
preview
艾伦·安德鲁斯和他的时间序列分析技术

艾伦·安德鲁斯和他的时间序列分析技术

艾伦·安德鲁斯(Alan Andrews)是现世代在交易领域最著名的“教育家”之一。 他的“草叉”几乎包含在所有现代报价分析程序当中。 但大多数交易者没机会用过此工具,甚至是其提供的一小部分。 此外,安德鲁斯最初的培训课程不仅包括对草叉的描述(尽管它仍然是主要工具),还包括其它一些有用的结构。 本文提供了对安德鲁斯在其原始课程中教授的奇妙图表分析方法的见解。 (流量焦虑用户)请当心,会有很多图像。
preview
直推和主动机器学习中的梯度提升

直推和主动机器学习中的梯度提升

在本文中,我们将探讨利用真实数据的主动机器学习方法,并讨论它们的优缺点。也许你会发现这些方法很有用,并将它们包含在你的机器学习模型库中。直推是由支持向量机(SVM)的共同发明者弗拉基米尔·瓦普尼克(Vladimir Vapnik)提出的。
preview
如何利用 MQL5 创建简单的多币种智能交易系统(第 6 部分):两条 RSI 指标相互交叉

如何利用 MQL5 创建简单的多币种智能交易系统(第 6 部分):两条 RSI 指标相互交叉

本文中的多货币智能系统是一款智能交易系统或交易机器人,它利用两条 RSI 指标线的交叉,即与慢速 RSI 与快速 RSI 两线相交。
基于 CChartObject 类设计和实施新 GUI 组件
基于 CChartObject 类设计和实施新 GUI 组件

基于 CChartObject 类设计和实施新 GUI 组件

在我撰写了关于通过 GUI 界面实现半自动“EA 交易”的前作后,结果表明针对更复杂的指标和“EA 交易”,最好使用新的功能来改善界面。在熟悉 MQL5 标准库类后,我实施了一些新的组件。本文介绍新 MQL5 GUI 组件的设计和实施过程;这些组件可用于指标和“EA 交易”。本文中介绍的组件包括:CChartObjectSpinner、CChartObjectProgressBar 和 CChartObjectEditTable。
preview
MQL5 中的矩阵和向量操作

MQL5 中的矩阵和向量操作

MQL5 中引入了矩阵和向量,用于实现数学解决方案的高效操作。 新类型提供了内置方法,能够创建接近数学标记符号的简洁易懂的代码。 数组提供了广泛的功能,但在很多情况下,矩阵的效率要高得多。
preview
模式搜索的暴力方法

模式搜索的暴力方法

在本文中,我们将搜索市场模式,根据确定的模式创建 EA 交易,并检查这些模式,如果它们保持有效的话,保持有效的时间有多少。
MetaEditor:模板作为支点
MetaEditor:模板作为支点

MetaEditor:模板作为支点

可一次性为 EA 编写完成所有准备工作并且这些准备工作可供以后持续使用,这对我们很多读者而言可能还有点陌生。
preview
学习如何基于建仓/派发(AD)设计交易系统

学习如何基于建仓/派发(AD)设计交易系统

欢迎阅读本系列的新文章,了解如何基于最流行的技术指标设计交易系统。 在本文中,我们将学习一种新的技术指标,称为建仓/派发指标,并了解如何基于简单的 AD 交易策略设计一款 MQL5 交易系统。
preview
重温默里(Murrey)系统

重温默里(Murrey)系统

图形价格分析系统在交易者中当之无愧地广受欢迎。 在本文中,我将讲述完整的默里(Murrey)系统,包括其著名的级别,以及其它一些评估当前价格位置,并据其做出交易决策的实用技术。
preview
交易中的混沌理论(第一部分):简介、在金融市场中的应用和李亚普诺夫指数

交易中的混沌理论(第一部分):简介、在金融市场中的应用和李亚普诺夫指数

混沌理论可以应用于金融市场吗?在这篇文章中,我们将探讨传统混沌理论和混沌系统与比尔·威廉姆斯提出的概念有何不同。
MetaTrader市场概述(图表)
MetaTrader市场概述(图表)

MetaTrader市场概述(图表)

几周前我们发布了自由职业者服务的信息图表。我们也承诺将透露一些市场统计数据。现在,我们邀请您来检验我们已经收集的数据。
preview
神经网络变得轻松(第二十一部分):变分自动编码器(VAE)

神经网络变得轻松(第二十一部分):变分自动编码器(VAE)

在上一篇文章中,我们已熟悉了自动编码器算法。 像其它任何算法一样,它也有其优点和缺点。 在其原始实现中,自动编码器会尽可能多地将对象与训练样本分开。 这次我们将讨论如何应对它的一些缺点。
preview
创建一个行情卷播面板:改进版

创建一个行情卷播面板:改进版

您如何看待复查我们的行情卷播面板基本版的主意? 我们改进面板要做的第一件事就是能够添加图像,例如资产徽标或其它图像,从而用户可以迅速、轻松地识别所示品种。
preview
种群优化算法:人工蜂群(ABC)

种群优化算法:人工蜂群(ABC)

在本文中,我们将研究人工蜂群的算法,并用研究函数空间得到的新原理来补充我们的知识库。 在本文中,我将陈列我对经典算法版本的解释。
preview
学习如何基于 MFI 设计交易系统

学习如何基于 MFI 设计交易系统

这篇新文章出自我们的系列文章,是有关基于最流行的技术指标设计交易系统,它研究了一个新的技术指标 — 资金流动性指数(MFI)。 我们将详细学习它,利用 MQL5 开发一个简单的交易系统,并在 MetaTrader 5 中执行它。
preview
MetaTrader 中的多机器人:从单图表中启动多个机器人

MetaTrader 中的多机器人:从单图表中启动多个机器人

在本文中,我将研究一个简单的模板,用来创建通用的 MetaTrader 机器人,该机器人可以在多个图表上使用,同时仅附加到一个图表,无需在每个单独的图表上为每个机器人实例进行配置。
preview
从头开始开发智能交易系统(第 18 部分):新订单系统 (I)

从头开始开发智能交易系统(第 18 部分):新订单系统 (I)

这是新订单系统的第一部分。 自从我们在文章中开始打造这个 EA 以来,它已经历了各种变化和改进,同时保持了相同的图表订单系统模型。
preview
使用 Python 和 MetaTrader5 python 软件包及 ONNX 模型文件进行深度学习预测和排序

使用 Python 和 MetaTrader5 python 软件包及 ONNX 模型文件进行深度学习预测和排序

本项目涉及在金融市场中使用 Python 进行基于深度学习的预测。我们将探索使用平均绝对误差(MAE)、均方误差(MSE)和R平方(R2)等关键指标测试模型性能的复杂性,并学习如何将所有内容打包到可执行文件中。我们还将制作一个 ONNX 模型文件以及它的 EA。
扩充策略构建器功能
扩充策略构建器功能

扩充策略构建器功能

在前两篇文章之中,我们讨论了 Merrill (美林)形态针对各种数据类型的应用。 并开发了一款应用程序来测试提出的思路。 在本文中,我们将继续策略构建器的工作,来提高其效率,并实现新的功能。
preview
从头开始开发智能交易系统(第 25 部分):提供系统健壮性(II)

从头开始开发智能交易系统(第 25 部分):提供系统健壮性(II)

在本文中,我们将朝着 EA 的性能迈出最后一步。 为此,请做好长时间阅读的准备。 为了令我们的智能交易系统可靠,我们首先从代码中删除不属于交易系统的所有内容。
preview
一张图表上的多个指标(第 05 部分):将 MetaTrader 5 转变为 RAD 系统(I)

一张图表上的多个指标(第 05 部分):将 MetaTrader 5 转变为 RAD 系统(I)

有很多人不知道如何编程,但他们很有创造力,亦有杰出的想法。 然而,由于缺乏编程知识,他们无法实现这些想法。 我们一起看看如何利用 MetaTrader 5 平台本身创建图表交易,就如同它是一个 IDE。
preview
您应该知道的 MQL5 向导技术(第 05 部分):马尔可夫(Markov)链

您应该知道的 MQL5 向导技术(第 05 部分):马尔可夫(Markov)链

马尔可夫(Markov)链是一个强大的数学工具,能够针对包括金融在内的各个领域的时间序列数据进行建模和预测。 在金融时间序列建模和预测中,马尔可夫链通常用于模拟金融资产随时间的演变,例如股票价格或汇率。 马尔可夫链模型的主要优点之一是其简单性和易用性。
DoEasy 函数库中的图形(第七十七部分):阴影对象类
DoEasy 函数库中的图形(第七十七部分):阴影对象类

DoEasy 函数库中的图形(第七十七部分):阴影对象类

在本文中,我将为阴影对象创建一个单独类,它是图形元素对象的衍生后代,并加入渐变填充对象背景的功能。
preview
从基础到中级:结构(二)

从基础到中级:结构(二)

在本文中,我们将尝试理解为什么像 MQL5 这样的编程语言有结构,为什么在某些情况下,结构是在函数和过程之间传递值的理想方式,而在其他情况下,它们可能不是最好的方式。
MQL5 中的电子表格
MQL5 中的电子表格

MQL5 中的电子表格

本文介绍在其第一个维度中包含不同类型的数据的动态二维数组的类。以表格的形式存储数据可方便地解决与安排、存储和操作不同类型的绑定信息相关的各种问题。实施表格处理功能性的类的源代码已附于本文。
preview
在一张图表上的多个指标(第 02 部分):首次实验

在一张图表上的多个指标(第 02 部分):首次实验

在前一篇文章“在一张图表上的多个指标”中,我介绍了如何在一张图表上加载多个指标的概念和基本知识。 在本文中,我将提供源代码,并对其进行详解。
preview
使用MQL5轻松创建图形面板

使用MQL5轻松创建图形面板

在这篇文章中,我们将为任何需要创建交易中最有价值和最有用的工具之一的人提供一个简单易行的指南,即简化和轻松执行交易任务的图形面板,这有助于节省时间,并在不受任何干扰的情况下更多地关注您的交易过程本身。
信息的存储和阅览
信息的存储和阅览

信息的存储和阅览

本文介绍了信息存储和阅览的方便而高效的方法. 在这里探讨了终端标准记录文件和Comment()函数的替代方案.
preview
神经网络变得轻松(第三十五部分):内在好奇心模块

神经网络变得轻松(第三十五部分):内在好奇心模块

我们继续研究强化学习算法。 到目前为止,我们所研究的所有算法都需要创建一个奖励政策,从而令代理者能够每次从一个系统状态过渡到另一个系统状态的转换中估算其每个动作。 然而,这种方式人为因素相当大。 在实践中,动作和奖励之间存在一些时间滞后。 在本文中,我们将领略一种模型训练算法,该算法可以操控从动作到奖励的各种时间延迟。
preview
模式搜索的暴力算法(第三部分):新视野

模式搜索的暴力算法(第三部分):新视野

本文延续了暴力算法的主题,并在程序算法中引入了市场分析的新机会,从而加快了分析速度,提高了结果质量。新的添加使得在这种方法中可以看到最高质量的全局模式。
DoEasy 函数库中的时间序列(第六十一部分):品种即时报价序列集合
DoEasy 函数库中的时间序列(第六十一部分):品种即时报价序列集合

DoEasy 函数库中的时间序列(第六十一部分):品种即时报价序列集合

鉴于程序在其运行时可能会用到不同的品种,因此应为每个品种创建一个单独的列表。 在本文中,我将把这些列表合并到一个即时报价数据集合。 实际上,这将是一个常规列表,基于指向标准库 CObject 类及其衍生类实例指针的动态数组。
preview
在 Linux 上利用 C++ 多线程支持开发 MetaTrader 5 概念验证 DLL

在 Linux 上利用 C++ 多线程支持开发 MetaTrader 5 概念验证 DLL

我们将开始探索如何仅基于 Linux 系统开发 MetaTrader 5 平台的步骤和工作流程,其中最终产品能在 Windows 和 Linux 系统上无缝运行。 我们将了解 Wine 和 Mingw;两者都是制作跨平台开发任务的基本工具。 特别是 Mingw 的线程实现(POSIX 和 Win32),我们在选择追随哪一个时需要仔细考虑。 然后,我们构建一个能在 MQL5 代码中所用的概念验证 DLL,最后比较两种线程实现的性能。 这一切都是为了您的基金能进一步扩张自己。 阅读本文后,您应该可以轻松地在 Linux 上构建 MT 相关工具。
preview
神经网络实验(第 6 部分):自给自足的价格预测工具 — 感知器

神经网络实验(第 6 部分):自给自足的价格预测工具 — 感知器

本文提供了一个的示例,运用感知器作为自给自足的价格预测工具,展示其一般概念和最简单的已制备智能系统,然后是其优化结果。
preview
配对交易

配对交易

在这篇文章中,我们将探讨配对交易(pair trading),即它的原理是什么,以及它的实际应用是否有前景。我们还将尝试创建一个配对交易策略。
MQL5 Cookbook: 减少过度配合的影响以及处理报价缺失
MQL5 Cookbook: 减少过度配合的影响以及处理报价缺失

MQL5 Cookbook: 减少过度配合的影响以及处理报价缺失

无论您使用何种交易策略,总会有一个问题:怎样选择参数以保证未来的利润。本文提供了一个EA交易的实例,使您可以同时优化多个交易品种的参数,这种方法是未了减少参数的过度配合以及处理在研究中来自单个交易品种的数据不足的问题。