MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
选择交易信号进行订阅的技巧。循序渐进的操作手册
选择交易信号进行订阅的技巧。循序渐进的操作手册

选择交易信号进行订阅的技巧。循序渐进的操作手册

本文提供一种在信号服务中搜寻交易信号的系统性方法,寻找能够平衡获利、风险、交易欲望,并且能适用于各类交易帐户及交易对象的交易信号。
轻松快捷开发 MetaTrader 程序的函数库(第十二部分)。
轻松快捷开发 MetaTrader 程序的函数库(第十二部分)。

轻松快捷开发 MetaTrader 程序的函数库(第十二部分)。

上篇文章中,我们在函数库中为 MQL4 定义了平仓事件,并删除了若干未使用的订单属性。 在此,我们将研究创建 Account 对象,开发帐户对象的集合,并筹备跟踪帐户事件的功能。
preview
神经网络变得轻松(第十一部分):自 GPT 获取

神经网络变得轻松(第十一部分):自 GPT 获取

也许,GPT-3 是目前已有语言类神经网络中最先进的模型之一,它的最大变体可包含 1750 亿个参数。 当然,我们不打算在家用 PC 上创建如此庞然之物。 然而,我们可以看看在我们的操作中能够采用哪种体系解决方案,以及如何从中受益。
价格序列离散化,随机分量和噪音
价格序列离散化,随机分量和噪音

价格序列离散化,随机分量和噪音

我们通常使用烛条或条形图来分析行情,将价格序列切分成规则间隔。 这样的离散化方法不会扭曲行情走势的真实结构吗? 将音频信号离散化为规则间隔是可以接受的解决方案,因为音频信号是随时间变化的函数。 信号本身是取决于时间的幅度。 该信号属性是基本的。
外部指标的提醒和注释。 通过外部扫描进行多货币分析
外部指标的提醒和注释。 通过外部扫描进行多货币分析

外部指标的提醒和注释。 通过外部扫描进行多货币分析

外部指标的多货币和多时间范围分析的提醒。 本文讨论了一种获得外部指标事件信息的方法,而不必将指标添加到图表或自己打开图表。 我们将其称为外部扫描。
更改 MQL4 程序的外部参数而无需重启
更改 MQL4 程序的外部参数而无需重启

更改 MQL4 程序的外部参数而无需重启

本文介绍一种实时更改 MQL4 程序的外部参数而无需重启的方法。
为 MetaTrader 打造的高级 EA 构造器 - botbrains
为 MetaTrader 打造的高级 EA 构造器 - botbrains

为 MetaTrader 打造的高级 EA 构造器 - botbrains

在本文中,我们将展示 botbrains.app 的功能 — 一款无代码开发交易机器人的平台。 若要创建一款交易机器人,您无需编写任何代码 — 只需将必要的模块拖放到规划图上,设置它们的参数,并在它们之间建立连接。
利用 curl 解析 HTML
利用 curl 解析 HTML

利用 curl 解析 HTML

本文论述利用第三方控件的简易 HTML 代码解析库。 特别是,它涵盖了诸多访问数据的可能性,甚至有些用往常的 GET 和 POST 请求都无法检索。 我们将选择一个页面不太大的网站,并尝试从该网站获取感兴趣的数据。
preview
学习为什么、以及如何设计算法交易系统

学习为什么、以及如何设计算法交易系统

本文在介绍了 MQL5 的一些基础知识之后,通过设计一个简单的算法交易系统,向初学者展示了如何运用 MQL 的基础知识设计他们的算法交易系统(智能交易系统)
preview
学习如何基于鳄鱼(Alligator)设计交易系统

学习如何基于鳄鱼(Alligator)设计交易系统

在本文中,我们将完成有关如何基于最流行的技术指标设计交易系统的系列文章。 我们将学习如何创建基于鳄鱼指标的交易系统。
图形界面 IV: 信息界面元件 (第一章)
图形界面 IV: 信息界面元件 (第一章)

图形界面 IV: 信息界面元件 (第一章)

在当前开发阶段,用于创建图形界面的库包含了表单以及可以附加其中的几个控件。之前已经说过,未来的文章中将有一篇专门致力于多窗口模式,现在,我们已经万事具备,我们将在下面的章节中讨论它。在本章中,我们将开发用于创建状态栏和工具提示信息界面元件的类。
preview
从头开始采用 MQL 语言进行深度神经网络编程

从头开始采用 MQL 语言进行深度神经网络编程

本文旨在教导读者如何从头开始采用 MQL4/5 语言构建深度神经网络。
图形界面 II: 主菜单元件 (第四章))
图形界面 II: 主菜单元件 (第四章))

图形界面 II: 主菜单元件 (第四章))

这是图形界面系列第二部分的最后一章。在此,我们将探讨主菜单的创建,演示这个控件的开发以及设置库中类的处理函数以正确回应用户的操作。我们还将讨论如何把上下文菜单附加到主菜单项目中。另外,我们还会提到怎样阻止当前没有激活的元件。
开发交易算法的科学方法
开发交易算法的科学方法

开发交易算法的科学方法

本文探讨了开发交易算法的方法,即使用一致的科学方法来分析可能的价格模式,并基于这些模式构建交易算法。开发的理念是通过实例来展示的。
指标间的数据交换:易如反掌!
指标间的数据交换:易如反掌!

指标间的数据交换:易如反掌!

我们希望创建这样一个环境,即能够提供对附加于图表的指标的数据访问,并具有以下属性:没有数据复制;只需稍加修改我们需要使用的可用方法的代码;MQL 代码优先(当然,我们必须使用 DLL,但我们将只使用一些 C++ 代码字符串)。本文介绍了为 MetaTrader 终端开发程序环境的简易方法,这将提供从其他 MQL 程序访问指标缓冲区的方法。
在 GUI 控件中使用布局和容器: CBox 类
在 GUI 控件中使用布局和容器: CBox 类

在 GUI 控件中使用布局和容器: CBox 类

本文介绍一种基于布局和容器来创建 GUI (图形用户界面) 的替代方法, 使用一个布局管理器 — CBox 类。类 CBox class 是一个辅助控件, 在 GUI 面板里充当一个基本控件的容器。它可令图形面板设计更加简便, 并且在某些场合, 减少编写代码时间。
创建一个在若干工具上交易的 EA 交易程序
创建一个在若干工具上交易的 EA 交易程序

创建一个在若干工具上交易的 EA 交易程序

金融市场中资产的多样化是一个非常旧的概念,并且始终吸引着新入门的交易者。在本文中,作者提出了一个最简单的方法用以构建一个多货币 EA 交易程序,以便对这种方向的交易策略提供一个初步介绍。
移动极小化极大:技术分析的新指标及其在 MQL5 中的实施
移动极小化极大:技术分析的新指标及其在 MQL5 中的实施

移动极小化极大:技术分析的新指标及其在 MQL5 中的实施

在下文中,我将基于 Z.G.Silagadze 的论文《移动极小化极大:技术分析的新指标》说明移动极小化极大指标的实施过程。指标的理念基于对量子隧穿现象的模拟,量子隧穿现象由 G. Gamov 在 α-衰变理论中提出。
图形界面 XI: 渲染控件 (统合构建14.2)
图形界面 XI: 渲染控件 (统合构建14.2)

图形界面 XI: 渲染控件 (统合构建14.2)

在新版本的函数库中, 所有控件将在 OBJ_BITMAP_LABEL 类型的单独图形对象上绘制。我们还将继续描述代码的优化: 讨论函数库核心类的变化。
研究CCanvas类如何绘制透明的图形对象
研究CCanvas类如何绘制透明的图形对象

研究CCanvas类如何绘制透明的图形对象

你是不是想要更加好看的移动平均线?你想要在终端中绘制更加漂亮的而不是简单的实心矩形吗?终端中能够绘制出更有吸引力的图形。这可以通过CCanvas类来实现,该类用于创建自定义图形对象。用这个类你能够实现透明化,混合色以及通过重叠和混合颜色产生透明的效果。
preview
MetaTrader 5 中的 WebSockets

MetaTrader 5 中的 WebSockets

在引入随 MQL5 API 更新而提供的网络功能之前,MetaTrader 程序与基于 WebSocket 的服务连接和接口的能力受到许多限制。当然,这一切都改变了,在本文中,我们将探讨纯 MQL5 中 WebSocket 库的实现。WebSocket 协议的简要描述将与如何使用生成的库的逐步指南一起给出。
MQL5 Cookbook: 获取仓位属性
MQL5 Cookbook: 获取仓位属性

MQL5 Cookbook: 获取仓位属性

在本文中,我们将创建一个脚本来获得所有的仓位属性,并用对话框向用户显示它们。通过运行这个脚本,您可以从外部参数下拉列表的两种模式中选择:只看当前交易品种的仓位属性,或者查看所有交易品种的属性。
如何基于HTML和CSV报表可视化多币种交易历史
如何基于HTML和CSV报表可视化多币种交易历史

如何基于HTML和CSV报表可视化多币种交易历史

自推出以来,MetaTrader 5提供了多货币测试选项,也许交易者经常使用这个功能。然而,这种功能并不是万能的。本文介绍了几种基于HTML和CSV交易历史报告的图表图形绘制程序,多货币交易可以在多个子窗口以及使用动态切换命令的一个窗口中并行分析。
自动交易的传说: 是少或多?
自动交易的传说: 是少或多?

自动交易的传说: 是少或多?

两年前,在 "The Last Crusade - 最新的改革" 我们回顾了一个相当有趣但目前没有被广泛使用的显示市场信息的方法 - 点数图。现在,我建议您尝试写一个基于检测点数图范式的自动交易。
preview
CCI 指标。 升级和新特征

CCI 指标。 升级和新特征

在本文中,我将研究升级 CCI 指标的可能性。 此外,我将对指标进行修改。
preview
神经网络在交易中的实际应用 (第二部分). 计算机视觉

神经网络在交易中的实际应用 (第二部分). 计算机视觉

利用计算机视觉可以训练神经网络对价格图表和指标的直观表示。这种方法可以对整个复杂的技术指标进行更广泛的操作,因为不需要将它们以数字形式输入神经网络。
自定义图形控件。第 2 部分 控件库
自定义图形控件。第 2 部分 控件库

自定义图形控件。第 2 部分 控件库

自定义图形控件系列的第二篇文章引入了一个控件库,而该控件库旨在处理程序(EA 交易、脚本、指标)与用户交互过程中产生的主要问题。库中包含大量的类(CInputBox、CSpinInputBox、CCheckBox、CRadioGroup、CVSсrollBar、CHSсrollBar、CList、CListMS、CComBox、CHMenu、CVMenu、CHProgress、CDialer、CDialerInputBox、CTable)及其使用示例。
如何在 MQL 4 中开发可靠安全的交易机器人
如何在 MQL 4 中开发可靠安全的交易机器人

如何在 MQL 4 中开发可靠安全的交易机器人

本文旨在处理开发和使用 Expert Advisor 过程中出现的最常见的错误。还将介绍一个安全的自动交易系统的示例。
Expert Advisor 参数的测试(优化)技术和一些选择条件
Expert Advisor 参数的测试(优化)技术和一些选择条件

Expert Advisor 参数的测试(优化)技术和一些选择条件

我们可以毫不费力地找到测试的圣杯,然而,要摆脱它却困难得多。 本文重点介绍 Expert Advisor 操作参数的选择,以及在最大限度利用终端性能和最大限度减少终端用户负载的情况下对优化和测试结果进行自动化分组处理。
轻松快捷开发 MetaTrader 程序的函数库 (第二十六部分):处理延后交易请求 - 首次实现 (开仓)
轻松快捷开发 MetaTrader 程序的函数库 (第二十六部分):处理延后交易请求 - 首次实现 (开仓)

轻松快捷开发 MetaTrader 程序的函数库 (第二十六部分):处理延后交易请求 - 首次实现 (开仓)

在本文中,我们将在订单和仓位的魔幻数字中存储一些数据,并开始实现延后请求。 为了验证这一概念,我们在收到服务器错误并需要等待与重复发送请求时,创建第一个测试延后请求来开仓。
计量经济学 EURUSD 先行预测
计量经济学 EURUSD 先行预测

计量经济学 EURUSD 先行预测

本文主要讲述使用 EViews 软件对 EURUSD 的先行预测以及使用 EViews 语言程序对预测结果进行的进一步评估。 此预测采用回归模型,通过专为 MetaTrader 4 开发的 Expert Advisor 进行评估。
preview
连续前行优化 (第三部分): 将机器人适配为自动优化器

连续前行优化 (第三部分): 将机器人适配为自动优化器

第三部分充当前两部分之间的桥梁:它阐述的是第一篇文章中研究的 DLL,以及第二篇文章中论述的报告下载对象之间的交互机制。 我们将分析从 DLL 导入的包装类的创建过程,该类可依据交易历史记录形成 XML 文件。 我们还将研究一种与此包装器进行交互的方法。
preview
重构MQL5中的经典策略(第三部分):富时100指数预测

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

在本系列文章中,我们将重新审视一些知名的交易策略,以探究是否可以利用AI来改进这些策略。在今天的文章中,我们将研究富时100指数,并尝试使用构成该指数的部分个股来预测该指数。
preview
构建自动运行的 EA(第 05 部分):手工触发器(II)

构建自动运行的 EA(第 05 部分):手工触发器(II)

今天,我们将看到如何创建一个在自动模式下简单安全地工作的智能系统。 在上一篇文章的末尾,我建议允许手工操作 EA 是合适的,至少在一段时间内。
在 MetaTrader 5 中应用费歇尔变换和逆费歇尔变换进行市场分析
在 MetaTrader 5 中应用费歇尔变换和逆费歇尔变换进行市场分析

在 MetaTrader 5 中应用费歇尔变换和逆费歇尔变换进行市场分析

我们知道一个市场周期的概率密度函数 (PDF) 并不会让我们想到高斯分布,而是一种正弦波的概率密度函数,并且大多数指标假定市场周期的概率密度函数为高斯分布,我们需要一种方式来纠正。解决方法是使用费歇尔变换。费歇尔变换将任何波形的概率密度函数转换为近似的高斯分布。本文介绍费歇尔变换和逆费歇尔变换的算法以及它们在交易中的应用。介绍和评估了一个基于逆费歇尔变换的专有交易模块。
基于大众交易系统和交易机器人优化点金术的 Expert Advisor
基于大众交易系统和交易机器人优化点金术的 Expert Advisor

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

本文介绍最简单交易系统的实现算法。本文对交易新手和 EA 编写者比较有帮助。
如何缩短 EA 代码以让程序更加简单同时减少错误
如何缩短 EA 代码以让程序更加简单同时减少错误

如何缩短 EA 代码以让程序更加简单同时减少错误

使用本文介绍的简单概念,负责在 MQL4 中开发自动交易系统的人员能够通过缩短代码来简化现有交易系统以及缩短开发新系统所需的时间。
MеtaTrader5 图表上的水平示意图
MеtaTrader5 图表上的水平示意图

MеtaTrader5 图表上的水平示意图

水平示意图在终端图表上并不常见,但在很多任务中仍然会用到它们,例如在开发显示特定周期的交易量或价格分布的指标时,当创建各种版本的市场深度时。 本文研究构建和管理水平示意图作为图形基元的数组。
利用标准库类创建您自己的“市场报价”
利用标准库类创建您自己的“市场报价”

利用标准库类创建您自己的“市场报价”

新型 MetaTrader 5 客户端与 MQL5 语言提供了向交易者展示可视信息的新机遇。本文中,我们会讲到一系列通用且可扩展的类,处理图表上方任意文本信息的组织与显示工作。“市场报价”指标的示例亦有提供。
在 MetaTrader 4 中比较基因演算方法和简单搜索
在 MetaTrader 4 中比较基因演算方法和简单搜索

在 MetaTrader 4 中比较基因演算方法和简单搜索

文章比较了使用基因演算方法和简单搜索获取的智能交易的时间和结果。