MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
使用云存储服务来进行终端之间的数据交换
使用云存储服务来进行终端之间的数据交换

使用云存储服务来进行终端之间的数据交换

云技术正在变得越来越流行,现在,我们可以选择付费或者免费的存储服务,有没有可能在交易中使用它们呢?本文提出了一种技术,可以使用云存储服务来进行终端之间的数据交换。
一个基于不同大陆不同时区的交易策略实例
一个基于不同大陆不同时区的交易策略实例

一个基于不同大陆不同时区的交易策略实例

在互联网上很轻松就能找到许多策略,它们也会为您提供大量各式各样的建议。我们则会采取一种专业的方法,基于不同大陆不同时区,深入策略创建的过程。
在 MetaTrader 5 中应用费歇尔变换和逆费歇尔变换进行市场分析
在 MetaTrader 5 中应用费歇尔变换和逆费歇尔变换进行市场分析

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

我们知道一个市场周期的概率密度函数 (PDF) 并不会让我们想到高斯分布,而是一种正弦波的概率密度函数,并且大多数指标假定市场周期的概率密度函数为高斯分布,我们需要一种方式来纠正。解决方法是使用费歇尔变换。费歇尔变换将任何波形的概率密度函数转换为近似的高斯分布。本文介绍费歇尔变换和逆费歇尔变换的算法以及它们在交易中的应用。介绍和评估了一个基于逆费歇尔变换的专有交易模块。
轻松快捷开发 MetaTrader 程序的函数库 (第 二十九部分) :延后交易请求 - 请求对象类
轻松快捷开发 MetaTrader 程序的函数库 (第 二十九部分) :延后交易请求 - 请求对象类

轻松快捷开发 MetaTrader 程序的函数库 (第 二十九部分) :延后交易请求 - 请求对象类

在之前的文章里,我们检验了延后交易请求的概念。 实际上,延后请求是由特定条件执行的正常交易订单。 在本文中,我们会创建完整的延后请求对象类 — 基准请求对象及其后代。
为 MetaTrader 打造的高级 EA 构造器 - botbrains
为 MetaTrader 打造的高级 EA 构造器 - botbrains

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

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

CCI 指标。 升级和新特征

在本文中,我将研究升级 CCI 指标的可能性。 此外,我将对指标进行修改。
preview
学习如何基于分形(Fractals)设计交易系统

学习如何基于分形(Fractals)设计交易系统

本文是我们关于如何基于最流行的技术指标设计交易系统的系列中的一篇新文章。 我们将学习一个新的指标,即分形(Fractals)指标,我们将学习如何设计一个基于它的交易系统,从而能在 MetaTrader 5 终端中执行。
另一个 MQL5 OOP 类
另一个 MQL5 OOP 类

另一个 MQL5 OOP 类

本文会从一种理论性交易概念的构想,到编制一个在经验世界中实现这一概念的 MQL5 EA 交易,为您讲解如何从头建立一个面向对象的 EA 交易。依本人看,边做边学是取得成功的一种可靠方法。所以,我会拿出一个实用的例子,让您明白如何才能整理自己的想法,并最终完成外汇自动交易代码。和您一起遵守“面向对象”原则,也是我的目标之一。
preview
神经网络变得轻松(第三部分):卷积网络

神经网络变得轻松(第三部分):卷积网络

作为神经网络主题的延续,我建议研究卷积神经网络。 这种类型的神经网络通常用来分析视觉成像。 在本文中,我们将研究这种网络在金融市场中的应用。
preview
交易者容易使用的止损和止盈

交易者容易使用的止损和止盈

止损(stop loss)和止盈(take profit)对交易结果有重大影响。本文将介绍几种寻找最佳止损单价格的方法。
利用标准库类创建您自己的“市场报价”
利用标准库类创建您自己的“市场报价”

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

新型 MetaTrader 5 客户端与 MQL5 语言提供了向交易者展示可视信息的新机遇。本文中,我们会讲到一系列通用且可扩展的类,处理图表上方任意文本信息的组织与显示工作。“市场报价”指标的示例亦有提供。
在 MetaTrader 5 中使用 MATLAB 2018 的计算功能
在 MetaTrader 5 中使用 MATLAB 2018 的计算功能

在 MetaTrader 5 中使用 MATLAB 2018 的计算功能

在2015年升级了 MATLAB 包之后,有必要考虑一种现代的创建 DLL 库的方法。本文利用样本预测指标,说明了在目前使用的64位平台上关联 MetaTrader 5 和 MATLAB 的特点。通过探讨连接 MATLAB 的整个过程,MQL5 开发人员将能够更快地创建具有高级计算能力的应用程序,从而避免“陷阱”。
MetaTrader 5 中的并行计算
MetaTrader 5 中的并行计算

MetaTrader 5 中的并行计算

在人类的整个历史长河中,时间都是极其宝贵的,因此我们努力避免不必要的时间浪费。如果您的电脑配备了多核处理器,本文将告诉您如何为“EA 交易”的工作提速。此外,实施建议的方法不要求您掌握 MQL5 以外的其他语言的知识。
preview
手工图表和交易工具包(第二部分)。 图表图形绘图工具

手工图表和交易工具包(第二部分)。 图表图形绘图工具

这是该系列的下一篇文章,在其中我展示了如何创建一个函数库来,从而看便利地用键盘快捷键手动绘制图表图形。 所用工具包括直线及其组合。 在这一部分中,我们将查看如何在绘图工具里应用第一部分中讲述的函数。 该函数库可连接到任何 EA 或指标,这将大大简化绘图任务。 此方案未使用外部 dll,而所有命令都是由内置 MQL 工具实现的。
preview
首次启动MetaTrader VPS:分步说明

首次启动MetaTrader VPS:分步说明

使用EA交易或订阅信号的每个交易者几乎都会认识到,需要为自己的交易平台租用一个可靠的24/7全天候主机服务器。出于多种原因,我们建议使用MetaTrader VPS。您可以通过MQL5.community账户方便地支付服务费用和管理订阅。
MQL5 细则手册:MetaTrader 5 交易事件的声音通知
MQL5 细则手册:MetaTrader 5 交易事件的声音通知

MQL5 细则手册:MetaTrader 5 交易事件的声音通知

在本文中,我们将考虑在“EA 交易”的文件中包含声音文件、从而为交易事件添加声音通知的事宜。将包含文件的事实意味着声音文件将位于“EA 交易”的内部。因此,在向其他用户提供编译后的“EA 交易”版本 (*.ex5) 时,您无需再提供声音文件并说明它们应予以保存的位置。
区域方法
区域方法

区域方法

"区域方法(area method)"交易系统的运行是基于对RSI震荡指标读取的一种较为少见的解释。使区域方法可视化的指标,以及使用此系统交易的EA交易,在这里都会详细讨论。本文还提供了关于EA交易在各种交易品种,时段和区域数值中测试的详细发现。
轻松快捷开发 MetaTrader 程序的函数库(第十一部分)。 与 MQL4 的兼容性 - 平仓事件
轻松快捷开发 MetaTrader 程序的函数库(第十一部分)。 与 MQL4 的兼容性 - 平仓事件

轻松快捷开发 MetaTrader 程序的函数库(第十一部分)。 与 MQL4 的兼容性 - 平仓事件

我们继续大型跨平台函数库的开发,简化 MetaTrader 5 和 MetaTrader 4 平台程序的开发。 在第十部分中,我们重启与 MQL4 函数库兼容性的工作,并定义了开仓和激活挂单的事件。 在本文中,我们将定义平仓事件,并剔除未使用的订单属性。
preview
学习为什么、以及如何设计算法交易系统

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

本文在介绍了 MQL5 的一些基础知识之后,通过设计一个简单的算法交易系统,向初学者展示了如何运用 MQL 的基础知识设计他们的算法交易系统(智能交易系统)
全新 MetaTrader 5 和 MQL5 来袭
全新 MetaTrader 5 和 MQL5 来袭

全新 MetaTrader 5 和 MQL5 来袭

这只是 MetaTrader 5 的一个简短介绍。我无法在如此短小的篇幅里给出系统所有新功能的描述 - 测试从 2009 年 9 月 9 日即已开始。这是一个具有象征意义的日子,我肯定这也会是一个幸运数字。就在几天之前,我拿到了 MetaTrader 5 终端和 MQL5 的试用版。我并没有试用所有的功能,即便如此,它们也给我留下了深刻的印象。
创建具有图形控制选项的指标
创建具有图形控制选项的指标

创建具有图形控制选项的指标

熟悉市场情绪的人都知道 MACD 指标(其全称为平滑异同移动平均线)- 自计算机分析方法面世以来即已被交易人员用于分析价格变动的强大工具。在本文中,我们将讨论 MACD 可能的变型,并在可图形切换变型的指标中实施这些变型。
基于 Merill(梅里尔) 形态的策略构建器
基于 Merill(梅里尔) 形态的策略构建器

基于 Merill(梅里尔) 形态的策略构建器

在前一篇文章中,我们研究了如何将 Merill(梅里尔)形态应用于各种数据,例如货币品种图表上的价格,以及标准 MetaTrader 5 指标值:ATR,WPR,CCI,RSI,等等。 现在,我们尝试基于 Merill 形态创建策略构造集合。
使用 MQL5 和 MQL4 开发的选择与导航工具: 增加自动模式搜索和显示侦测到的交易品种
使用 MQL5 和 MQL4 开发的选择与导航工具: 增加自动模式搜索和显示侦测到的交易品种

使用 MQL5 和 MQL4 开发的选择与导航工具: 增加自动模式搜索和显示侦测到的交易品种

在本文中, 我们继续扩展用于收集和在交易品种之间导航工具的功能。这一次,我们将创建新的选项卡,只显示满足一些必需参数的交易品种,并且研究如何根据所需的挑选规则简单添加自定义选项卡。
preview
如何利用 MQL5 检测趋势和图表形态

如何利用 MQL5 检测趋势和图表形态

在本文中,我们将提供一种通过 MQL5 自动检测价格行为形态的方法,如趋势(上行趋势、下行趋势、横盘整理)、图表形态(双顶、双底)。
针对交易的组合数学和概率论(第二部分):通用分形
针对交易的组合数学和概率论(第二部分):通用分形

针对交易的组合数学和概率论(第二部分):通用分形

在本文中,我们将继续研究分形,并会特别留意总结所有材料。 为此,我将尝试把所有早期开发归纳为一个紧凑的形式,这对于交易中的实际应用来说将是方便和易于理解的。
轻松快捷开发 MetaTrader 程序的函数库(第 二十四部分):基准交易类 - 无效参数自动纠正
轻松快捷开发 MetaTrader 程序的函数库(第 二十四部分):基准交易类 - 无效参数自动纠正

轻松快捷开发 MetaTrader 程序的函数库(第 二十四部分):基准交易类 - 无效参数自动纠正

在本文中,我们关注无效交易订单参数的处理程序,并改进交易事件类。 现今,所有交易事件(单个和在一次即时报价内同时发生的)均将在程序中正确定义。
MQL5.com 自由职业: 开发者的收入来源 (信息图)
MQL5.com 自由职业: 开发者的收入来源 (信息图)

MQL5.com 自由职业: 开发者的收入来源 (信息图)

值此 MQL5 自由职业服务的第四个生日, 我们准备了一幅信息图来展示其自创生来的整体服务成果。让数据本身说话: 迄今已总计执行了超过 10000 笔订单, 价值约 $600,000, 有 3000 余客户和 300 余开发者已经在使用此服务。
轻松快捷开发 MetaTrader 程序的函数库(第 三十四部分):延后交易请求 - 在特定条件下删除和修改订单与持仓
轻松快捷开发 MetaTrader 程序的函数库(第 三十四部分):延后交易请求 - 在特定条件下删除和修改订单与持仓

轻松快捷开发 MetaTrader 程序的函数库(第 三十四部分):延后交易请求 - 在特定条件下删除和修改订单与持仓

在本文中,我们将完成延后请求交易概念的论述,并创建删除挂单,以及在特定条件下修改挂单和持仓的功能。 由此,我们将拥有完整的功能,令我们能够开发简单的自定义策略,或者根据用户定义的条件激活 EA 行为逻辑。
自定义图形控件。第 3 部分 表单
自定义图形控件。第 3 部分 表单

自定义图形控件。第 3 部分 表单

专门讲解图形控件的有三篇文章,此为最后一篇。其中涵盖主要图形界面组件的创建 - 表单 - 及其同其它控件的搭配使用。除表单类之外,CFrame、CButton、CLabel 类亦已添加到此控件库。
preview
无需 Python 或 R 语言知识的 Yandex CatBoost 机器学习算法

无需 Python 或 R 语言知识的 Yandex CatBoost 机器学习算法

本文通过一个具体的例子提供了机器学习过程的主要阶段的代码和描述。您不需要 Python 或 R 语言知识就能够获得模型。此外,基本的MQL5知识已经足够了- 这正是我的水平。因此,我希望这篇文章能为广大读者提供一个很好的指导,帮助那些对评估机器学习能力感兴趣的人,并在他们的课程中实现这些能力。
针对交易的组合数学和概率论(第三部分):第一个数学模型
针对交易的组合数学和概率论(第三部分):第一个数学模型

针对交易的组合数学和概率论(第三部分):第一个数学模型

早前所研讨主题的逻辑延续,即针对交易任务开发多功能数学模型。 在本文中,我将从头开始讲述与分形数学模型开发相关的整个过程。 这个模型应成为一个重要的构建模块,且其是多功能和通用的。 它将为我们遵循该思路深入开发奠定理论基础。
轻松快捷开发 MetaTrader 程序的函数库 (第 三十一部分) :延后交易请求 - 在特定条件下开仓
轻松快捷开发 MetaTrader 程序的函数库 (第 三十一部分) :延后交易请求 - 在特定条件下开仓

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

从本文开始,我们将开发一种功能,允许用户在特定条件下利用延后请求进行交易,举例来说,当达到特定时间限制、超出指定利润或由止损平仓时。
preview
继续迈进优化(第一部分):操控优化报告

继续迈进优化(第一部分):操控优化报告

这是第一篇致力于创建一套操控优化报告工具箱的文章,可从终端导入报告,并针对所获数据进行过滤和排序。 MetaTrader 5 允许下载优化结果,然而我们的目的是在优化报告中添加自己的数据。
自组织特征映射 (Kohonen 映射) - 再访主题
自组织特征映射 (Kohonen 映射) - 再访主题

自组织特征映射 (Kohonen 映射) - 再访主题

本文描述利用 Kohonen 映射进行操作的技术。本主题对那些在他们的项目中运用 Kohonen 映射进行市场研究时遇到困难的 MQL4/MQL5 初级程序员和经验丰富的程序员都有益处。
使用 WCF 服务将报价从 MetaTrader 5 导出至 .NET 应用程序的方法
使用 WCF 服务将报价从 MetaTrader 5 导出至 .NET 应用程序的方法

使用 WCF 服务将报价从 MetaTrader 5 导出至 .NET 应用程序的方法

想要从 MetaTrader 5 导出报价到您自己的应用程序?MQL5-DLL 组合可给出这样的解决方案!本文介绍将报价从 MetaTrader 5 导出至以 .NET 编写的应用程序的方法。对我而言,使用该平台实施报价的导出要更为有趣、合理和容易。遗憾的是版本 5 仍然不支持 .NET,因此和以往一样,我们将使用 .NET 支持的 win32 dll 作为中间层。
用 Delphi 为 MQL5 编写 DLL 指南
用 Delphi 为 MQL5 编写 DLL 指南

用 Delphi 为 MQL5 编写 DLL 指南

本文说明在 Delphi 编程环境中使用流行编程语言 ObjectPascal 创建 DLL 模块的机制。本文提供的材料主要针对初学者而设计,这些初学者面临因为连接外部 DLL 模块而突破了嵌入式编程语言 MQL5 边界的问题。
生长型神经气:MQL5 中的实施
生长型神经气:MQL5 中的实施

生长型神经气:MQL5 中的实施

本文会举例说明如何开发一个可以实施名为“生长型神经气” (GNG) 自适应聚类算法的 MQL5 程序。本文针对已研究过语言文档、且已具备一定编程能力和神经信息学基础知识的用户。
preview
神经网络在交易中的实际应用 (第二部分). 计算机视觉

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

利用计算机视觉可以训练神经网络对价格图表和指标的直观表示。这种方法可以对整个复杂的技术指标进行更广泛的操作,因为不需要将它们以数字形式输入神经网络。
preview
形态搜索的暴力强推方式(第四部分):最小功能

形态搜索的暴力强推方式(第四部分):最小功能

本文基于上一篇文章中设定的目标,提出了一个改进的暴力强推版本。 我将尝试尽可能广泛地涵盖这个主题,并以该方法获取的设置来运行智能交易系统。 本文还附有一个新的程序版本。
DoEasy 函数库中的时间序列(第三十五部分):柱线对象和品种时间序列列表
DoEasy 函数库中的时间序列(第三十五部分):柱线对象和品种时间序列列表

DoEasy 函数库中的时间序列(第三十五部分):柱线对象和品种时间序列列表

本文开始 DoEasy 函数库的新系列,与创建相关,从而简化和快速进行程序开发。 在当前文章中,我们将为函数库实现访问和操控品种时间序列数据的功能。 我们计划创建柱线(Bar)对象,来存储时间序列的主要和扩展的柱线数据,并将柱线对象置于时间序列列表之中,从而便于对象的搜索和排序。