MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
神经网络变得轻松(第三十部分):遗传算法

神经网络变得轻松(第三十部分):遗传算法

今天我想给大家介绍一种略有不同的学习方法。 我们可以说它是从达尔文的进化论中借鉴而来的。 它可能比前面所讨论方法的可控性更低,但它允许训练不可微分的模型。
preview
处理时间(第二部分):函数

处理时间(第二部分):函数

自动判定经纪商时移和 GMT。 与其请求您的经纪商的支持,您可能会从他们那里得到一个不充分的答案(他们很愿意解释时间错位),我们只需自行查看在时间变化的几周内他们如何计算价格 — 但手工操作极其繁琐,我们让程序来做这件事 — 毕竟这就是为什么我们要有一台 PC。
通过 RSS 馈送发送交易信号
通过 RSS 馈送发送交易信号

通过 RSS 馈送发送交易信号

将交易信号作为 RSS 馈送发出是当下与你社区成员沟通的流行方式,在此我要向你介绍我对这种方式的个人理解。
preview
从头开始开发智能交易系统(第 24 部分):提供系统健壮性(I)

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

在本文中,我们将令系统更加可靠,来确保健壮和安全的使用。 实现所需健壮性的途径之一是尝试尽可能多地重用代码,从而能在不同情况下不断对其进行测试。 但这只是其中一种方式。 另一个是采用 OOP。
preview
DoEasy 函数库中的时间序列(第五十四部分):抽象基准指标类的衍生

DoEasy 函数库中的时间序列(第五十四部分):抽象基准指标类的衍生

本文研究基于基准抽象指标衍生对象类的创建。 这些对象所提供功能,可访问创建的指标 EA,收集和获取各种指标和价格数据的数值统计信息。 同样,创建指标对象集合,从中可以访问程序中创建的每个指标的属性和数据。
preview
从头开始开发智能交易系统(第 13 部分):时序与交易(II)

从头开始开发智能交易系统(第 13 部分):时序与交易(II)

今天,我们将针对市场分析构建《时序与交易》系统的第二部分。 在前一篇文章《时序与交易(I)》当中,我们讨论了一种替代的图表组织系统,该系统能够针对市场上执行的成交进行最快速的解释。
DoEasy 函数库中的时间序列(第四十四部分):指标缓冲区对象类集合
DoEasy 函数库中的时间序列(第四十四部分):指标缓冲区对象类集合

DoEasy 函数库中的时间序列(第四十四部分):指标缓冲区对象类集合

本文介绍如何创建指标缓冲区对象类的集合。 我计划测试为指标创建和操控任意数量缓冲区的能力(在 MQL 指标中可以创建的最大缓冲区数量为 512)。
MVC 设计范式及其应用(第 2 部分):三个组件之间相互作用示意图
MVC 设计范式及其应用(第 2 部分):三个组件之间相互作用示意图

MVC 设计范式及其应用(第 2 部分):三个组件之间相互作用示意图

本文是前一篇文章中所讨论主题的延续和完善:MQL 程序中的 MVC 范式。 在本文中,我们将研究范式的三个组件之间可能的相互作用的示意图。
preview
神经网络变得轻松(第三十九部分):Go-Explore,一种不同的探索方式

神经网络变得轻松(第三十九部分):Go-Explore,一种不同的探索方式

我们继续在强化学习模型中研究环境。 在本文中,我们将见识到另一种算法 — Go-Explore,它允许您在模型训练阶段有效地探索环境。
更好的程序员(第 06 部分):9 个导致有效编码的习惯
更好的程序员(第 06 部分):9 个导致有效编码的习惯

更好的程序员(第 06 部分):9 个导致有效编码的习惯

并非有关编写代码的所有事情总是导致有效编码。 在我的从业经历中,我发现了一些会导致有效编码的习惯。 我们将在本文中详细讨论其中的一些。 对于每一位想要以更少的麻烦来提高自己编写复杂算法的能力的程序员来说,这是一篇必须阅读的文章。
preview
从头开始开发智能交易系统(第 16 部分):访问 web 上的数据(II)

从头开始开发智能交易系统(第 16 部分):访问 web 上的数据(II)

掌握如何从网络向智能交易系统输入数据并非那么轻而易举。 如果不了解 MetaTrader 5 提供的所有可能性,就很难做到这一点。
preview
DoEasy. 控件 (第 10 部分): WinForms 对象 — 动画界面

DoEasy. 控件 (第 10 部分): WinForms 对象 — 动画界面

现在是时候实现动画图形界面功能,方便用户与对象的交互了。 为了让更复杂的对象能正确工作,还需要新功能。
嘉盛市场可否预测?如何制定自己的交易策略?
嘉盛市场可否预测?如何制定自己的交易策略?

嘉盛市场可否预测?如何制定自己的交易策略?

每个开始进入嘉盛的人都会尝试回答这些问题。但是,并非每个人都找到了答案,甚至在经过了多年的努力钻研和寻找之后仍未找到答案。我个人已经回答了上述问题以及本文提到的很多其他问题。根据这些答案,制定了一种高效交易策略的方式。
preview
MQL5 酷宝书 — 宏观经济事件数据库

MQL5 酷宝书 — 宏观经济事件数据库

本文讨论了基于 SQLite 引擎处理数据库的可能性。 形成的 CDatabase 类就是为了方便和有效地运用 OOP 原则。 随后它会参与宏观经济事件数据库的创建和管理。 本文提供了使用 CDatabase 类的多种方法的示例。
DoEasy 函数库中的图形(第八十二部分):函数库对象重构和图形对象集合
DoEasy 函数库中的图形(第八十二部分):函数库对象重构和图形对象集合

DoEasy 函数库中的图形(第八十二部分):函数库对象重构和图形对象集合

在本文中,我将通过为每个对象分配唯一类型来改进所有库对象,并继续开发库图形对象集合类。
意见调查:交易者对移动终端的评估
意见调查:交易者对移动终端的评估

意见调查:交易者对移动终端的评估

不幸的是,关于移动交易的未来,目前尚无清晰的概念。但是,在这一方面有很多推测。为了消除这种不确定性,我们决定在交易者中进行一次调查,以挖掘他们对于我们移动终端的意见。通过这次调查,我们已经清晰地认识到了客户当前对产品的看法及对我们的移动终端未来发展的要求和期望。
preview
神经网络实验(第 3 部分):实际应用

神经网络实验(第 3 部分):实际应用

在本系列文章中,我会采用实验和非标准方法来开发一个可盈利的交易系统,并检查神经网络是否对交易者有任何帮助。 若在交易中运用神经网络,MetaTrader 5 则可作为近乎自给自足的工具。
preview
如何在 MQL5 中集成 ONNX 模型的示例

如何在 MQL5 中集成 ONNX 模型的示例

ONNX(开放神经网络交换)是一种表现神经网络的开放格式。 在本文中,我们将展示如何在一个智能交易系统中同时使用两个 ONNX 模型。
preview
DoEasy. 控件 (第 2 部分): 操控 CPanel 类

DoEasy. 控件 (第 2 部分): 操控 CPanel 类

在本文中,我将剔除一些与操控图形元素相关的错误,并继续开发 CPanel 控件。 尤其是,我将实现为所有面板文本对象设置默认字体参数的方法。
preview
种群优化算法:蝙蝠算法(BA)

种群优化算法:蝙蝠算法(BA)

在本文中,我将研究蝙蝠算法(BA),它在平滑函数上表现出良好的收敛性。
preview
复购算法:模拟多币种交易

复购算法:模拟多币种交易

在本文中,我们将创建一个模拟多币种定价的数学模型,并针对多元化原理进行彻底研究,作为搜索提高交易效率机制的一部分,我在上一篇文章中已经开始了理论计算。
preview
DoEasy 函数库中的时间序列(第五十部分):多周期、多品种带位移的标准指标

DoEasy 函数库中的时间序列(第五十部分):多周期、多品种带位移的标准指标

在文章里,我们将改进函数库的方法,以便正确显示多品种、多周期的标准指标,即那些在当前品种图表上显示曲线,并可在设置中指定位移的指标。 同样,我们按照标准指标的操纵方法进行排序,并在最终的指标程序里将多余的代码移至函数库区域。
preview
如何在 MQL5 中使用 ONNX 模型

如何在 MQL5 中使用 ONNX 模型

ONNX(开放式神经网络交换)是一种开源的机器学习模型格式。 在本文中,我们将研究如何创建 CNN-LSTM 模型,来预测金融时间序列。 我们还将展示如何在 MQL5 智能系统中运用创建的 ONNX 模型。
preview
您应该知道的 MQL5 向导技术(第 05 部分):马尔可夫(Markov)链

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

马尔可夫(Markov)链是一个强大的数学工具,能够针对包括金融在内的各个领域的时间序列数据进行建模和预测。 在金融时间序列建模和预测中,马尔可夫链通常用于模拟金融资产随时间的演变,例如股票价格或汇率。 马尔可夫链模型的主要优点之一是其简单性和易用性。
preview
从头开始开发智能交易系统(第 17 部分):访问 web 上的数据(III)

从头开始开发智能交易系统(第 17 部分):访问 web 上的数据(III)

在本文中,我们将继续研究如何从 web 获取数据,并在智能系统中使用它。 这次我们将着手开发一个替代系统。
preview
神经网络变得轻松(第二十四部分):改进迁移学习工具

神经网络变得轻松(第二十四部分):改进迁移学习工具

在上一篇文章中,我们创建了一款用于创建和编辑神经网络架构的工具。 今天我们将继续打造这款工具。 我们将努力令其对用户更加友好。 也许可以看到,我们的主题往上更进一步。 但是,您不认为规划良好的工作空间在实现结果方面起着重要作用吗?
在测试程序中对重新报价建模和 Expert Advisor 稳定性分析
在测试程序中对重新报价建模和 Expert Advisor 稳定性分析

在测试程序中对重新报价建模和 Expert Advisor 稳定性分析

重新报价是很多 Expert Advisor 的噩梦,尤其对于进入/退出交易条件非常敏感的 Expert Advisor。本文提供了一种检查 EA 对于重新报价稳定性的方法。
preview
神经网络变得轻松(第十八部分):关联规则

神经网络变得轻松(第十八部分):关联规则

作为本系列文章的延续,我们来研究无监督学习方法中的另一类问题:挖掘关联规则。 这种问题类型首先用于零售业,即超市等,来分析市场篮子。 在本文中,我们将讨论这些算法在交易中的适用性。
preview
利用对象轻松制作复杂指标

利用对象轻松制作复杂指标

本文提供了一种创建复杂指标的方法,同时还避免了在处置多个作图板、缓冲区、和/或组合来自多个来源的数据时出现的问题。
preview
开发回放系统 — 市场模拟(第 02 部分):首次实验(II)

开发回放系统 — 市场模拟(第 02 部分):首次实验(II)

这一次,我们尝试换一种不同的方式来实现 1 分钟的目标。 然而,这项任务并非如人们想象的那么简单。
preview
学习如何基于相对活力(Vigor)指数设计交易系统

学习如何基于相对活力(Vigor)指数设计交易系统

我们系列中的新篇章,介绍如何基于最流行的技术指标设计交易系统。 在本文中,我们将学习如何基于相对活力(Vigor)指数指标来做到这一点。
preview
MQL5 中的范畴论 (第 7 部分):多域、相对域和索引域

MQL5 中的范畴论 (第 7 部分):多域、相对域和索引域

范畴论是数学的一个多样化和不断扩展的分支,直到最近才在 MQL5 社区中得到一些报道。 这些系列文章旨在探索和验证一些概念和公理,其总体目标是建立一个开放的函数库,提供洞察力,同时也希望进一步在交易者的策略开发中运用这个非凡的领域。
preview
以 MQL5 实现 ARIMA 训练算法

以 MQL5 实现 ARIMA 训练算法

在本文中,我们将实现一种算法,该算法应用了 Box 和 Jenkins 的自回归集成移动平均模型,并采用了函数最小化的 Powells 方法。 Box 和 Jenkins 表示,大多数时间序列可以由两个框架中之一个或两个来建模。
preview
种群优化算法:细菌觅食优化(BFO)

种群优化算法:细菌觅食优化(BFO)

大肠杆菌觅食策略激发出科学家创建 BFO 优化算法的灵感。 该算法包含原创思路和有前景的优化方法,值得深入研究。
preview
开发回放系统 — 市场模拟(第 05 部分):加入预览

开发回放系统 — 市场模拟(第 05 部分):加入预览

我们已设法开发了一套以逼真和可访问的方式来实现市场回放的系统。 现在,我们继续我们的项目,并添加数据,从而提升回放行为。
preview
在 MQL5 中利用 ARIMA 模型进行预测

在 MQL5 中利用 ARIMA 模型进行预测

在本文中,我们继续开发构建 ARIMA 模型的 CArima 类,添加支持预测的直观方法。
preview
DoEasy 函数库中的时间序列(第五十二部分):多周期、多品种单缓冲区标准指标的跨平台性质

DoEasy 函数库中的时间序列(第五十二部分):多周期、多品种单缓冲区标准指标的跨平台性质

在本文中,研究创建多品种、多周期标准指标的“建仓/派发”。 略微改进指标依托的函数库类,以便从老旧的 MetaTrader 4 平台切换到 MetaTrader 5 时,基于该函数库开发的程序均可正常运行。
preview
来自专业程序员的提示(第三部分):日志。 连接到 Seq 日志收集和分析系统

来自专业程序员的提示(第三部分):日志。 连接到 Seq 日志收集和分析系统

Logger 类的实现能够统一和结构化打印到智能系统栏的日志消息。 连接到 Seq 日志收集和分析系统。 在线监视日志消息。
preview
神经网络变得轻松(第三十八部分):凭借分歧进行自我监督探索

神经网络变得轻松(第三十八部分):凭借分歧进行自我监督探索

强化学习中的一个关键问题是环境探索。 之前,我们已经见识到基于内在好奇心的研究方法。 今天我提议看看另一种算法:凭借分歧进行探索。
使用 Skype 发送来自 Expert Advisor 的消息
使用 Skype 发送来自 Expert Advisor 的消息

使用 Skype 发送来自 Expert Advisor 的消息

本文介绍如何使用 Skype 将来自 Expert Advisor 的内部消息和短信发送给移动电话。