MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
网格和马丁格尔交易系统中的机器学习。 您敢为其打赌吗?

网格和马丁格尔交易系统中的机器学习。 您敢为其打赌吗?

本文介绍了应用于网格和马丁格尔交易的机器学习技术。 令人惊讶的是,这种方法在全球网络中难觅踪迹。 阅读过本文之后,您将能够创建自己的交易机器人。
新MQL4中的离线图表
新MQL4中的离线图表

新MQL4中的离线图表

更新的MQL4具有存储历史数据的新格式,并提供相应的MqlRates结构,便于时间,开盘,最低,最高,收盘和交易量值的存储。多年来,交易者们已经开发出收集和存储他们在HST文件中的数据,用于生成离线图表的MQL4应用。我们可以向您保证,所有先前编译的EX4文件在新的MetaTrader 4程序端将以之前相同的方式工作。
深度神经网络 (第 III 部)。样品选择和降维
深度神经网络 (第 III 部)。样品选择和降维

深度神经网络 (第 III 部)。样品选择和降维

本文是一系列有关深层神经网络的延续文章。在此, 我们将研究选择样本 (消除噪声), 降低输入数据的维度, 并在数据准备期间将数据集合划分为训练/验证/测试集合, 以便训练神经网络。
交易货币对篮子时出现的测试形态。第 I 部
交易货币对篮子时出现的测试形态。第 I 部

交易货币对篮子时出现的测试形态。第 I 部

我们开始测试形态, 并尝试有关交易货币对篮子的文章中所描述的方法。我们看看在实践中如何应用超卖/超买等级的突破形态。
MetaTrader 4 客户端的程序文件夹
MetaTrader 4 客户端的程序文件夹

MetaTrader 4 客户端的程序文件夹

本文描述了 MetaTrader 4 客户端程序文件夹的内容。 对于那些已经开始掌握客户端操作细节的用户,本文将会非常有用。
整合基于MQL的EA交易和数据库 (SQL Server, .NET 和 C#)
整合基于MQL的EA交易和数据库 (SQL Server, .NET 和 C#)

整合基于MQL的EA交易和数据库 (SQL Server, .NET 和 C#)

本文描述了如何把操作 Microsoft SQL Server 数据库的功能加到基于 MQL 语言的 EA 交易中,它使用了从一个DLL(动态链接库)中引入函数的方法。这个 DLL 是使用 Microsoft .NET 平台和 C# 语言创建的。本文中使用的方法只要做少许调整,就可以用于使用 MQL4 开发的 EA 交易中。
MеtaTrader 4 和 MATLAB Engine 的交互(虚拟 MATLAB 机)
MеtaTrader 4 和 MATLAB Engine 的交互(虚拟 MATLAB 机)

MеtaTrader 4 和 MATLAB Engine 的交互(虚拟 MATLAB 机)

本文探讨了 DLL 库 - 包装程序的创建,它能使 MetaTrader 4 和 MATLAB 数学桌面包进行交互。 文章对其中的“陷阱”以及克服的方法进行了介绍。 本文面向的读者是使用 Borland C++ Builder 6 编译器且具有 C/C++ 基础的程序员。
MQL5 初学者: 图形对象的防破坏保护
MQL5 初学者: 图形对象的防破坏保护

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

如果图形控制面板被其他人删除或者修改了, 您的程序应该怎样做呢?在本文中, 我们将演示如何使图表上的对象摆脱"无主"状态, 把它们重新命名也不会失去控制, 以及在应用程序退出时程序化地删除对象.
MQL4 语言入门。简单词组中的难题。
MQL4 语言入门。简单词组中的难题。

MQL4 语言入门。简单词组中的难题。

这是"MQL4 语言入门"系列的第二篇文章。现在我们将探讨该语言更复杂、更高级的构造,学习新内容,并了解如何将它们应用到日常实践中。您将了解新循环类型"while",新条件类型"switch",运算符 "break"和"continue"。此外,我们将学习编写您自己的函数和使用多维数组。作为餐前甜点,我还准备了一份有关预处理器的说明。
跨平台智能交易系统: 停止位
跨平台智能交易系统: 停止位

跨平台智能交易系统: 停止位

本文讨论智能交易系统中停止价位的实现, 以便在两个平台 Metatrader 4 和 Metatrader 5 之间兼容。
本文讨论如何在跨平台智能交易系统中设置自定义停止价位。它还讨论了一种紧密相关的方法, 即随着时间的推移, 定义停止位的演化。
本文讨论如何在跨平台智能交易系统中设置自定义停止价位。它还讨论了一种紧密相关的方法, 即随着时间的推移, 定义停止位的演化。

本文讨论如何在跨平台智能交易系统中设置自定义停止价位。它还讨论了一种紧密相关的方法, 即随着时间的推移, 定义停止位的演化。

本文讨论如何在跨平台智能交易系统中设置自定义停止价位。它还讨论了一种紧密相关的方法, 即随着时间的推移, 定义停止位的演化。
preview
MetaTrader 5 中的交易事件

MetaTrader 5 中的交易事件

监视交易帐户的当前状态意味着控制未平持仓和订单。在一个交易信号变为成交之前,它应作为一个请求从客户端发送到交易服务器,在服务器中,它将被放入等待处理的订单队列中。交易服务器收到请求时,依据情况将其作为过期请求删除,或进行成交 - 所有这些操作之后都会导致交易事件的发生;并且交易服务器会向客户端通知这些事件。
MQL5 中如何调用指标
MQL5 中如何调用指标

MQL5 中如何调用指标

推出新版本后,MQL 编程语言不仅提供处理那些已变更指标的方法,还提供如何创建指标的新途径。而且,您还具备了使用指标缓冲区的更多灵活性 - 现在,您可以指定目标索引方向,并可完全如您所愿地获取多个指标值。本文讲述的是调用指标的基本方法,以及通过指标缓冲区检索数据。
MetaTrader市场提供14,000个EA交易
MetaTrader市场提供14,000个EA交易

MetaTrader市场提供14,000个EA交易

目前,最大的自动交易应用程序成品商店可提供13,970个产品。它包含4,800个EA、6,500个指标、2,400个实用工具以及其他解决方案。在这种情况下,差不多有一半的应用程序(6,000)可供租用。此外,产品总数的1/4产品(3,800)可以免费下载。
从头开始开发一款智能交易系统
从头开始开发一款智能交易系统

从头开始开发一款智能交易系统

在本文中,我们将讨论如何做到最少编程来开发一款交易机器人。
创建自定义指标的特性
创建自定义指标的特性

创建自定义指标的特性

在MetaTrader交易系统中创建自定义指标有一些特性.
使用文本文件保存智能交易程序, 指标和脚本的输入参数
使用文本文件保存智能交易程序, 指标和脚本的输入参数

使用文本文件保存智能交易程序, 指标和脚本的输入参数

本文描述应用文本文件保存动态对象, 数组和其它作为智能交易程序, 指标和脚本属性的变量。这些文件为 MQL 语言的标准工具提供了便利的附加功能。
纺锤形图表指标
纺锤形图表指标

纺锤形图表指标

本文介绍纺锤形图表的绘制及其在交易策略和智能交易系统中的应用。首先我们讨论图表的展现,绘制记忆和日本蜡烛图的关系。其次我们分析下指标在MQL5语言中的实现源代码。最后我们测试基于该指标和由此构建的交易策略的EA。
通用EA:自定义策略和辅助交易类(第三章)
通用EA:自定义策略和辅助交易类(第三章)

通用EA:自定义策略和辅助交易类(第三章)

在本文中,我们将继续分析CStrategy交易引擎的算法。这系列文章的第三篇包含如何使用这种方法开发特定的交易策略样例的详细分析。需特别关注辅助算法— 智能交易日志系统以及使用索引方式(Close[1],Open[0]等)访问数据。
检测超买/超卖区域的方法。 第一部分
检测超买/超卖区域的方法。 第一部分

检测超买/超卖区域的方法。 第一部分

超买/超卖区域是某种市场状态的特征,可由证券价格的疲软变化来区分。 这种负面变化会明显发生在任何尺度趋势发展的最后阶段。 由于交易中的利润价值直接取决于尽可能覆盖更广趋势幅度的能力,因此在任何证券交易中,探测此类区域的准确性是一项关键任务。
以 delta 指标为例开发股票交易量控制指标
以 delta 指标为例开发股票交易量控制指标

以 delta 指标为例开发股票交易量控制指标

本文讨论基于实际交易量并使用 CopyTicks() 和 CopyTicksRange() 函数开发股票指标的算法。 还描述了开发此类指标的一些细微环节,以及它们在实时和策略测试器中的操作。
图形界面 V: 垂直与水平滚动条 (第一章)
图形界面 V: 垂直与水平滚动条 (第一章)

图形界面 V: 垂直与水平滚动条 (第一章)

我们仍然在讨论在MetaTrader环境下开发创建图形界面库的开发,在本系列第五部分的第一篇文章中,我们将开发用于创建垂直与水平滚动条的类。
物美价廉的神经网络 - 链接 NeuroPro 与 MetaTrader 5
物美价廉的神经网络 - 链接 NeuroPro 与 MetaTrader 5

物美价廉的神经网络 - 链接 NeuroPro 与 MetaTrader 5

是否用于交易的特殊神经网络程序好似很昂贵和复杂,或是与此相反,太简单?来试试 NeuroPro。它是免费的,并且包含针对业余爱好者的最佳功能集合。这篇文章将告诉您如何结合 MetaTrader 5 来使用它。
组合剥头皮:分析过去的交易来提升未来交易的成效
组合剥头皮:分析过去的交易来提升未来交易的成效

组合剥头皮:分析过去的交易来提升未来交易的成效

本文所提供的技术讲述,旨在提高任何自动交易系统的有效性。 它简要解释了这个思路,以及它的基本原理、可能性和缺点。
跟踪止损和退出市场的模式
跟踪止损和退出市场的模式

跟踪止损和退出市场的模式

订单修改/关闭算法的开发人员面临无止境的痛苦 - 如何比较通过不同方法获得的结果?检查机制众所周知 - 它就是策略测试程序。但如何使 EA 同等地处理建立/关闭订单?本文将介绍一个能够重复建立大量订单的工具,让我们能够维持一个在数学上保持正确的平台,以比较针对跟踪止损和退出市场的不同算法的结果。
用 MQL5 创建交易活动控制板
用 MQL5 创建交易活动控制板

用 MQL5 创建交易活动控制板

本文介绍用 MQL5 开发活动控制板所遇到的问题。接口元件通过事件处理机制来管理。此外,还提供控制元件属性的灵活设置选项。活动控制板允许处理仓位,以及设置、修改和删除市场和挂单。
包含图形用户界面 (GUI) 的 EA 交易: 增加功能 (第二部分)
包含图形用户界面 (GUI) 的 EA 交易: 增加功能 (第二部分)

包含图形用户界面 (GUI) 的 EA 交易: 增加功能 (第二部分)

这是展示开发用于人工交易的多交易品种信号 EA 文章的第二部分,我们已经创建了图形界面,现在是时候把它与程序功能相关联了。
MQL5 向导: 根据计算价位下单, 止损和止盈。标准库扩展
MQL5 向导: 根据计算价位下单, 止损和止盈。标准库扩展

MQL5 向导: 根据计算价位下单, 止损和止盈。标准库扩展

本文描述 MQL5 标准库扩展, 可以使用 MQL5 向导接收来自包含模块的价格, 创建 EA, 下单, 止损和止盈。这种方法不会对模块的应用数量有任何额外的限制,亦不会在联合工作中导致冲突。
外汇交易ABC
外汇交易ABC

外汇交易ABC

金融市场的运作首先是交易业务。正如我们儿时熟知的,按照自己的直觉进行买卖。但是外汇交易却有些不同。本文将解析外汇交易的一些想法和外汇交易程序MQL 4 。
MQL5 编程基础:列表
MQL5 编程基础:列表

MQL5 编程基础:列表

用于交易策略开发的编程语言 MQL 的新版本 [MQL5] 与以前的版本 [MQL4] 相比,提供了更加强大和高效的功能。这些优势实质上是面向对象的编程功能。本文探讨对于复杂自定义数据类型的使用,例如节点和列表。它还在提供了在 MQL5 实战编程中使用列表的例子。
交易机器人的原型
交易机器人的原型

交易机器人的原型

本文是对创建算法的原则以及交易系统的元素的总结和系统化。本文讨论EA 交易算法的设计。我们将以CExpertAdvisor类作为示例进行探讨,该类可用于轻松快捷地开发交易系统。
MQL5 Cookbook: 基于三重滤网策略开发交易系统框架
MQL5 Cookbook: 基于三重滤网策略开发交易系统框架

MQL5 Cookbook: 基于三重滤网策略开发交易系统框架

在本文中,我们将基于三重滤网(Triple Screen)策略,使用MQL5开发一个交易系统的框架。EA交易不会从头开始开发,我们会简单地修改前一篇文章, 即"MQL5 Cookbook: 在EA交易中使用指标设置交易条件"中的程序,它已经基本上满足了我们的目标。所以这篇文章也会向您展示如何简单地修改已经完成的程序的模式。
preview
SQLite: MQL5 原生 SQL 数据库操纵

SQLite: MQL5 原生 SQL 数据库操纵

交易策略的研发与大数据处理相关联。 现在,您能够基于 SQLite 在 MQL5 中直接运用 SQL 查询来操纵数据库。 该引擎的重要特性在于整个数据库都被安置在用户 PC 上的单个文件中。
探索新功能:MQL5 的自定义指标
探索新功能:MQL5 的自定义指标

探索新功能:MQL5 的自定义指标

在这里,我无法一一列举新终端和新编程语言的所有新的可能性和功能。这数不胜数,而且部分创新点也需要以单独的章节来进行详细探讨。同样,本章节也不会出现以面向对象编程语言写就的代码。这部分内容十分重要,不能简单地附于其他内容之后作为补充优点呈现给开发人员。在本文中,我们将会探讨指标,以及相比 MQL4 指标的结构、图形、类型和编程细节。希望无论是初学者还是经验丰富的开发人员均能从本文中获益,也许部分读者还会有自己新的发现。
网格和马丁格尔:它们是什么?如何使用它们?
网格和马丁格尔:它们是什么?如何使用它们?

网格和马丁格尔:它们是什么?如何使用它们?

在本文中,我将试图详细解释什么是网格和马丁格尔,以及它们的共同点。此外,我将试着分析这些策略到底有多可行。这篇文章同时包含了数学和实践部分。
MagicNumber: 定单的“魔法“识别符
MagicNumber: 定单的“魔法“识别符

MagicNumber: 定单的“魔法“识别符

文章提及在相同 МТ 4 客户端内几个智能交易相互冲突的问题并且处理。 “教会”智能交易只管理自己的定单并且不修改和平仓 (手动开仓).文章希望能够给初期使用MQL 4终端和 程序的交易者带来益处。
一个为莫斯科交易所期货开发的点差策略实例
一个为莫斯科交易所期货开发的点差策略实例

一个为莫斯科交易所期货开发的点差策略实例

MetaTrader 5 可以开发和测试同时交易多种金融资产的交易机器人。其内建的策略测试器能够自动从经纪商的服务器中下载所需的订单时刻历史,并会考虑到账户的合约规范,所以开发人员不用做任何人工工作。这可以使交易环境条件的重建能够简单和可靠,包括乃至不同交易品种中订单来临之间毫秒级的间隔。在本文中,我们将演示在两种莫斯科交易所期货上开发和测试一种点差策略。
使用单独模块构建智能交易系统
使用单独模块构建智能交易系统

使用单独模块构建智能交易系统

开发指标、智能交易系统和脚本时,开发人员往往需要创建大量与交易策略没有直接关系的各种代码片段。 在本文中,我们研究一种复用早前已创建的模块(例如尾随、过滤和调度代码、亦或其他)来搭建智能交易系统的方法。 我们将看到这种编程方式的益处。
EA 状态短信通知
EA 状态短信通知

EA 状态短信通知

开发一个可以将你的 EA 状态通知你的短信通知系统,无论你在何处,都能始终了解任何紧急情况。
开发基于振荡器的之字折线 (ZigZag) 指标。 执行需求规范的示例
开发基于振荡器的之字折线 (ZigZag) 指标。 执行需求规范的示例

开发基于振荡器的之字折线 (ZigZag) 指标。 执行需求规范的示例

本文根据《订购指标时如何准备需求规范》一文中描述的规范样本之一展示之字折线 (ZigZag) 指标的开发。 该指标利用振荡器所定义的极值来构建。 它能够采用五种振荡器之一: WPR,CCI,Chaikin,RSI 或 Stochastic 振荡器。