MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
交易中的追踪止损

交易中的追踪止损

在本文中,我们将研究追踪止损在交易中的使用。我们将评估它的实用性和有效性以及如何使用它。追踪止损的效率很大程度上取决于价格波动和止损水平的选择。可以使用各种方法来设置止损。
preview
神经网络变得轻松(第二十六部分):强化学习

神经网络变得轻松(第二十六部分):强化学习

我们继续研究机器学习方法。 自本文,我们开始另一个大话题,强化学习。 这种方式允许为模型设置某些策略来解决问题。 我们可以预期,强化学习的这种特性将为构建交易策略开辟新的视野。
将指标代码转移至 Expert Advisor 代码。总结
将指标代码转移至 Expert Advisor 代码。总结

将指标代码转移至 Expert Advisor 代码。总结

这是最后一篇文章,专门讨论如何将指标代码转移到 Expert Advisor 代码中。作者在这里针对一个特定示例转换 Expert Advisor 的代码,以便在不调用自定义指标的情况下在单个文件中呈现此 EA。
preview
模式搜索的暴力方法(第二部分):深入

模式搜索的暴力方法(第二部分):深入

在本文中,我们将继续讨论暴力方法。我将尝试使用我的应用程序的新改进版本来更好地解释这种模式。我还将尝试使用不同的时间间隔和时间框架来找出稳定性的差异。
preview
在一张图表上的多个指标(第 03 部分):为用户开发定义

在一张图表上的多个指标(第 03 部分):为用户开发定义

今天,我们将首次更新指标系统的功能。 在“一张图表上的多个指标”的前一篇文章中,我们研究了允许在图表子窗口中加载多个指标的基本代码。 但其所代表的只是一个更大系统的起点。
preview
从头开始开发智能交易系统(第 12 部分):时序与交易(I)

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

今天,我们将创建时序与交易,从而快速解读订单流程。 这是我们构建系统的第一部分。 在下一篇文章中,我们将补全该系统缺失的信息。 为了实现这一新功能,我们需要在智能交易系统代码中添加一些新的内容。
preview
学习如何基于标准偏差设计交易系统

学习如何基于标准偏差设计交易系统

此为我们该系列中的一篇新文章,介绍如何利用 MetaTrader 5 交易平台中最受欢迎的技术指标来设计交易系统。 在这篇新文章中,我们将学习如何运用标准偏差指标设计交易系统。
preview
使用MQL5轻松创建图形面板

使用MQL5轻松创建图形面板

在这篇文章中,我们将为任何需要创建交易中最有价值和最有用的工具之一的人提供一个简单易行的指南,即简化和轻松执行交易任务的图形面板,这有助于节省时间,并在不受任何干扰的情况下更多地关注您的交易过程本身。
preview
数据科学和机器学习(第 12 部分):自训练神经网络能否帮助您跑赢股市?

数据科学和机器学习(第 12 部分):自训练神经网络能否帮助您跑赢股市?

您是否厌倦了持续尝试预测股市? 您是否希望有一个水晶球来帮助您做出更明智的投资决策? 自训练神经网络可能是您一直在寻找的解决方案。 在本文中,我们将探讨这些强大的算法是否可以帮助您“乘风破浪”,并跑赢股市。 通过分析大量数据和识别形态,自训练神经网络通常可以做出比人类交易者更准确的预测。 发现如何使用这项尖端技术来最大化您的盈利,并制定更明智的投资决策。
非交易 EA 的测试指标
非交易 EA 的测试指标

非交易 EA 的测试指标

全部指标可以分为两组:静态指标(一旦显示后始终保持不变,不随新报价变化)和动态指标(仅显示当前时刻的状态,新价格出现时要完全重新绘制)。静态指标的效力在图表上直接可见。但如何检验动态指标的有效性呢?这是本文要探讨的问题。
DoEasy 函数库中的其他类(第六十六部分):MQL5.com 信号集合类
DoEasy 函数库中的其他类(第六十六部分):MQL5.com 信号集合类

DoEasy 函数库中的其他类(第六十六部分):MQL5.com 信号集合类

在本文中,我将针对 MQL5.com 信号服务创建信号集合类,拥有能够管理信号的函数。 此外,我将改进“市场深度”快照对象类,来显示 DOM 的总买卖量。
preview
从头开始开发智能交易系统(第 14 部分):添加价格成交量(II)

从头开始开发智能交易系统(第 14 部分):添加价格成交量(II)

今天,我们要将更多资源加入 EA。 这篇有趣的文章可以提供一些展示信息的新思路和方法。 与此同时,它能帮助修复项目中的小缺陷。
preview
神经网络变得轻松(第三十二部分):分布式 Q-学习

神经网络变得轻松(第三十二部分):分布式 Q-学习

我们在本系列的早期文章中领略了 Q-学习方法。 此方法均化每次操作的奖励。 2017 年出现了两篇论文,在研究奖励分配函数时展现出了极大的成功。 我们来研究运用这种技术解决我们问题的可能性。
preview
创建一个行情卷播面板:基本版

创建一个行情卷播面板:基本版

在此,我将展示如何创建价格播报屏幕,它通常在交易所滚动显示报价。 我会只用 MQL5 来做到这一点,无需复杂的外部编程。
基于大众交易系统和交易机器人优化点金术的Expert Advisor(续)
基于大众交易系统和交易机器人优化点金术的Expert Advisor(续)

基于大众交易系统和交易机器人优化点金术的Expert Advisor(续)

本文中,作者继续分析最简单的交易系统的算法实现,并介绍回测自动化。本文对交易新手和 EA 编写者比较有帮助。
市场及其全局模式中的物理学
市场及其全局模式中的物理学

市场及其全局模式中的物理学

在本文中,我将尝试测试这样一个假设,即任何对市场了解甚微的系统都可以在全局范围内运行。我不会发明任何理论或模式,但我只会使用已知的事实,逐步将这些事实转化为数学分析的语言。
preview
开发回放系统 — 市场模拟(第 01 部分):首次实验(I)

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

如何创建一个系统,让我们在闭市后也能研究市场,甚至模拟市场情况? 在此,我们将开始一系列新的文章,在其中我们将应对这个主题。
DoEasy 函数库中的时间序列(第四十五部分):多周期指标缓冲区
DoEasy 函数库中的时间序列(第四十五部分):多周期指标缓冲区

DoEasy 函数库中的时间序列(第四十五部分):多周期指标缓冲区

在本文中,我将着手改进指标缓冲区对象和集合类,从而可在多周期和多品种模式下操作。 我打算在当前品种图表上的任何时间帧内接收和显示数据缓冲区对象的操作。
preview
在 MQL5 中使用 AutoIt

在 MQL5 中使用 AutoIt

简述。 在本文中,我们将探索采用 MetraTrader 5 终端里以集成的 MQL5 编写 AutoIt 脚本。 在其中,我们将覆盖如何操纵终端的用户界面来自动完成各种任务,并介绍一个采用 AutoItX 库的类。
preview
配对交易

配对交易

在这篇文章中,我们将探讨配对交易(pair trading),即它的原理是什么,以及它的实际应用是否有前景。我们还将尝试创建一个配对交易策略。
DoEasy 函数库中的图形(第七十三部分):图形元素的交互窗对象
DoEasy 函数库中的图形(第七十三部分):图形元素的交互窗对象

DoEasy 函数库中的图形(第七十三部分):图形元素的交互窗对象

这篇文章开辟了函数库一个新的操控图形的大章节。 在本文中,我将创建鼠标状态对象、所有图形元素的基准对象、以及函数库图形元素的交互窗对象类。
如何在 MetaTrader 5 中创建并测试自定义 MOEX(莫斯科证券交易所) 品种
如何在 MetaTrader 5 中创建并测试自定义 MOEX(莫斯科证券交易所) 品种

如何在 MetaTrader 5 中创建并测试自定义 MOEX(莫斯科证券交易所) 品种

本文介绍运用 MQL5 语言创建自定义兑换品种。 特别是,它研究使用来自流行的 Finam 网站的兑换报价。 本文中研究的另一个选项是在创建自定义品种时可以使用任意格式的文本文件。 这允许使用任何金融品种和数据源。 创建自定义品种之后,我们可以使用 MetaTrader 5 策略测试器的所有功能来测试兑换品种的交易算法。
DoEasy 函数库中的价格(第六十四部分):市场深度,DOM 快照类和快照序列对象
DoEasy 函数库中的价格(第六十四部分):市场深度,DOM 快照类和快照序列对象

DoEasy 函数库中的价格(第六十四部分):市场深度,DOM 快照类和快照序列对象

在本文中,我将创建两个类(DOM 快照对象类,和 DOM 快照序列对象类),并测试 DOM 数据序列的创建。
preview
种群优化算法:灰狼优化器(GWO)

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

我们来研究一种最新的现代优化算法 — 灰狼优化。 测试函数的原始行为令该算法成为以前研究过的算法中最有趣的算法之一。 这是训练神经网络的顶级算法之一,具有许多变量的平滑函数。
preview
构建自动运行的 EA(第 09 部分):自动化(II)

构建自动运行的 EA(第 09 部分):自动化(II)

如果您无法控制其调度表,则自动化就意味着毫无意义。 没有工人能够一天 24 小时高效工作。 然而,许多人认为自动化系统理所当然地每天 24 小时运行。 但为 EA 设置工作时间范围总是有好处的。 在本文中,我们将研究如何正确设置这样的时间范围。
将指标代码转移至 Expert Advisor 代码。指标结构
将指标代码转移至 Expert Advisor 代码。指标结构

将指标代码转移至 Expert Advisor 代码。指标结构

本文详细介绍将指标代码转移至 Expert Advisor 代码的方式,并详细介绍编写 Expert Advisor 的过程,在此过程中,不调用任何自定义指标,且整个程序代码用于计算 Expert Advisor 中的必要指标值。本文介绍了指标结构的总体方案、Expert Advisor 中指标缓冲区的模拟以及函数 IndicatorCounted() 的替代项。本文面向拥有使用 MQL4 语言进行编程的经验的读者。
preview
交易中的道义期望

交易中的道义期望

这篇文章是关于道义期望。 我们将看到在交易中运用它的若干示例,以及在它的帮助下可以达成的结果。
preview
帧分析器(Frames Analyzer)工具带来的时间片交易魔法

帧分析器(Frames Analyzer)工具带来的时间片交易魔法

什么是帧分析器(Frames Analyzer)? 这是适用于任意智能系统的一个插件模块,在策略测试器中、以及测试器之外进行参数优化期间,该工具在参数优化完成后立即读取测试创建的 MQD 文件、或数据库,并分析优化帧数据。 您能够与拥有帧分析器工具的其他用户共享这些优化结果,从而共同讨论结果。
DoEasy 函数库中的价格(第六十五部分):市场深度集合并操控 MQL5.com 信号的类
DoEasy 函数库中的价格(第六十五部分):市场深度集合并操控 MQL5.com 信号的类

DoEasy 函数库中的价格(第六十五部分):市场深度集合并操控 MQL5.com 信号的类

在本文中,我将创建所有品种的市场深度集合类,并着手开发创建信号对象类来操控 MQL5.com 信号服务的功能。
preview
您应该知道的 MQL5 向导技术(第 01 部分):回归分析

您应该知道的 MQL5 向导技术(第 01 部分):回归分析

今天的交易者都是一位哲学家,他几乎总是(有意识地或无意识地)寻找新的思路,尝试它们,选择修改或抛弃它们;这是一个需要付出相当勤奋程度的探索过程。 这显然会花费交易者高昂的时间,且需要避免错误。 本系列文章将提出,MQL5 向导应该是交易者的支柱。 为什么呢? 因为交易者不仅经由 MQL5 向导组装他的新想法来节省时间,而且大大减少了重复编码的错误;他最终会把精力集中在交易哲学的几个关键领域。
preview
种群优化算法:猴子算法(MA)

种群优化算法:猴子算法(MA)

在本文中,我将研究猴子优化算法(MA)。 这些动物克服困难障碍,并到达最难以接近的树顶的能力构成了 MA 算法思想的基础。
preview
种群优化算法:杜鹃优化算法(COA)

种群优化算法:杜鹃优化算法(COA)

我将研究的下一个算法是 Levy 飞行正在使用的杜鹃搜索优化。 这是最新的优化算法之一,也是排行榜的新领导者。
preview
利用智能系统进行风险和资本管理

利用智能系统进行风险和资本管理

本文是有关您在回测报告中看不到的内容,使用自动交易软件时您应该期望什么;如果您正在使用智能系统,该如何管理您的资金;以及如果您正在使用自动化过程,如何弥补重大亏损从而坚持交易活动。
preview
构建自动运行的 EA(第 11 部分):自动化(III)

构建自动运行的 EA(第 11 部分):自动化(III)

如果没有健全的安全性,自动化系统就不会成功。 但是,如果不对某些事情有很好的理解,就无法确保安全性。 在本文中,我们将探讨为什么在自动化系统中实现最大安全性是一项挑战。
preview
DoEasy 函数库中的时间序列(第五十一部分):复合多周期、多品种标准指标

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

在本文中,会完成多周期、多品种标准指标对象的开发。 以 Ichimoku Kinko Hyo 标准指标为例,分析复合自定义指标的创建,该指标含有辅助绘制缓冲区,可在图表上显示数据。
图形行-请求的元语言交易和合格交易学习
图形行-请求的元语言交易和合格交易学习

图形行-请求的元语言交易和合格交易学习

本文描述了跟传统技术分析兼容且简单可行的图形交易请求语言。随附的 Gterminal 是一个半自动的 Expert Advisor,用于图形分析的交易结果。最好用于自我学习和交易新手的培训。
preview
神经网络变得轻松(第九部分):操作归档

神经网络变得轻松(第九部分):操作归档

我们已经经历了很长一段路,并且函数库中的代码越来越庞大。 这令跟踪所有连接和依赖性变得难以维护。 因此,我建议为先前创建的代码创建文档,并保持伴随每个新步骤进行更新。 正确准备的文档将有助我们看到操作的完整性。
让开发者为交易者进行服务?
让开发者为交易者进行服务?

让开发者为交易者进行服务?

算法交易变得越来越流行并需求旺盛,这自然导致了对于精致算法以及不同寻常任务的需求。从某种程度上说,这些复杂的应用程序都已经在代码库或市场中提供。尽管交易者只需几次简单的点击就可以访问这些应用, 但是这些应用也许不能完全满足所有的需要。为此, 交易者可以在 MQL5 的自由职业者板块分派订单,并寻找开发者来为他们编写期望的应用。
preview
利用回归衡量度评估 ONNX 模型

利用回归衡量度评估 ONNX 模型

回归是一项依据未标记样本预测真实数值的任务。 所谓的回归衡量度则是用来评估回归模型的预测准确性。
DoEasy 函数库中的图形(第七十四部分):由 CCanvas 类提供强力支持的基本图形元素
DoEasy 函数库中的图形(第七十四部分):由 CCanvas 类提供强力支持的基本图形元素

DoEasy 函数库中的图形(第七十四部分):由 CCanvas 类提供强力支持的基本图形元素

在本文中,我将重修上一篇文章中构建的图形对象概念,并准备由标准库 CCanvas 类提供强力支持的函数库所有图形对象的基类。