MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
中测试移动平均线计算的性能
中测试移动平均线计算的性能

中测试移动平均线计算的性能

在创建第一个移动平均线指标之后,已经出现了若干指标。其中很多指标使用类似的平滑方法,但是还没有研究不同的移动平均线算法的性能。在本文中,我们将考虑在 MQL5 中使用移动平均线的若干可能方式并比较它们的性能。
preview
学习如何基于抛物线 SAR 设计交易系统

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

在本文中,我们将继续讲述如何基于最流行的指标设计交易系统。 在本文中,我们将详细学习抛物线 SAR 指标,以及如何运用一些简单的策略来设计用于 MetaTrader 5 的交易系统。
MQL 作为 MQL 程序图形界面的标记工具。 第二部分
MQL 作为 MQL 程序图形界面的标记工具。 第二部分

MQL 作为 MQL 程序图形界面的标记工具。 第二部分

本篇论文继续验证新概念,即利用 MQL 结构描述 MQL 程序的窗口界面。 基于 MQL 标记自动创建 GUI 提供了缓存和动态生成元素和控制风格,以及事件处理的新方案。 随附的是标准控件库的增强版本。
Taichi 指标 - 一目平衡表指标值形式化的简单理念
Taichi 指标 - 一目平衡表指标值形式化的简单理念

Taichi 指标 - 一目平衡表指标值形式化的简单理念

一目平衡表指标信号是否难以解释?本文介绍了一些将一目平衡表指标信号及其数值形式化的原则。为了将使用方法可视化,作者根据自己的偏好选择了 EURUSD 货币对。不过,该指标可以用于任何货币对
学习如何设计基于 CCI 的交易系统
学习如何设计基于 CCI 的交易系统

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

来自我们的《学习如何设计交易系统》系列的新篇章中,我将介绍商品通道指数(CCI),解释其细节,并与您分享如何基于此指标创建交易系统。
preview
学习如何基于 Williams PR 设计交易系统

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

本系列中的一篇新文章,介绍了如何依据 MQL5 最流行的技术指标为 MetaTrader 5 设计交易系统。 在本文中,我们将学习如何依据 Williams‘ %R 指标设计交易系统。
图形界面 VIII: 文件导航器控件 (第三章)
图形界面 VIII: 文件导航器控件 (第三章)

图形界面 VIII: 文件导航器控件 (第三章)

在系列文章第八部分前面的章节中,我们的库加入了几个类用于开发鼠标指针,日历和树形视图,本文介绍的是文件导航器控件,可以用作MQL应用程序图形界面的一部分。
preview
神经网络变得轻松(第四十五部分):训练状态探索技能

神经网络变得轻松(第四十五部分):训练状态探索技能

在没有明确奖励函数的情况下,实用的训练技能就是分层强化学习的主要挑战之一。 以前,我们已领略了解决此问题的两种算法。 但环境研究的完整性问题仍然悬而未决。 本文演示了一种不同的技能训练方式,其可取决于系统的当前状态直接使用。
DoEasy 函数库中的时间序列(第四十一部分):多品种多周期指标样品
DoEasy 函数库中的时间序列(第四十一部分):多品种多周期指标样品

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

在本文中,我们将研究一个运用 DoEasy 库时间序列类的多品种多周期指标样品,该类在子窗口中以蜡烛的形式显示选定时间帧内选定货币对的图表。 我稍微修改了库类,并创建了一个单独的文件来存储程序输入的枚举,并选择一种编译语言。
赌博模型作为培养"市场直觉"的方法
赌博模型作为培养"市场直觉"的方法

赌博模型作为培养"市场直觉"的方法

本文阐述了“市场直觉”的概念和培养方法。文章中描述的方法基于以简单游戏的形式对金融赌博建模。
preview
学习如何基于 VIDYA 设计交易系统

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

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

如何利用 MQL5 创建自定义指标(Heiken Ashi)

在本文中,我们将学习如何根据我们的偏好利用 MQL5 创建自定义指标,在 MetaTrader 5 当中运用它来帮助我们读取图表,或在自动智能系统当中运用。
以经济方式计算指标的原则
以经济方式计算指标的原则

以经济方式计算指标的原则

调用用户指标和技术指标在自动交易系统的程序代码中只占很少的空间。通常它仅仅只是行代码。但是经常出现正是这几行代码占用测试 EA 交易程序所需的大部分时间的情况。因此,与指标内的数据计算有关的所有一切都需要更加彻底地考虑,而不能随意决定。本文正是探讨这一点。
初学者以 MQL5 实现对数字滤波器的实际实施
初学者以 MQL5 实现对数字滤波器的实际实施

初学者以 MQL5 实现对数字滤波器的实际实施

数字信号滤波的理念在有关构建交易系统的论坛主题中被广泛讨论。而不以 MQL5 编写数字滤波器的标准代码是不明智的。在本文中,笔者介绍了将出自其文章《面向新手的 MQL5 自定义指标》的简单 SMA 指标的代码转换成更复杂和通用的数字滤波器的代码。本文是笔者上一篇文章的逻辑延续。文章中还介绍了如何在代码中更换文本,以及如何修正编程错误。
preview
连续前行优化 (第六部分): 自动优化器的逻辑部分和结构

连续前行优化 (第六部分): 自动优化器的逻辑部分和结构

我们之前曾研究过创建自动前行优化。 这次,我们将继续探究自动优化器工具的内部结构。 本文对于那些希望深入操控所创建项目并进行修改的人士,以及那些希望理解程序逻辑的人士来说都很有用处。 本文包含 UML 示意图,它能揭示项目的内部结构,以及对象之间的关系。 它还阐述了优化开始的过程,但未包含优化器实现过程的讲述。
通用的 Expert Advisor 模板
通用的 Expert Advisor 模板

通用的 Expert Advisor 模板

本文将帮助交易新手创建可灵活调整的 Expert Advisor。
交易报告及短信通知的创建和发布
交易报告及短信通知的创建和发布

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

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

谬误,第 2 部分统计学是一门伪科学,亦或是一部记录艰难生计的编年史

无数次将统计方法应用于客观现实(即金融序列)的尝试在流程的非稳定性、伴随概率分布的肥尾效应和金融数据量不足等障碍前撞得头破血流。本文中,我将尝试不去探讨金融序列本身,而是探讨其主观呈现 - 在这种情况下,就是探讨交易者尝试控制序列(即交易系统)的方式。介绍交易结果流程的统计规律是件相当有意思的任务。在某些情况下,我们可以对此流程的模型下一个非常正确的结论,这些结论可以应用于交易系统。
DIY 技术指标
DIY 技术指标

DIY 技术指标

在本文中,我将研究允许您创建自己的技术指标的算法。 您将学到如何通过非常简单的初始假设,来获得非常复杂和有趣的结果。
交易者的统计 - 烹饪宝书:假设
交易者的统计 - 烹饪宝书:假设

交易者的统计 - 烹饪宝书:假设

本文讨论假设 - 数理统计的基本理念之一。各种假设需要进行检查,并利用数理统计方法的实例进行验证。使用非参数方法生成实际数据。Statistica 开发包和移植的 ALGLIB MQL5 数值分析库可用于处理数据。
preview
MQL5 中的矩阵和向量

MQL5 中的矩阵和向量

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

Trademinator 3:交易机器的崛起

在《Dr. Tradelove...》一文中,我们创建了一个可独立优化某预先选定交易系统的 EA 交易。而且,我们还决定创建一个不仅能够优化构成 EA 的交易系统参数、而且可以在多个交易系统中选择最优的 EA 交易。我们来看看,它会带来些什么...
视频:简单自动交易 — 如何利用 MQL5 创建简单的智能交易系统
视频:简单自动交易 — 如何利用 MQL5 创建简单的智能交易系统

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

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

在 MQL4 和 MQL5 框架下开发 OpenAI 的 ChatGPT 功能

在本文中,我们将尝鲜来自 OpenAI 的 ChatGPT,从而了解它在降低开发智能系统、指标、和脚本的时间和劳动强度方面的能力。我将引导您快速通览这项技术,并尝试向您展示如何正确地使用它在 MQL4 和 MQL5 中进行编程。
虚拟专用服务器(VPS)进行自动交易的实际应用
虚拟专用服务器(VPS)进行自动交易的实际应用

虚拟专用服务器(VPS)进行自动交易的实际应用

使用 VPS 进行自动交易。本文特别面向自动交易员和自动交易支持者。
建立一个频谱分析程序
建立一个频谱分析程序

建立一个频谱分析程序

本文旨在让读者熟悉使用 MQL5 语言图形对象的一种可能变量。它会对一个利用图形对象管理简单频谱分析程序的面板的实施指标进行分析。本文专为熟悉 MQL5 基础的读者编写。
具有最小延迟的有效平均算法:在指标中使用
具有最小延迟的有效平均算法:在指标中使用

具有最小延迟的有效平均算法:在指标中使用

本文介绍作者开发的更高质量的自定义平均函数:JJMASeries()、JurXSeries()、JLiteSeries()、ParMASeries()、LRMASeries()、T3Series()。本文还涉及在指标中应用上述函数。作者基于这些函数的使用引入一个丰富的指标库。
再谈等量图
再谈等量图

再谈等量图

本文阐述了构建图表的方法,其中每个柱都包含等量的价格变动。
preview
MQL5集成:Python

MQL5集成:Python

Python是一种广为人知且流行的语言,具有许多功能,尤其是在金融、数据科学、人工智能和机器学习领域。Python也是一种强大的工具,可以在交易中发挥作用。MQL5允许我们将这种强大的语言作为集成工具,以高效地实现我们的目标。在本文中,我们将在了解一些Python的基本信息后,分享如何在MQL5中使用Python作为集成工具。
外部指标的提醒和注释
外部指标的提醒和注释

外部指标的提醒和注释

在实际交易中,交易者可能面临下面的情形:需要在显示器(图表窗口)上得到指示关于指标出现的信号的“提醒”或文本信息。 本文包含了一个示例,显示了由外部指标创建的图形对象的信息。
在Linux桌面系统运行MetaTrader 4客户终端
在Linux桌面系统运行MetaTrader 4客户终端

在Linux桌面系统运行MetaTrader 4客户终端

本文讲述了使用非模拟器wine软件在Linux桌面系统上运行MetaTrader 4客户终端的详细设置步骤.
preview
理解并有效地使用 MQL5 策略测试器

理解并有效地使用 MQL5 策略测试器

对于 MQL5 程序员或开发人员,一项基本需求就是掌握那些重要且颇具价值的工具。 其中一个工具是策略测试器,本文是理解和使用 MQL5 策略测试器的实用指南。
轻松快捷开发 MetaTrader 程序的函数库(第七部分): StopLimit 订单激活事件,为修改订单和持仓事件准备功能
轻松快捷开发 MetaTrader 程序的函数库(第七部分): StopLimit 订单激活事件,为修改订单和持仓事件准备功能

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

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

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

这是我们系列中有关如何基于最热门指标设计交易系统的一篇新文章,这回我们将详细讨论 Ichimoku 指标,以及如何依据该指标设计交易系统。
preview
让图表更有趣:添加背景

让图表更有趣:添加背景

许多工作站包含一些代表性的图片用以显示用户的一些信息。 这些图片令工作环境更加优美和令人兴奋。 我们来看看如何通过添加背景令图表更有趣。
CCI 指标。 三个变换步骤
CCI 指标。 三个变换步骤

CCI 指标。 三个变换步骤

在本文中,我将针对 CCI 进行额外的修改,从而影响该指标的逻辑。 进而,我们就能够在主图表窗口中看到它。
DoEasy 函数库中的价格(第六十二部分):实时更新即时报价序列,为操控市场深度做准备
DoEasy 函数库中的价格(第六十二部分):实时更新即时报价序列,为操控市场深度做准备

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

在本文中,我将实现即时报价数据的实时更新,并为操控市场深度的品种对象类(DOM 本身将在下一篇文章中实现)做准备。
更好的程序员(第 02 部分):停止做这 5 件事变为一名成功的 MQL5 程序员
更好的程序员(第 02 部分):停止做这 5 件事变为一名成功的 MQL5 程序员

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

对于任何想要提高编程职业生涯的人来说,这是一篇必读文章。 本系列文章旨在尽最大可能令您成为最佳程序员,无论您有多少经验。 研讨的思路适用于 MQL5 编程萌新和专业人士。
preview
构建自动运行的 EA(第 15 部分):自动化(VII)

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

我们将继续讨论上一篇文章的主题,以便完成有关自动化的这一系列文章。 我们将看到所有内容如何搭配到一起,令 EA 像钟表一样运行。
preview
改编版 MQL5 网格对冲 EA(第 II 部分):制作一款简单的网格 EA

改编版 MQL5 网格对冲 EA(第 II 部分):制作一款简单的网格 EA

在本文中,我们探讨了经典的网格策略,详解 MQL5 的智能交易系统的自动化,并初步分析回测结果。我们强调了该策略对高持有能力的需求,并概括了在未来分期分批优化距离、止盈和手数等关键参数的计划。该系列旨在提高交易策略效率,以及针对不同市场条件的适配性。