MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
发布算法交易文章,赚取200美元!

发布算法交易文章,赚取200美元!

撰写一篇文章,为算法交易的发展做出贡献。分享您在交易和编程方面的经验,我们将支付您200美元。此外,在受欢迎的MQL5.com网站上发表文章,为您在专业社区中推广个人标签提供绝佳的机会。成千上万的交易者将会阅读您的文章。您可以与志同道合的伙伴讨论您的想法,获得新的经验,并将您的知识货币化。
未知概率密度函数的核密度估计
未知概率密度函数的核密度估计

未知概率密度函数的核密度估计

本文主要介绍用于估计未知概率密度函数的核密度程序的创建。核密度估计方法被选择用于执行此任务。本文包含该方法的软件实现的源代码、其使用示例以及插图。
多元回归分析。策略生成程序和策略分析程序二合一
多元回归分析。策略生成程序和策略分析程序二合一

多元回归分析。策略生成程序和策略分析程序二合一

本文介绍针对交易系统开发的多元回归分析的运用方法。它说明策略搜索自动化的回归分析的运用。生成了一个回归等式,并作为一个例子集成在一个不需要精通编程的 EA 中。
使用 EA Tree 在几分钟内创建 MQL5 EA 交易:第一部分
使用 EA Tree 在几分钟内创建 MQL5 EA 交易:第一部分

使用 EA Tree 在几分钟内创建 MQL5 EA 交易:第一部分

EA Tree 是第一款拖放 MetaTrader MQL5 EA 交易生成器。您可以使用非常易用的图形用户界面创建复杂的 MQL5。在 EA Tree 中,通过将盒子连接在一起创建 EA 交易。盒子可以包含 MQL5 函数、技术指标、自定义指标或值。使用盒子树,EA Tree 生成 EA 交易的 MQL5 代码。
要么赢走全部,要么输个精光的 ForEx 策略
要么赢走全部,要么输个精光的 ForEx 策略

要么赢走全部,要么输个精光的 ForEx 策略

本文旨在创建最简单的交易策略,实施"要么赢走全部,要么输个精光"的游戏原则。我们不想创建一个能盈利的 EA 交易- 目标是通过最大可能概率让初始存款增加几倍。在不知道任何技术分析或不使用任何指标的情况下是否有可能在 ForEx 市场中赢走全部或输个精光?
升级至MetaTrader 4 Build 600及更高版本
升级至MetaTrader 4 Build 600及更高版本

升级至MetaTrader 4 Build 600及更高版本

新版MetaTrader 4客户端的新版本拥有用户数据存储的更新结构。在早期版本中所有程序,模板,配置文件等都被直接存储在程序端的安装文件夹。现在,特定用户所需的所有必要的数据都存储在一个单独的称为数据文件夹的目录中。阅读文章来寻找常见问题的答案。
在Linux上运行MetaTrader 5
在Linux上运行MetaTrader 5

在Linux上运行MetaTrader 5

在本文中,我们演示了一种在流行的Linux版本(Ubuntu和Debian)上安装MetaTrader 5的简单方法。这些系统广泛用于服务器硬件以及交易者的个人计算机上。
Mac OS 上的 MetaTrader 5
Mac OS 上的 MetaTrader 5

Mac OS 上的 MetaTrader 5

Apple 产品现已越来越深入人心。MetaQuotes Software Corp. 紧跟 IT 行业的脚步,并已发布了针对基于 iOS 设备的专门移动应用 - iPhone 版 MetaTrader 4 和 iPhone 版 MetaTrader 5。MQL5.community 论坛上也有许多话题,人们可以在此找到 Mac OS 操作系统下运行 MetaTrader 5 的解决方案。本文中,您将学会如何通过 Apple 的流行操作系统使用 MetaTrader 5。
指标喷发整体特征的计算
指标喷发整体特征的计算

指标喷发整体特征的计算

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

MQL5 编程基础:时间

本文着重于讲述处理时间的标准 MQL5 函数,以及创建 EA 交易和指标时所需的处理时间的编程技巧和实用函数。更格外注意时间测量的一般性理论。本文面对的主要是 MQL5 编程新手。
摆脱自制的 DLL
摆脱自制的 DLL

摆脱自制的 DLL

如果 MQL5 语言的功能性不足以完成任务,MQL5 程序员不得不诉诸于其他工具。他们必须转向其他编程语言并创建中间 DLL。MQL5 可提供各种数据类型并将它们传递至 API,但遗憾的是,MQL5 无法解决从收到的指针提取数据的相关问题。在本文中,我们将循规蹈矩,说明交换和使用复杂数据类型的简单机制。
Dr. Tradelove 或我如何不再担忧并创建一个自训练 EA 交易
Dr. Tradelove 或我如何不再担忧并创建一个自训练 EA 交易

Dr. Tradelove 或我如何不再担忧并创建一个自训练 EA 交易

一年前,joo 在他的《遗传算法 - 很简单!》一文中向我们提供了一种用 MQL5 实施遗传算法的工具。现在,利用这个工具,我们将创建一个 EA 交易,该 EA 将依据某些边界条件对其自己的参数进行遗传优化。
依据价格相关性的统计数据过滤信号
依据价格相关性的统计数据过滤信号

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

在过去的价格行为和其将来的趋势之间是否有任何相关性?为什么今天的价格重复以前的每日运行特征呢?统计能用于预测价格动态吗?有一个答案,并且是积极的答案。如果您有任何疑问,则本文正好为您释疑解惑。我将告诉您如何用 MQL5 为一个交易系统创建一个有效的过滤器,展现价格变动中有趣的图形。
Box-Cox 变换
Box-Cox 变换

Box-Cox 变换

本文旨在使读者了解 Box-Cox 变换。文章阐述了变换的使用,并给出一些示例以允许使用随机序列和真实报价来评估变换效率。
如何使用 UML 工具开发 EA 交易
如何使用 UML 工具开发 EA 交易

如何使用 UML 工具开发 EA 交易

本文讨论使用 UML 图形语言创建 EA 交易,该语言用于建立面向对象软件系统的可视化模型。此方法的主要优点是实现了建模过程的可视化。本文以一个例子说明如何使用 Software Ideas Modeler 建立一个 EA 交易的结构和属性的模型。
在 MetaTrader 5 中应用费歇尔变换和逆费歇尔变换进行市场分析
在 MetaTrader 5 中应用费歇尔变换和逆费歇尔变换进行市场分析

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

我们知道一个市场周期的概率密度函数 (PDF) 并不会让我们想到高斯分布,而是一种正弦波的概率密度函数,并且大多数指标假定市场周期的概率密度函数为高斯分布,我们需要一种方式来纠正。解决方法是使用费歇尔变换。费歇尔变换将任何波形的概率密度函数转换为近似的高斯分布。本文介绍费歇尔变换和逆费歇尔变换的算法以及它们在交易中的应用。介绍和评估了一个基于逆费歇尔变换的专有交易模块。
MQL5 中艾略特波浪自动分析的实施
MQL5 中艾略特波浪自动分析的实施

MQL5 中艾略特波浪自动分析的实施

艾略特波浪理论是最流行的市场分析方法之一。然而,这个过程非常复杂,从而导致我们使用额外的工具。自动标记器是其中一种工具。本文描述用 MQL5 语言创建艾略特波浪的自动分析程序。
购买交易机器人前如何进行测试
购买交易机器人前如何进行测试

购买交易机器人前如何进行测试

与别处相比,在 MQL5 应用商店购买交易机器人有一个明显的优势 - 其提供的自动化系统,可直接在 MetaTrader 5 终端内接受完整测试。购买前,EA 交易可以、也应该在内置的策略测试程序中,以所有不利的模式谨慎运行,从而对此系统有一个全面的认识。
MQL5 编程基础:字符串
MQL5 编程基础:字符串

MQL5 编程基础:字符串

本文会讲解您可以利用 MQL5 中的字符串所做的一切。对此感兴趣的主要应是 MQL5 入门程序员,同时也为经验丰富的开发人员提供了一次总结和系统化其知识的良机。
机器学习:支持向量机如何应用于交易
机器学习:支持向量机如何应用于交易

机器学习:支持向量机如何应用于交易

长时间以来,支持向量机一直被应用于生物信息学和应用数学等领域,以评估复杂数据集以及提取可用于数据分类的有用模式。本文会研究何为支持向量机、它们的工作方式,以及为什么说它们在提取复杂模式时非常有用。之后,我们再研究如何将其应用于市场,并发挥交易建议的潜在作用。本文将提供使用支持向量机学习工具的有效示例,让读者能够试验自己的交易。
MQL5 信号的优势
MQL5 信号的优势

MQL5 信号的优势

MetaTrader 5 最近引入了交易信号服务,允许交易者复制任何信号提供者的交易操作。用户可以于其账户选择任何信号、执行订阅并复制所有交易记录。而信号提供者可以设定其订阅价格,并从其订阅者每月收取固定的费用。
通过辅助指标减少内存消耗
通过辅助指标减少内存消耗

通过辅助指标减少内存消耗

如果一个指标使用很多其他指标的值进行计算,则它会消耗很多内存。本文介绍在使用辅助指标时,减少内存消耗的几种方法。保存的内存允许在客户端中增大同时使用的货币对、指标和策略的数量。这样提高了交易投资组合的可靠性。对您的计算机的技术资源进行这样的简单考量就可转换为任您处置的资金资源。
新MQL4中的离线图表
新MQL4中的离线图表

新MQL4中的离线图表

更新的MQL4具有存储历史数据的新格式,并提供相应的MqlRates结构,便于时间,开盘,最低,最高,收盘和交易量值的存储。多年来,交易者们已经开发出收集和存储他们在HST文件中的数据,用于生成离线图表的MQL4应用。我们可以向您保证,所有先前编译的EX4文件在新的MetaTrader 4程序端将以之前相同的方式工作。
MetaTrader 4 Build 600及以上的数据结构 -  MQL4文章
MetaTrader 4 Build 600及以上的数据结构 -  MQL4文章

MetaTrader 4 Build 600及以上的数据结构 - MQL4文章

MetaTarder 4 build 600突出了新的结构和客户端文件的位置。现在,MQL4应用程序根据类型置于不同的目录中(EA交易,指标或脚本)。 在大多数情况下,程序端数据现在存储在不同于程序端安装位置的特殊的数据文件夹。在本文中,我们将详细描述数据如何传输,以及引入新存储系统的原因。
MQL5.community 最活跃成员获颁 iPhones 大奖!
MQL5.community 最活跃成员获颁 iPhones 大奖!

MQL5.community 最活跃成员获颁 iPhones 大奖!

继我们决定奖励最为出色的 MQL5.com 参与者后,我们已经选出了确定每一位参与者对本社区发展所做贡献的关键准则。结果我们选出了下述优胜者,他们在网站上发布的文章数量最多 - investeo (11 篇)和 victorg (10 篇);以及将其代码提交到代码库的 – GODZILLA (340 个程序)、Integer (61 个程序)和 abolk (21 个程序)。
作为创建自动化交易系统新方法的自动机编程
作为创建自动化交易系统新方法的自动机编程

作为创建自动化交易系统新方法的自动机编程

本文会让我们以一种全新的视角,来进行 MQL4 与 MQL5 中 EA、指标及脚本的开发。将来,此编程范式会逐渐变成 EA 实施领域所有交易者的基本标准。利用这种自动机编程范式,MQL5 和 MetaTrader 5 开发人员也就具备了某种程度上创建新语言 - MQL6 - 和新平台 - MetaTrader 6 的能力。
preview
OpenCL:从朴素到更具深度的编程

OpenCL:从朴素到更具深度的编程

本文要重点讲述的是一些优化能力,但至少要对 OpenCL 内核借以执行的基本硬件多少有些了解,才能启动这些能力。获取的数据远非最高值,但即便是这样,也建议充分利用现有资源(由该终端开发人员实施的 OpenCL API 不允许控制对于优化而言很重要的一些参数 - 尤其是工作组的大小),通过主机程序执行获得的增益是非常可观的。
OpenCL:并行世界的桥梁
OpenCL:并行世界的桥梁

OpenCL:并行世界的桥梁

2012 年 1 月末,从事 MetaTrader 5 开发业务的软件开发公司宣布 MQL5 可向 OpenCL 提供原生支持。本文通过一个示例说明了 MQL5 环境下 OpenCL 的编程基础知识,并列举了几个示例,讲述了为提高运行速度所做的朴素优化。
为什么说 MQL5 应用商店是销售交易策略与技术指标的最佳去处
为什么说 MQL5 应用商店是销售交易策略与技术指标的最佳去处

为什么说 MQL5 应用商店是销售交易策略与技术指标的最佳去处

MQL5.community 应用商店为 EA 交易开发人员提供了一个由成千上万潜在客户构成的、已经成型的市场。这里是销售交易机器人和技术指标的最佳去处!
MetaTrader 5 与 MQL5 提供的无限机遇
MetaTrader 5 与 MQL5 提供的无限机遇

MetaTrader 5 与 MQL5 提供的无限机遇

本文中,我想举一个例子说明交易者的程序会是什么样子,以及如果从头到始学习 MQL5,9 个月内能达到什么程度。这个例子还会显示出对于一个交易者而言,这样一种程序在占用价格图表最小空间的同时,其功能多样性与信息翔实性如何。而且,我们也会看出,可以通过何种方式,得到颜色多样、清晰明快且对于用户而言直观明确的交易信息面板。以及许许多多的其它功能...
如何在"应用商店"中发布产品
如何在"应用商店"中发布产品

如何在"应用商店"中发布产品

通过市场向来自世界各地的数百万 MetaTrader 用户提供您的交易应用程序。 该服务提供了一个现成的基础架构:接触大量受众、解决方案发放许可、试用版、发布更新和接受付款。 您只需要快速完成一个卖家注册过程,即可发布您的产品。 利用服务提供的现成技术基础,开始从您的程序中产生额外的利润。
AutoElliottWaveMaker - 用于艾略特波浪半自动分析的 MetaTrader 5 工具
AutoElliottWaveMaker - 用于艾略特波浪半自动分析的 MetaTrader 5 工具

AutoElliottWaveMaker - 用于艾略特波浪半自动分析的 MetaTrader 5 工具

本文要讲述的是 AutoElliottWaveMaker - MetaTrader 5 中针对艾略特波浪分析的首次开发,体现出手动与自动波浪标签的合二为一。该波浪分析工具完全在 MQL5 中编写,不包含任何外部 dll 库。这也是可以(且应)利用 MQL5 开发成熟有趣程序的又一证据。
利用 EX5 库来推动您的项目开发
利用 EX5 库来推动您的项目开发

利用 EX5 库来推动您的项目开发

隐藏 .ex5 文件中类/函数的实施细节,会让您能够同其他开发人员共享自己的专有算法,设立共同项目并在网络中宣传它们。而且,在 MetaQuotes 团队不遗余力地引入直接继承 ex5 库类可能性的同时,我们现在就要付诸实施了。
保证 MQL5 代码的安全:密码保护,钥匙生成器,时间限制,远程许可证及先进的 EA 许可证密钥加密技术
保证 MQL5 代码的安全:密码保护,钥匙生成器,时间限制,远程许可证及先进的 EA 许可证密钥加密技术

保证 MQL5 代码的安全:密码保护,钥匙生成器,时间限制,远程许可证及先进的 EA 许可证密钥加密技术

大多数开发人员都需要保证其代码的安全性。本文就会讲到 MQL5 软件的几种不同的保护方式 - 其中涉及到的是赋予 MQL5 脚本、EA 交易和指标许可能力的方法。包括密码保护、钥匙生成器、账户许可、时限评估以及采用 MQL5-RPC 调用的远程保护。
Trademinator 3:交易机器的崛起
Trademinator 3:交易机器的崛起

Trademinator 3:交易机器的崛起

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

使用 EA 交易可视向导创建 EA 交易

MetaTrader 5的EA交易可视向导提供一种高度直观的图形环境,带有一整套允许您在数分钟内完成EA交易设计的预定义交易代码块。EA交易可视向导的单击拖拽法允许您像使用铅笔和纸张一样,创建外汇交易策略与信号的可视化呈现。这些交易图表均通过Molanis的MQL5代码生成器自动进行分析,并将其转换为即用型EA交易。而互动式图形环境则会简化设计过程,且无需编写MQL5代码。
使用指数平滑法进行时间序列预测(续)
使用指数平滑法进行时间序列预测(续)

使用指数平滑法进行时间序列预测(续)

本文力求升级此前创建的指标,并简要讲述了利用自助法与分位数评估预测置信区间的一种方法。如此一来,我们便会获得将用于评估预测准确性的预测指标和脚本。
创建 EA 交易优化的自定义标准
创建 EA 交易优化的自定义标准

创建 EA 交易优化的自定义标准

MetaTrader 5 客户端提供了各种机会来优化 EA 交易的参数。除了策略测试程序中包含的优化标准以外,开发人员还有机会创建自己的标准。这样一来,EA 交易的测试和优化便具有了无限的可能性。本文介绍了创建此类标准的实用方法,既适用于复杂标准,也适用于简单标准。
在 MetaTrader 5 中使用自组织特征映射(Kohonen 映射)
在 MetaTrader 5 中使用自组织特征映射(Kohonen 映射)

在 MetaTrader 5 中使用自组织特征映射(Kohonen 映射)

自组织特征映射(Kohonen 映射)最有趣的方面是,其在不受监督的情况下就可学会对数据进行分类。就其基本形式而言,该映射能够生成输入数据的一个类似映射(聚类)。可使用 SOM 映射实现高维数据的分类和可视化。在本文中,我们将讨论 Kohonen 映射的几个简单应用。
统计估计
统计估计

统计估计

对某个序列的统计参数进行估计非常重要,因为大多数数学模型和方法均基于不同的假设。例如,正态分布规律或离差值(或其他参数)就是这样。因此,在分析和预测时间序列时,我们需要一个简单方便的工具,用于快速清晰地估计主要统计参数。本文简要说明了一个随机序列的最简单统计参数,以及其可视分析的几种方法。本文还说明了如何在 MQL5 中实现这些方法,以及使用 Gnuplot 应用程序对计算结果进行可视化的方法。