MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
使用限价订单替代止盈且无需修改 EA 的原始代码
使用限价订单替代止盈且无需修改 EA 的原始代码

使用限价订单替代止盈且无需修改 EA 的原始代码

使用限价订单来替代传统的止盈是论坛讨论的长期话题。 这种方法的优点是什么?如何在您的交易中实施? 在本文中,我将向您介绍我对此主题的看法。
在 MetaTrader 5 里使用 HedgeTerminal (对冲终端) 面板进行双向交易和仓位对冲, 第一部分
在 MetaTrader 5 里使用 HedgeTerminal (对冲终端) 面板进行双向交易和仓位对冲, 第一部分

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

本文描述了一种新的方法来进行仓位对冲,并在 MetaTrader 4 和 MetaTrader 5 的用户之间就此事的争辩划清界线。用通俗地语言描述可靠的对冲算法,并用简单图表和图例示意。本文专述新的 HedgeTerminal (对冲终端) 面板, 实质上是用于 MetaTrader 5 的全功能交易终端。使用 HedgeTerminal 和它提供的虚拟化交易, 仓位管理与 MetaTrader 4 的方式类似。
MQL5酷客宝典 - 滑动通道编程
MQL5酷客宝典 - 滑动通道编程

MQL5酷客宝典 - 滑动通道编程

本文提出了一种用于等距通道系统的编程方法,在此将会探讨构建这种通道的细节,并且提供了通道的分类,提出了一个统一的滑动通道方法。在代码的实现中使用了面向对象的编程(OOP)。
如何使用 EA 遵照您的规则拷贝信号?
如何使用 EA 遵照您的规则拷贝信号?

如何使用 EA 遵照您的规则拷贝信号?

当您订阅了一个信号, 也许会发生这样的情形: 您的交易账户杠杆为 1:100, 而提供者的杠杆为 1:500, 且使用最小手数, 而您的账户余额大约相等 — 但拷贝比率只有 10% 到 15%。本文介绍在这种情况下如何增加拷贝比率。
preview
构建自动运行的 EA(第 02 部分):开始编码

构建自动运行的 EA(第 02 部分):开始编码

今天,我们将看到如何创建一个在自动模式下简单安全地工作的智能系统。 在上一篇文章中,我们讨论了任何人在继续创建自动交易的智能系统之前需要了解的第一步。 我们首先研究了概念和结构。
图形界面 II: 菜单项元件 (第一章)
图形界面 II: 菜单项元件 (第一章)

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

在本系列文章的第二部分中, 我们将向您展示界面元件开发的详细过程, 例如主菜单和上下文菜单. 我们还会提到元件的绘制以及为此开发一个特别的类. 我们还将深度讨论程序事件管理, 包括自定义事件的问题.
使用 MQL5.0 社区频道和群聊天
使用 MQL5.0 社区频道和群聊天

使用 MQL5.0 社区频道和群聊天

MQL5.com 网站汇集了来自世界各地的交易者。 用户发表文章、共享免费代码、在市场上销售产品、执行自由职业订单、以及跟单信号。 您可以在论坛、交易者聊天和元交易者频道中与他们交流。
SQL 与 MQL5: 与 SQLite 数据库集成
SQL 与 MQL5: 与 SQLite 数据库集成

SQL 与 MQL5: 与 SQLite 数据库集成

本文的目的,是那些打算在他们的项目中使用 SQL 的开发者。它解释了 SQLite 的功能和优势。本文不需要特别的 SQLite 函数知识, 当然对 SQL 的最小理解将是有益的。
监视多币种的交易信号 (第二部分) : 应用程序可视部分的实现
监视多币种的交易信号 (第二部分) : 应用程序可视部分的实现

监视多币种的交易信号 (第二部分) : 应用程序可视部分的实现

在上一篇文章中,我们已创建了应用程序框架,其可作为进一步操作的基础。 在这一部分中,我们将继续开发:创建应用程序的可视部分,并配置界面元素的基本交互。
MQL5 Cookbook: 交易历史和取得仓位信息的函数库
MQL5 Cookbook: 交易历史和取得仓位信息的函数库

MQL5 Cookbook: 交易历史和取得仓位信息的函数库

现在是时候简单总结一下之前关于仓位属性文章的内容了,在本文中,我们会额外创建几个函数来取得只能通过访问交易历史才能获得的属性,我们也会对数据结构更加熟悉,这使我们可以用更加方便的方法访问仓位和交易品种属性。
图形界面 IV: 多窗口模式与优先级系统 (第二章)
图形界面 IV: 多窗口模式与优先级系统 (第二章)

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

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

交易策略的色彩优化

在本文中,我们将进行一个实验:我们将使用颜色优化结果。颜色由三个参数决定:红色、绿色和蓝色(RGB)的级别。还有其他的颜色编码方法,它们也使用三个参数。因此,可以将三个测试参数转换为一种颜色,它直观地表示值,阅读本文以了解这种表示是否有用。
监视多币种的交易信号(第五部分):复合信号
监视多币种的交易信号(第五部分):复合信号

监视多币种的交易信号(第五部分):复合信号

在第五篇文章是与创建交易信号监视器有关,我们将研究复合信号,并实现必要的功能。 在早前版本里,我们用到了简单信号,例如 RSI、WPR 和 CCI,并且还引入了自定义指标的可能性。
通过指定的幻数计算总持仓量的最佳方法
通过指定的幻数计算总持仓量的最佳方法

通过指定的幻数计算总持仓量的最佳方法

本文探讨了与指定交易品种和幻数有关的总持仓量的计算问题。所提议的方法仅请求交易历史记录的最少必要部分,在总持仓量等于零时查找最接近的时间,并用最新的交易进行计算。还考虑了客户端全局变量的处理。
寻找市场形态的计量经济学方法:自相关,热点图和散点图
寻找市场形态的计量经济学方法:自相关,热点图和散点图

寻找市场形态的计量经济学方法:自相关,热点图和散点图

本文研讨季节性特征的扩展研究:自相关热点图和散点图。 本文之目的是展示“市场记忆”的季节性,它通过任意顺序增量的最大相关性来表达。
跨平台智能交易程序: 概论
跨平台智能交易程序: 概论

跨平台智能交易程序: 概论

本文详细介绍了一种可以更快捷开发跨平台 EA 的方法。其所倡导的方法是将两个版本共享的功能整合到一个单独的类, 并将不兼容的功能分割到派生类。
指标喷发整体特征的计算
指标喷发整体特征的计算

指标喷发整体特征的计算

指标喷发是市场研究中较少涉及的一个领域。这主要是由于时变数据超大数组的处理造成的分析难度。现有的图形分析过于资源密集,并由此触发了一种采用喷发时间序列的俭省算法的发展。本文要论述的,就是如何利用喷发整体特征的研究,来替代可视(直观图像)分析。无论是交易者,还是自动化交易系统的开发者,都会感兴趣。
图形界面 VI: 滑动条与双重滑动条控件(第二章)
图形界面 VI: 滑动条与双重滑动条控件(第二章)

图形界面 VI: 滑动条与双重滑动条控件(第二章)

在前一篇文章中,我们已经使用四个常用图形界面控件加强我们的开发库:复选框,编辑框,带有复选框的编辑框,以及复选组合框。第六部分的第二章将致力于滑动条与双重滑动条控件的开发。
使用图形界面处理优化结果
使用图形界面处理优化结果

使用图形界面处理优化结果

这是处理和分析优化结果想法的续篇,这一次,我们的目标是选择100个最佳的优化结果并且在图形用户界面(GUI)表格中显示它们。用户将可以在优化结果中选择一行而在独立的图表中得到多交易品种余额和回撤图。
统计学基础
统计学基础

统计学基础

每名交易者都使用某种统计计算进行工作,即使是基础分析的支持者也是如此。本文向您介绍统计学的基础及其基本要素,并说明统计学在决策中的重要性。
轻松快捷开发 MetaTrader 程序的函数库 (第 三十二部分) :延后交易请求 - 在特定条件下挂单
轻松快捷开发 MetaTrader 程序的函数库 (第 三十二部分) :延后交易请求 - 在特定条件下挂单

轻松快捷开发 MetaTrader 程序的函数库 (第 三十二部分) :延后交易请求 - 在特定条件下挂单

我们继续功能开发,允许用户利用延后请求进行交易。 在本文中,我们将实现在特定条件下挂单的功能。
基于自定义指标的交易信号生成器
基于自定义指标的交易信号生成器

基于自定义指标的交易信号生成器

如何根据自定义指标创建一个交易信号生成器?如何创建自定义指标?如何访问自定义指标数据?我们为什么需要 IS_PATTERN_USAGE(0) 结构和模型 0?
MQL5 秘籍之:OCO订单
MQL5 秘籍之:OCO订单

MQL5 秘籍之:OCO订单

任何交易者的交易活动都会包含各种交易机制和内在联系,包括订单之间的关系。本文提出一种处理OCO订单的解决方案。将广泛采用标准类库来实现,同时也会新建一些数据类型。
建立自动新闻交易程序
建立自动新闻交易程序

建立自动新闻交易程序

这是 "Another MQL5 OOP"(另一个 MQL5 OOP 类)一文的续篇,该文向您展示了如何从头建立一个简单的面向对象的 EA 交易程序并向您提供了有关面向对象编程的某些提示。今天,我向您展示开发一个能够依据新闻进行交易的 EA 所需的技术基础。我的目标是继续向您提供有关面向对象编程的理念,同时也在这个系列的文章中涵盖新的主题——处理文件系统。
跨平台智能交易程序: 重用来自 MQL5 标准库的控件
跨平台智能交易程序: 重用来自 MQL5 标准库的控件

跨平台智能交易程序: 重用来自 MQL5 标准库的控件

在 MQL5 标准库里存在的一些控件被证明在 MQL4 版本的跨平台智能交易程序里十分有用。本文涉及令某些 MQL5 标准库的控件与 MQL4 编译器兼容的方法。
MQL5 Cookbook: 在EA交易中使用指标来设置交易条件
MQL5 Cookbook: 在EA交易中使用指标来设置交易条件

MQL5 Cookbook: 在EA交易中使用指标来设置交易条件

在本文中,我们将继续修改之前在MQL5 Cookbook系列文章中的EA交易,这一次,EA交易将进一步增强,使用指标来检查建仓条件。为了增加点乐趣,我们会在外部参数中创建一个下拉列表,可以从三个交易指标中选择一个。
MQL5 酷宝书 - 移动通道交易信号
MQL5 酷宝书 - 移动通道交易信号

MQL5 酷宝书 - 移动通道交易信号

本文描述的过程, 是开发和实现基于移动通道发送信号的类。每个信号版本均随带交易策略和测试结果。标准库的类用于创建派生类。
研究烛条分析技术(第一部分):检查现存形态
研究烛条分析技术(第一部分):检查现存形态

研究烛条分析技术(第一部分):检查现存形态

在本文中,我们将研讨流行的烛条形态,并尝试探索它们在当今市场中是否仍然相关和有效。 烛条分析出现在 20 多年前,从此后变得非常流行。 众多交易者认为日本烛条是最方便、易懂的资产价格可视化形式。
preview
处理时间(第一部分):基础

处理时间(第一部分):基础

能够简化和澄清时间、经纪商时移、以及夏季或冬季变更的时间处理函数和代码片段。 准确的时序也许是交易中的一个关键因素。 在当前钟点,伦敦或纽约的证券交易所是否已经或尚未开市,外汇交易的交易时间何时开始和结束? 对于一名实况手工交易者来说,这不算是个大问题。
以线性回归为例说明指标加速的 3 种方法
以线性回归为例说明指标加速的 3 种方法

以线性回归为例说明指标加速的 3 种方法

本文讨论指标算法优化方法。每个人都会找到最适合自己的方法。本文介绍了三种方法。其中一个非常简单,另一个需要扎实的数学知识,最后一个需要一些智慧。使用指标或 MetaTrader5 客户端设计功能来实现其中的大多数方法。这些方法通用性强,不仅可用于加快线性回归计算,也可用于很多其他指标。
调试 MQL5 程序
调试 MQL5 程序

调试 MQL5 程序

本文主要针对那些已经学过这种语言、但又没有完全掌握该语言开发的程序员。文中给出一些调试技巧,并介绍作者与众多其他程序人员的经验。
图形界面 I: 图形界面的动画 (第三章)
图形界面 I: 图形界面的动画 (第三章)

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

在前面的文章中, 我们开始开发了一个容纳控件的表单类. 在本文中, 我们将继续丰富此表单类的内容, 增加在图表区域内移动表单的方法. 接着我们会把这个界面组件与核心库整合. 而且我们会实现这样的功能, 在鼠标光标移动到表单之上时, 表单控件会改变它的颜色.
作为技术分析工具的 MTF 指标
作为技术分析工具的 MTF 指标

作为技术分析工具的 MTF 指标

大多数交易者都同意,当前的市场状态分析从评估更高的图表时间框架开始。该分析向下执行,以缩短执行交易的时间范围。这种分析方法似乎是成功交易的专业方法的强制性部分。在本文中,我们将讨论多时间段指标及其创建方法,并提供MQL5代码示例。除了对优缺点进行综合评价外,我们还将提出一种采用MTF模式的新指标方法。
轻松快捷开发 MetaTrader 程序的函数库(第十部分):与 MQL4 的兼容性 - 开仓和激活挂单的事件
轻松快捷开发 MetaTrader 程序的函数库(第十部分):与 MQL4 的兼容性 - 开仓和激活挂单的事件

轻松快捷开发 MetaTrader 程序的函数库(第十部分):与 MQL4 的兼容性 - 开仓和激活挂单的事件

在之前的文章中,我们已着手创建一个大型跨平台函数库,简化 MetaTrader 5 和 MetaTrader 4 平台程序的开发。 在第九部分中,我们开始改进 MQL4 的库类。 在此,我们将继续改进函数库,确保其与 MQL4 的完全兼容。
测试当交易货币对篮子时出现的形态第二部分
测试当交易货币对篮子时出现的形态第二部分

测试当交易货币对篮子时出现的形态第二部分

我们继续测试形态并尝试在文章中描述的交易货币对篮子的方法。让我们探讨在实际应用中是否可能使用组合 WPR 图与移动平均交叉的形态,如果答案是可以,我们应当考虑适当的使用方法。
蒙特卡罗方法在强化学习中的应用
蒙特卡罗方法在强化学习中的应用

蒙特卡罗方法在强化学习中的应用

在本文中,我们将应用强化学习来开发可以自主学习的EA交易。在前一篇文章中,我们考虑了随机决策森林算法,并编写了一个简单的基于强化学习的自学习EA,概述了这种方法的主要优点(交易算法的开发简单和“培训”速度快)。强化学习(RL)可以很容易地融入到任何交易EA中,并加速其优化。
监视多币种的交易信号(第一部分):开发应用程序结构
监视多币种的交易信号(第一部分):开发应用程序结构

监视多币种的交易信号(第一部分):开发应用程序结构

在本文中,我们将讨论创建多币种交易信号监视器的思路,并开发一个未来的应用程序结构,以及沿用其原型创建深入操作的框架。 本文表述了一种灵活的多币种应用程序的分步创建过程,该应用程序将能够生成交易信号,并有助交易者发现所需的信号。
在 MQL5 中创建多色彩指标
在 MQL5 中创建多色彩指标

在 MQL5 中创建多色彩指标

我们会于本文中研究如何创建多色彩指标或是将现在指标转换为多色彩指标。MQL5 允许以便利的方式呈现信息。如今已不再需要查看大量带有指标的图表来执行 RSI 或 Stochastic 指标分析了,只是根据指标值为烛形图涂不同的颜色会简单许多。
交易员之活学活用: "平静" 优化或绘制交易分布
交易员之活学活用: "平静" 优化或绘制交易分布

交易员之活学活用: "平静" 优化或绘制交易分布

分析交易历史, 并依据仓位的入场时间以 HTML 形式绘制交易结果的分布图表。图表显示三个部分 - 按小时, 按周内天数和按月份。
图形界面 IX: 进度条和线形图表控件 (第二章)
图形界面 IX: 进度条和线形图表控件 (第二章)

图形界面 IX: 进度条和线形图表控件 (第二章)

第九部份的第二章致力于开发进度条和线形图表控件。与以往一样,会提供详细的实例展示如何在自定义的MQL应用程序中使用这些控件。