MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
DIY 技术指标
DIY 技术指标

DIY 技术指标

在本文中,我将研究允许您创建自己的技术指标的算法。 您将学到如何通过非常简单的初始假设,来获得非常复杂和有趣的结果。
DoEasy 函数库中的时间序列(第四十一部分):多品种多周期指标样品
DoEasy 函数库中的时间序列(第四十一部分):多品种多周期指标样品

DoEasy 函数库中的时间序列(第四十一部分):多品种多周期指标样品

在本文中,我们将研究一个运用 DoEasy 库时间序列类的多品种多周期指标样品,该类在子窗口中以蜡烛的形式显示选定时间帧内选定货币对的图表。 我稍微修改了库类,并创建了一个单独的文件来存储程序输入的枚举,并选择一种编译语言。
MQL5 Cookbook: 自定义信息面板上的仓位属性
MQL5 Cookbook: 自定义信息面板上的仓位属性

MQL5 Cookbook: 自定义信息面板上的仓位属性

这一次我们创建一个简单的EA交易,它可以取得当前交易品种的仓位属性并且在人工交易的时候在自定义信息面板上显示它们。信息面板将使用图形对象创建,显示的信息在每当有订单时都会刷新,这将比系列文章的前一篇 - "MQL5 Cookbook: 获取仓位属性"中提到的每次必须人工运行脚本要方便得多。
preview
重构MQL5中的经典策略(第三部分):富时100指数预测

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

在本系列文章中,我们将重新审视一些知名的交易策略,以探究是否可以利用AI来改进这些策略。在今天的文章中,我们将研究富时100指数,并尝试使用构成该指数的部分个股来预测该指数。
preview
神经网络变得轻松(第五部分):OpenCL 中的多线程计算

神经网络变得轻松(第五部分):OpenCL 中的多线程计算

我们早前已经讨论过某些类型的神经网络实现。 在所研究的网络中,每个神经元都重复相同的操作。 逻辑上进一步应利用现代技术提供的多线程计算功能来加快神经网络学习过程。 本文介绍了一种可能的实现方式。
交易报告及短信通知的创建和发布
交易报告及短信通知的创建和发布

交易报告及短信通知的创建和发布

交易者往往不能、也不想接连多少个小时被拴在交易终端那里。如果交易系统再或多或少地正规化、而且可以自动识别一些市场状态的时候,就更是如此。本文会讲述如何生成一份 HTML 文件格式的交易结果报告(利用“EA 交易”、指标或脚本),并通过 FTP 将其上传到 WWW 服务器。我们还会考虑以短信形式向手机发送交易事件通知。
preview
MQL5 中的矩阵和向量

MQL5 中的矩阵和向量

运用特殊的数据类型“矩阵”和“向量”,可以创建非常贴合数学符号本意的代码。 运用这些方法,您可以避免创建嵌套循环,或在计算中分心记忆正确的数组索引。 因此,矩阵和向量方法的运用能为开发复杂程序提高可靠性和速度。
Trademinator 3:交易机器的崛起
Trademinator 3:交易机器的崛起

Trademinator 3:交易机器的崛起

在《Dr. Tradelove...》一文中,我们创建了一个可独立优化某预先选定交易系统的 EA 交易。而且,我们还决定创建一个不仅能够优化构成 EA 的交易系统参数、而且可以在多个交易系统中选择最优的 EA 交易。我们来看看,它会带来些什么...
DoEasy 函数库中的价格(第六十二部分):实时更新即时报价序列,为操控市场深度做准备
DoEasy 函数库中的价格(第六十二部分):实时更新即时报价序列,为操控市场深度做准备

DoEasy 函数库中的价格(第六十二部分):实时更新即时报价序列,为操控市场深度做准备

在本文中,我将实现即时报价数据的实时更新,并为操控市场深度的品种对象类(DOM 本身将在下一篇文章中实现)做准备。
preview
学习如何基于 Williams PR 设计交易系统

学习如何基于 Williams PR 设计交易系统

本系列中的一篇新文章,介绍了如何依据 MQL5 最流行的技术指标为 MetaTrader 5 设计交易系统。 在本文中,我们将学习如何依据 Williams‘ %R 指标设计交易系统。
preview
简单均值回归交易策略

简单均值回归交易策略

均值回归是一种逆势交易,交易者预估价格将返回到某种形式的均衡点位,通常依据均值或其它向心趋势统计值来衡量。
preview
学习如何基于 VIDYA 设计交易系统

学习如何基于 VIDYA 设计交易系统

欢迎阅读我们的关于学习如何依据最流行的技术指标设计交易系统系列的新篇章,在本文中,我们将学习一种新的技术工具,并学习如何依据可变指数动态平均线(VIDYA)设计交易系统。
学习如何设计基于 CCI 的交易系统
学习如何设计基于 CCI 的交易系统

学习如何设计基于 CCI 的交易系统

来自我们的《学习如何设计交易系统》系列的新篇章中,我将介绍商品通道指数(CCI),解释其细节,并与您分享如何基于此指标创建交易系统。
更好的程序员(第 02 部分):停止做这 5 件事变为一名成功的 MQL5 程序员
更好的程序员(第 02 部分):停止做这 5 件事变为一名成功的 MQL5 程序员

更好的程序员(第 02 部分):停止做这 5 件事变为一名成功的 MQL5 程序员

对于任何想要提高编程职业生涯的人来说,这是一篇必读文章。 本系列文章旨在尽最大可能令您成为最佳程序员,无论您有多少经验。 研讨的思路适用于 MQL5 编程萌新和专业人士。
更好的程序员(第 03 部分):放弃做这 5 件事成为一名成功的 MQL5 程序员
更好的程序员(第 03 部分):放弃做这 5 件事成为一名成功的 MQL5 程序员

更好的程序员(第 03 部分):放弃做这 5 件事成为一名成功的 MQL5 程序员

这是任何想要提高编程职业生涯的从业者必读文章。 本系列文章旨在尽最大可能令您成为最佳程序员,无论您有多少经验。 研讨的思路适用于 MQL5 编程萌新和专业人士。
单纯使用 MQL5 语言处理 ZIP 档案
单纯使用 MQL5 语言处理 ZIP 档案

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

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

使用伪模板替代 C++ 模板

本文说明了一种不使用模板但保持它们固有的编程风格的编程方式。文章讨论使用自定义方法实施模板的问题,并且附带了一个现成的脚本以依据指定的模板创建代码。
CCI 指标。 三个变换步骤
CCI 指标。 三个变换步骤

CCI 指标。 三个变换步骤

在本文中,我将针对 CCI 进行额外的修改,从而影响该指标的逻辑。 进而,我们就能够在主图表窗口中看到它。
用 MQL5 创建“贪吃蛇”游戏
用 MQL5 创建“贪吃蛇”游戏

用 MQL5 创建“贪吃蛇”游戏

本文描述一个“贪吃蛇”游戏编程的例子。在 MQL5 中,游戏编程变为可能主要是因为事件处理功能。面向对象编程大大简化了这个过程。在本文中,您将学习事件处理功能,标准 MQL5 库类的使用例子以及定期函数调用的详细信息。
preview
构建自动运行的 EA(第 15 部分):自动化(VII)

构建自动运行的 EA(第 15 部分):自动化(VII)

我们将继续讨论上一篇文章的主题,以便完成有关自动化的这一系列文章。 我们将看到所有内容如何搭配到一起,令 EA 像钟表一样运行。
轻松快捷开发 MetaTrader 程序的函数库(第七部分): StopLimit 订单激活事件,为修改订单和持仓事件准备功能
轻松快捷开发 MetaTrader 程序的函数库(第七部分): StopLimit 订单激活事件,为修改订单和持仓事件准备功能

轻松快捷开发 MetaTrader 程序的函数库(第七部分): StopLimit 订单激活事件,为修改订单和持仓事件准备功能

在之前的文章中,我们已着手创建一个大型跨平台函数库,简化了 MetaTrader 5 和 MetaTrader 4 平台程序的开发。 在第六部分中,我们训导函数在净持结算账户上工作。 在此,我们将实现跟踪 StopLimit 订单激活,并准备跟踪修改订单和持仓事件的功能。
视频:简单自动交易 — 如何利用 MQL5 创建简单的智能交易系统
视频:简单自动交易 — 如何利用 MQL5 创建简单的智能交易系统

视频:简单自动交易 — 如何利用 MQL5 创建简单的智能交易系统

在我的课程中,大多数学生认为 MQL5 真的很难理解。 除此之外,他们还在寻找一种直接的方法来把一些过程自动化。 那么阅读本文中归纳的信息,就能立刻发现如何利用 MQL5 开始运作。 即使您以前从未接触过任何形式的编程。 即使您无法领会之前您所观察到的插图的情况下。
计算数学表达式(第一部分)。 递归下降解析器
计算数学表达式(第一部分)。 递归下降解析器

计算数学表达式(第一部分)。 递归下降解析器

本文研究数学表达式解析和计算的基本原理。 我们基于预建语法树,实现运行于解释器和快速计算模式的递归下降解析器。
在算法交易中 KOHONEN 神经网络的实际应用  第二部分优化和预测
在算法交易中 KOHONEN 神经网络的实际应用  第二部分优化和预测

在算法交易中 KOHONEN 神经网络的实际应用 第二部分优化和预测

在设计使用 Kohonen 网络的通用工具的基础上,我们建立了优化EA参数的分析和选择系统,并探讨了时间序列的预测。在第一部分中,我们修正和改进了公开的神经网络类,增加了必要的算法。现在,是时候在实际应用中使用它们了。
DoEasy 函数库中的图形(第八十五部分):图形对象集合 - 添加新创建的对象
DoEasy 函数库中的图形(第八十五部分):图形对象集合 - 添加新创建的对象

DoEasy 函数库中的图形(第八十五部分):图形对象集合 - 添加新创建的对象

在本文中,我将完成抽象图形对象类的衍生后代类的开发,并开始实现将这些对象存储在集合类中的能力。 特别是,我将开发把新创建的标准图形对象添加到集合类的功能。
用 MQL5 绘制指标的喷发
用 MQL5 绘制指标的喷发

用 MQL5 绘制指标的喷发

在本文中,我们将讨论指标的喷发 - 一种市场研究的新方法。喷发的计算基于不同指标的相交:在每次价格跳动后,将出现越来越多的带不同颜色和各种形状的点。它们形成了众多的集群,如星云、云团、轨迹、直线、弧线等。这些形状有助于发现影响市场价格变动的无形的跳跃力和驱动力。
轻松快捷开发 MetaTrader 程序的函数库 (第十六部分) : 品种集合事件
轻松快捷开发 MetaTrader 程序的函数库 (第十六部分) : 品种集合事件

轻松快捷开发 MetaTrader 程序的函数库 (第十六部分) : 品种集合事件

在本文中,我们将为所有函数库的对象创建一个新的基类,在其所有衍生类中加入事件功能,并基于新的基类开发用来跟踪品种集合事件的类。 我们还将修改帐户和帐户事件类,以便开发新的基本对象功能。
在交易中应用 OLAP(第四部分):定量和可视化分析测试器报告
在交易中应用 OLAP(第四部分):定量和可视化分析测试器报告

在交易中应用 OLAP(第四部分):定量和可视化分析测试器报告

本文提供的的基本工具,可针对测试器报告的单次通关验证和优化结果进行 OLAP 分析。 该工具可以操控标准格式文件(tst 和 opt),并还提供了图形界面。 MQL 源代码附带于后。
依据价格相关性的统计数据过滤信号
依据价格相关性的统计数据过滤信号

依据价格相关性的统计数据过滤信号

在过去的价格行为和其将来的趋势之间是否有任何相关性?为什么今天的价格重复以前的每日运行特征呢?统计能用于预测价格动态吗?有一个答案,并且是积极的答案。如果您有任何疑问,则本文正好为您释疑解惑。我将告诉您如何用 MQL5 为一个交易系统创建一个有效的过滤器,展现价格变动中有趣的图形。
DoEasy 函数库中的时间序列(第三十八部分):时间序列集合 - 实时更新以及从程序访问数据
DoEasy 函数库中的时间序列(第三十八部分):时间序列集合 - 实时更新以及从程序访问数据

DoEasy 函数库中的时间序列(第三十八部分):时间序列集合 - 实时更新以及从程序访问数据

本文研究实时更新时间序列数据,并从所有品种的所有时间序列里发送有关“新柱线”事件的消息至控制程序图表,从而能够在自定义程序中处理这些事件。 “新即时报价”类用于判断是否需要更新非当前图表品种和周期的时间序列。
preview
如何在 MQL5.com 上造就成功的信号提供者

如何在 MQL5.com 上造就成功的信号提供者

在本文中我的主要目标是为您提供一个简单而精准的步骤说明,助您变身 MQL5.com 上的顶级信号提供者。 借鉴我的知识和经验,我将讲解如何造就一名成功的信号提供者,包括如何寻找、测试、和优化一个优秀的策略。 此外,我将提供有关发布信号、撰写令人信服的推介、以及有效推广和管理信号的提示。
MQL5 细则手册:保存基于指定标准的“EA 交易”的优化结果
MQL5 细则手册:保存基于指定标准的“EA 交易”的优化结果

MQL5 细则手册:保存基于指定标准的“EA 交易”的优化结果

我们继续有关 MQL5 编程的系列文章。这一次,我们来看一看如何获得“EA 交易”参数优化期间传递的每个优化的结果。将完成实现,以确保如果外部参数中指定的条件得到满足,对应的传递值将被写入文件。除了测试值,我们还将保存带来这样的结果的参数。
应用网络函数,或无需 DLL 的 MySQL:第 II 部分 - 监视信号属性变化的程序
应用网络函数,或无需 DLL 的 MySQL:第 II 部分 - 监视信号属性变化的程序

应用网络函数,或无需 DLL 的 MySQL:第 II 部分 - 监视信号属性变化的程序

在前一部分当中,我们研究了 MySQL 连通器的实现。 在本文中,我们将研究如何实现收集信号属性的服务应用,和观察其随时间变化的程序。 如果用户需要观察并未显示在信号网页上的属性变化,则所实现的示例具有重大实际意义。
preview
学习如何基于 Ichimoku 设计交易系统

学习如何基于 Ichimoku 设计交易系统

这是我们系列中有关如何基于最热门指标设计交易系统的一篇新文章,这回我们将详细讨论 Ichimoku 指标,以及如何依据该指标设计交易系统。
preview
MQL5 酷宝书 – 财经日历

MQL5 酷宝书 – 财经日历

本文着重于财经日历的编程特性,并研究创建一个类来简化访问日历属性和接收事件值。 运用 CFTC(商品期货交易委员会)的非商业净持仓规则来开发指标作为一个实际例子。
preview
掌握市场动态:创建有关支撑与阻力位策略的EA

掌握市场动态:创建有关支撑与阻力位策略的EA

一个关于基于支撑位与阻力位策略开发自动化交易算法的全面指南。详细介绍了在MQL5中创建EA以及在MetaTrader 5中对其进行测试的所有方面——从分析价格区间行为到风险管理。
preview
学习如何基于抛物线 SAR 设计交易系统

学习如何基于抛物线 SAR 设计交易系统

在本文中,我们将继续讲述如何基于最流行的指标设计交易系统。 在本文中,我们将详细学习抛物线 SAR 指标,以及如何运用一些简单的策略来设计用于 MetaTrader 5 的交易系统。
创建非滞后数字滤波器
创建非滞后数字滤波器

创建非滞后数字滤波器

本文介绍在流数据中确定有效信号(趋势)的一种方法。应用至市场报价的小滤波(平滑)测试表明创建未在最后的柱上重绘的非滞后数字滤波器(指标)的潜力。
preview
神经网络变得轻松(第十三部分):批次常规化

神经网络变得轻松(第十三部分):批次常规化

在上一篇文章中,我们开始研究旨在提高神经网络训练品质的方法。 在本文中,我们将继续这个主题,并会研讨另一种方法 — 批次数据常规化。
针对交易的组合数学和概率论(第四部分):伯努利(Bernoulli)逻辑
针对交易的组合数学和概率论(第四部分):伯努利(Bernoulli)逻辑

针对交易的组合数学和概率论(第四部分):伯努利(Bernoulli)逻辑

在本文中,我决定重点阐述著名的伯努利(Bernoulli)规划案,并展示如何用它来描述与交易相关的数据数组。 所有这些将被用来创建一个自适应的交易系统。 我们还将寻找一个更通用的算法,一个特例是伯努利公式,并查找能够运用它的应用。