MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
图形界面 IV: 多窗口模式与优先级系统 (第二章)
图形界面 IV: 多窗口模式与优先级系统 (第二章)

图形界面 IV: 多窗口模式与优先级系统 (第二章)

在本章中,我们将扩展库的实现,为MQL应用程序创建多窗口界面。我们还将开发一个优先级系统,用于管理鼠标左键对图形对象的点击,它是用于避免元件对用户操作没有回应的问题的。
图形界面 IV: 信息界面元件 (第一章)
图形界面 IV: 信息界面元件 (第一章)

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

在当前开发阶段,用于创建图形界面的库包含了表单以及可以附加其中的几个控件。之前已经说过,未来的文章中将有一篇专门致力于多窗口模式,现在,我们已经万事具备,我们将在下面的章节中讨论它。在本章中,我们将开发用于创建状态栏和工具提示信息界面元件的类。
图形界面III:简单与多功能按钮组(第二章)
图形界面III:简单与多功能按钮组(第二章)

图形界面III:简单与多功能按钮组(第二章)

本系列的第一章是关于简单和多功能按钮的,第二篇文章将致力于相互关联的按钮组,这样在应用程序中就可以创建元件,让用户从一个集合(组)中选择一个选项。
通用智能交易系统:事件模型和交易策略原型(第二章)
通用智能交易系统:事件模型和交易策略原型(第二章)

通用智能交易系统:事件模型和交易策略原型(第二章)

本文是通用智能交易模型系列文章的又一篇。这一部分详细介绍了基于数据集中处理的原始事件模型,并考虑了交易引擎CStrategy基类的结构。
图形界面III:简单与多功能按钮(第一章)
图形界面III:简单与多功能按钮(第一章)

图形界面III:简单与多功能按钮(第一章)

让我们探讨按钮控件。我们将讨论几个用于创建简单按钮,扩展功能按钮(图标按钮和分割按钮)以及关联按钮(按钮组和单选按钮)的类的实例。另外,我们还将在已有的类中增加一些内容以扩展它们的功能。
使用比尔威廉姆系统的交易信号模块
使用比尔威廉姆系统的交易信号模块

使用比尔威廉姆系统的交易信号模块

本文描述了比尔威廉姆交易系统的规则,开发一个在图表上搜索和标记该系统模式的MQL5应用程序模块,根据找到的模式进行交易,并且也展示了在各种交易品种上的测试结果。
区域方法
区域方法

区域方法

"区域方法(area method)"交易系统的运行是基于对RSI震荡指标读取的一种较为少见的解释。使区域方法可视化的指标,以及使用此系统交易的EA交易,在这里都会详细讨论。本文还提供了关于EA交易在各种交易品种,时段和区域数值中测试的详细发现。
图形界面 II: 分隔线和上下文菜单元件 (第二章)
图形界面 II: 分隔线和上下文菜单元件 (第二章)

图形界面 II: 分隔线和上下文菜单元件 (第二章)

在本文中, 我们将会创建分隔线元件. 它可以用作独立的界面元件, 也可以作为许多其他元件的一部分. 之后, 我们就拥有了开发上下文菜单的全部所需, 在本文中会加以详细介绍. 另外, 我们还会对类作必要的扩充, 即用于保存应用程序中图形界面所有元件的指针库.
图形界面 II: 主菜单元件 (第四章))
图形界面 II: 主菜单元件 (第四章))

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

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

图形界面 II: 设置库的事件处理函数 (第三章)

之前的文章中包含了用于创建主菜单构成部分类的实现. 现在, 是时候在主基础类和创建控件的类中关注事件处理函数了. 我们将特别关注根据鼠标光标的位置来管理图表的状态.
通用智能交易系统:交易策略的模式(第一章)
通用智能交易系统:交易策略的模式(第一章)

通用智能交易系统:交易策略的模式(第一章)

任何一个智能交易系统(EA)的开发人员,无论编程技能如何,每天都面临着同样的交易目标和算法问题的困扰,即应该如何建立一个可靠的交易系统。本文介绍CStrategy交易引擎,它可以给出这些任务的解决方案,并且向用户提供一种用于描述自定义交易思想的简便机制。
向指标或者EA中快速添加控制面板
向指标或者EA中快速添加控制面板

向指标或者EA中快速添加控制面板

你是不是觉得需要向你的指标或者EA中添加图形面板来提升配置参数的速度和便捷性?在本文中,你将学会如何一步一步在你的MQL4/MQL5程序中实现输入参数的交互面板。
MetaTrader 5 已具备锁仓账户系统
MetaTrader 5 已具备锁仓账户系统

MetaTrader 5 已具备锁仓账户系统

为了扩大零售外汇交易者的可能性,我们新增第二种账户系统 - 锁仓系统。现在,每个交易品种可以有多位持仓,包括反向持仓。这就为实现基于所谓“锁定”的交易策略铺平了道路 - 如果价格移动方向与交易者相反,那么他们就可以新建一个反向持仓。
图形界面 II: 菜单项元件 (第一章)
图形界面 II: 菜单项元件 (第一章)

图形界面 II: 菜单项元件 (第一章)

在本系列文章的第二部分中, 我们将向您展示界面元件开发的详细过程, 例如主菜单和上下文菜单. 我们还会提到元件的绘制以及为此开发一个特别的类. 我们还将深度讨论程序事件管理, 包括自定义事件的问题.
图形界面 I: 在MetaTrader 4终端中使用不同类型的程序来测试界面库 (第五章)
图形界面 I: 在MetaTrader 4终端中使用不同类型的程序来测试界面库 (第五章)

图形界面 I: 在MetaTrader 4终端中使用不同类型的程序来测试界面库 (第五章)

在图形界面系列的第一部分前面的章节中, 我们已经丰富了表单类, 可以通过按下其中的控件来管理表单. 在本文中, 我们将使用不同类型的MQL程序, 例如指标和脚本程序, 来测试我们的成果. 因为此函数库被设计为跨平台的, 因而它可以用于所有MetaTrader平台, 我们也会在MetaTrader 4中测试它.
图形界面 I:控件构成(第二章)
图形界面 I:控件构成(第二章)

图形界面 I:控件构成(第二章)

在本文中我们将创建第一个图形界面的主元素 — 控件的一个窗体。多个控件可以以任何组合被附加到此窗体的任何地方。
图形界面 I:库结构(第一章)
图形界面 I:库结构(第一章)

图形界面 I:库结构(第一章)

本文是另外一系列图形界面开发相关文章的开端。当前,还没有能够在MQL应用中快速而便捷的创建高质量图形界面的独立代码库。我所说图形界面是指我们熟悉的操作系统中的图形界面。
图形界面 I: 用于表单按钮的函数与删除界面元素 (第四章)
图形界面 I: 用于表单按钮的函数与删除界面元素 (第四章)

图形界面 I: 用于表单按钮的函数与删除界面元素 (第四章)

在本文中, 我们将继续开发CWindow类, 增加它的类方法, 可以通过点击它的控件来对它进行管理. 我们将可以通过表单按钮来关闭程序, 也会实现表单的最小化和最大化功能.
图形界面 I: 图形界面的动画 (第三章)
图形界面 I: 图形界面的动画 (第三章)

图形界面 I: 图形界面的动画 (第三章)

在前面的文章中, 我们开始开发了一个容纳控件的表单类. 在本文中, 我们将继续丰富此表单类的内容, 增加在图表区域内移动表单的方法. 接着我们会把这个界面组件与核心库整合. 而且我们会实现这样的功能, 在鼠标光标移动到表单之上时, 表单控件会改变它的颜色.
MQL5 初学者: 图形对象的防破坏保护
MQL5 初学者: 图形对象的防破坏保护

MQL5 初学者: 图形对象的防破坏保护

如果图形控制面板被其他人删除或者修改了, 您的程序应该怎样做呢?在本文中, 我们将演示如何使图表上的对象摆脱"无主"状态, 把它们重新命名也不会失去控制, 以及在应用程序退出时程序化地删除对象.
机器学习模型的变量评估和选择
机器学习模型的变量评估和选择

机器学习模型的变量评估和选择

本文重点介绍机器学习模型中输入变量(预测因子)的选择,预处理以及评估的相关细节。同时将探讨新的方法和预测因子深度分析及其对模型过度拟合可能的影响。模型的总体效果很大程度上取决于这一阶段的结果。我们将分析两个包,它们分别提供预测因子选择的新老方法。
单纯使用 MQL5 语言处理 ZIP 档案
单纯使用 MQL5 语言处理 ZIP 档案

单纯使用 MQL5 语言处理 ZIP 档案

MQL5 语言在不断进化, 持续地增加了用于处理数据的新特性. 正因为这些创新, 现在我们可以在不引入第三方DLL库的情况下, 只使用通常的MQL5工具就可以操作ZIP档案了. 本文专注于具体的实现, 并且提供了CZip类作为例子, 它是一个用于读取, 创建和修改ZIP档案的通用工具.
纺锤形图表指标
纺锤形图表指标

纺锤形图表指标

本文介绍纺锤形图表的绘制及其在交易策略和智能交易系统中的应用。首先我们讨论图表的展现,绘制记忆和日本蜡烛图的关系。其次我们分析下指标在MQL5语言中的实现源代码。最后我们测试基于该指标和由此构建的交易策略的EA。
MQL5中的错误处理和日志记录
MQL5中的错误处理和日志记录

MQL5中的错误处理和日志记录

本文着力介绍和软件错误处理相关的常见问题。另外,介绍了日志项及用MQL5工具包实现日志记录。
在MQL5程序中使用断言
在MQL5程序中使用断言

在MQL5程序中使用断言

本文介绍MQL5语言中断言的使用。给出了关于断言机制的两个例子以及实现断言的一些总体指导。
市场理论
市场理论

市场理论

逻辑上完整的市场理论应该包含所有品类的商品和服务市场,像外汇这种微观和宏观市场到目前为止还不包括其中。本文介阐释基于盈利分析的新市场理论的精髓。揭示了当前价格变化的运行机制和原则,即通过形成能对实际价格产生控制影响的虚拟价格链,来找到最优定价。市场趋势的形成和改变机制在这里将得到阐释。
第三代神经网络:深度网络
第三代神经网络:深度网络

第三代神经网络:深度网络

本文致力于介绍一种新的有前景的机器学习方向 — 深度学习或者更准确的说,深度神经网络。简要回顾第二代神经网络,它们的连结架构和主要类型,学习的方法和规则以及缺点,随后介绍第三代神经网络的发展,它们的主要类型,特点和学习方法。创建并训练一个深度神经网络,由真实数据通过堆栈式自动编码器权重进行初始化。从输入数据的选择到数量化求解的所有步骤都会详细讲述。文章的最后部分包含一个深度神经网络的EA实例,其中带有一个MQL4/R的内置指标。
MQL5 酷客宝典: 实现您自己的市场深度
MQL5 酷客宝典: 实现您自己的市场深度

MQL5 酷客宝典: 实现您自己的市场深度

本文展示了如何利用市场深度 (DOM) 编程, 并介绍了 CMarketBook 类的操作原理, 它可扩展 MQL5 标准库的类, 并提供使用 DOM 的便利方法。
使用 MQL5 绘制阻力和支撑级别
使用 MQL5 绘制阻力和支撑级别

使用 MQL5 绘制阻力和支撑级别

本文介绍一种查找四个极点并在此基础上绘制支撑和阻力级别的方法。为了在当前货币对的图表上查找极点, 使用 RSI 指标。作为例子, 我们提供了一款指标的代码显示支撑和阻力级别。
如何在莫斯科交易所安全地使用您的 EA 进行交易
如何在莫斯科交易所安全地使用您的 EA 进行交易

如何在莫斯科交易所安全地使用您的 EA 进行交易

本文深入研究了交易方式, 通过莫斯科交易所衍生产品市场的例子来说明如何确保在股票和低流动性市场中交易操作的安全性。它带来了一些实践方法, 其交易原理在文章 "Principles of Exchange Pricing through the Example of Moscow Exchange's Derivatives Market - 莫斯科交易所衍生产品市场为例的定价原则" 里描述。
MQL5秘笈之:采用关联数组或字典实现快速数据访问
MQL5秘笈之:采用关联数组或字典实现快速数据访问

MQL5秘笈之:采用关联数组或字典实现快速数据访问

本文介绍一种能够通过key来访问元素的特殊算法。任何基本数据类型都可以被当作key。例如它可以是一个字符串或一个整型值。这样的数据容器通常被称为字典或这关联数组。这为解决问题提供了便捷。
在 GUI 控件中使用布局和容器: CBox 类
在 GUI 控件中使用布局和容器: CBox 类

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

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

使用 CCanvas 类绘制刻度表盘

我们可以在汽车和飞机, 在工业产品以及在生活中随处发现刻度表盘。它们被用在所有需要对数值控制行为进行快速响应的领域。这篇文章描述用于 MetaTrader 5 的刻度表盘程序库。
在 MetaTrader 5 里使用 HedgeTerminal (对冲终端) 面板进行双向交易和仓位对冲, 第二部分
在 MetaTrader 5 里使用 HedgeTerminal (对冲终端) 面板进行双向交易和仓位对冲, 第二部分

在 MetaTrader 5 里使用 HedgeTerminal (对冲终端) 面板进行双向交易和仓位对冲, 第二部分

本文描述了一种新的方法来进行仓位对冲, 并在 MetaTrader 4 和 MetaTrader 5 的用户之间就此事的争辩划清界线。这是: "在 MetaTrader 5 里使用 HedgeTerminal (对冲终端) 面板进行双向交易和仓位对冲" 第一部分的延续。在第二部分里, 我们讨论自定义 EA 与 HedgeTerminalAPI 的集成, 其作为特别的可视化程序库, 设计用于在一个舒适的软件环境里作为工具进行便利的双向交易仓位管理。
模糊逻辑介绍
模糊逻辑介绍

模糊逻辑介绍

模糊逻辑扩展了我们的数理逻辑和集合论的界限。本文揭示了模糊逻辑的基本原理, 同时描述使用马丹尼型和关野型的两种推理系统。提供的例程将描述如何使用 MQL5 版本的模糊库来实现这两种类型的系统。
在MetaTrader5中创建交互应用来展现RSS订阅
在MetaTrader5中创建交互应用来展现RSS订阅

在MetaTrader5中创建交互应用来展现RSS订阅

本文中我们将讨论创建一个应用来展现RSS订阅的可能性。本文将介绍如何使用MetaTrader 5的标准类库来创建交互应用。
用随机森林预测趋势
用随机森林预测趋势

用随机森林预测趋势

本文使用Rattle包自动进行模式识别,来预测外汇市场的多头和空头。本文对初学者和有经验的交易者都适用。
研究CCanvas类如何绘制透明的图形对象
研究CCanvas类如何绘制透明的图形对象

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

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

使用MQL4和MQL5绘制基于分形指标的趋势线

本文介绍一种使用MQL4和MQL5语言,自动绘制基于分形指标趋势线的方法。本文以比较的视角,提供两种语言的解决方案。使用最近的两个分形来绘制趋势线。
使用面向对象的方法来编写EA的模式
使用面向对象的方法来编写EA的模式

使用面向对象的方法来编写EA的模式

本文介绍一种使用MQL5语言来编写多模式自动交易程序的方法。每一种模式都使用面向对象的方法来实现。不仅给出不同模式下类的层次结构,还给出用于测试的类的实例。多模式自动交易程序以MQL5语言实现,它应该考虑EA的每一种执行模式。创建用于确定EA模式的函数和枚举值。