MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
针对初学者以 MQL5 编写“EA 交易”的分步指南
针对初学者以 MQL5 编写“EA 交易”的分步指南

针对初学者以 MQL5 编写“EA 交易”的分步指南

使用 MQL5 的“EA 交易”编程很简单,您可以轻松学会。我们在本分步指南中向您指出了基于开发的交易策略编写简单的“EA 交易”所需的基本步骤。“EA 交易”的结构、内置技术指标和交易函数的使用、调试模式的详细内容以及策略测试程序的使用将在本文中一一论及。
MQL5 中创建订单号指标
MQL5 中创建订单号指标

MQL5 中创建订单号指标

我们拟于本文中创建两个指标:标绘订单号价格图表的订单号指标,以及标绘带有指定订单号的烛形图的订单号烛形图指标。每个指标都会将新价格写入某文件,并在该指标重启后采用此保存数据(其它程序亦可使用这些数据)
MQL5 中如何调用指标
MQL5 中如何调用指标

MQL5 中如何调用指标

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

MQL5 中对象创建和析构的顺序

每个对象,无论是自定义对象、动态数组还是对象数组,都以其特定的方式在 MQL5 程序中创建和删除。某些对象往往是其他对象的一部分,在取消初始化时对象删除的顺序便尤为重要。本文提供了涵盖对象使用机制的一些示例。
如果您不是卖家或供应商,要如何从MetaTrader应用商店以及交易信号服务赚钱
如果您不是卖家或供应商,要如何从MetaTrader应用商店以及交易信号服务赚钱

如果您不是卖家或供应商,要如何从MetaTrader应用商店以及交易信号服务赚钱

今年夏天我们已经发布了一个新的伙伴计划来帮助MQL5.community成员推销他们的产品和信号。然而,它不仅有利于MetaTrader市 场卖家和付费交易信号供应商,还有利于普通用户。现在,您无需亲自编写市场应用或在MQL5.com出售您信号的订阅赚钱。您只是简单地帮忙推销这些产 品,获得您的利润份额。
EA 交易中的资金管理函数
EA 交易中的资金管理函数

EA 交易中的资金管理函数

交易策略的开发主要着重于搜索进入和退出市场的模式以及维持仓位。如果我们能够将某些模式公式化为自动交易规则,则交易者面临计算持仓量、预付款数额等问题,以及在自动模式中维持抵押资金的安全水平以保证未平仓位的问题。在本文中,我们将使用 MQL5 语言构建几个进行这些计算的简单例子。
使用标准库类和Google Chart API 创建信息板
使用标准库类和Google Chart API 创建信息板

使用标准库类和Google Chart API 创建信息板

MQL5 编程语言主要针对自动化交易系统的创建以及复杂的技术分析工具。除此之外,它还允许我们创建有趣的信息系统以跟踪市场情况,并实现了与交易者的回路连接。本文会讲述 MQL5标准库的各个组件,并向大家展示它们为达各自目的的实际应用示例。还会呈示一个使用 Google Chart API 创建图表的例子。
preview
如何很快地制作一个交易机器人

如何很快地制作一个交易机器人

于金融市场中交易存在许多风险,其中就包括最为严重的一种 - 做出错误交易决策的风险。每一位交易者都梦寐以求有一个交易机器人,它能始终保持良好状态,而且不会受制于人类的诸多弱点 - 恐惧、贪婪和没耐心。
采用跟踪止损的赚钱算法
采用跟踪止损的赚钱算法

采用跟踪止损的赚钱算法

本文旨在研究带有不同的交易进入和采用跟踪止损的退出的算法盈利能力。待用的条目类型为随机进场与反向进场交易。止损订单用于跟踪止损与跟踪止盈。本文讲述的是年盈利能力约达30%的赚钱算法。
利用 MetaTrader 5 测试仪实现策略可视化
利用 MetaTrader 5 测试仪实现策略可视化

利用 MetaTrader 5 测试仪实现策略可视化

我们都知道有一个“百闻不如一见”的说法。关于巴黎和威尼斯,有各种各样的书可供您阅读,但是根据想像,您永远都不会懂得夜间漫步于这些神话般城市的街头会有怎样的感受。可视化的诸多优势,可以很容易地投射到我们生活的方方面面,其中就包括市场活动。比如说:基于采用指标的图表的价格分析,当然还有策略测试的可视化。本文中包含对于MetaTrader 5策略测试仪所有可视化功能的描述。
以MQL5 编写的EA 交易程序的测试与优化指南
以MQL5 编写的EA 交易程序的测试与优化指南

以MQL5 编写的EA 交易程序的测试与优化指南

本文解释识别和解决代码错误的步进式过程以及EA交易程序输入参数的测试与优化的步骤。您将了解如何使用 MetaTrader 5 客户端的策略测试程序为您的 EA 交易程序寻找最佳交易品种和一组输入参数。
preview
MetaTrader 5 中的交易事件

MetaTrader 5 中的交易事件

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

MetaTrader 5 中的订单、持仓和成交

不理解 MetaTrader 5 交易系统的机制,就不能创建一个强大的交易机器人。客户端从交易服务器接收有关持仓、订单和成交的信息。要使用 MQL5 正确处理这些数据,必须充分理解 MQL5程序和客户端之间的相互作用。
MetaTrader 5 带来新机遇
MetaTrader 5 带来新机遇

MetaTrader 5 带来新机遇

MetaTrader 4 在全世界范围内的交易者群体中收获了广泛的青睐,看起来似乎已经功德圆满了。利用其高处理速度、稳定性、编写指标的宽泛数组可能性、EA 交易、信息通达的交易系统,以及从 100 多家不同经纪人中进行挑选的能力 - 此终端于同类产品中鹤立鸡群、独树一帜。然而时间永不停歇,我们猛然间发现已经面临着选择 MetaTrade 4 还是 MetaTrade 5 的问题。那么,以有利于我们当前的观点来看,第 5 代终端有着哪些主要的不同呢?我们会在本文中给您讲述。
MetaTrader 5 - 超乎您的想像!
MetaTrader 5 - 超乎您的想像!

MetaTrader 5 - 超乎您的想像!

MetaTrader 5 客户端已经从无到有地发展起来,而且,当然也已经远远地超越了其前任版本。这种新型的交易平台为所有金融市场中的交易提供了无限的机遇。而且,其功能仍在持续扩展,以实现更多有用的功能与便利。现在,想要全部列出 MetaTrader 5 的繁多优势是非常难的。我们曾尝试专设一篇文章简要描述,结果让我们大吃一惊 - 这篇文章可远远谈不上简要!
利用 MQL5 云网络加速计算
利用 MQL5 云网络加速计算

利用 MQL5 云网络加速计算

您的家用电脑是几核的?优化一项交易策略,您可以运用多少计算机?我们在此展示如何利用MQL5云网络,点击鼠标即可获取遍及全球的计算能力,并通过这种方式加速计算。每过去一年,时间就是金钱这句话都会成为更被热议的话题,我们不能承受重要运算几十小时甚或几天的等候。
EA 交易中采用OnTrade() 函数处理交易事件
EA 交易中采用OnTrade() 函数处理交易事件

EA 交易中采用OnTrade() 函数处理交易事件

MQL5提供了海量的创新,其中就包括使用各种类型的事件(计时器事件、交易事件、自定义事件等)。有了处理事件的能力,您就能够创建全新类型的自动与半自动交易程序。我们会在本文中一起学习交易事件,并针对OnTrade()函数编写一些处理交易事件的代码。
针对初学者的 MQL 5 中的自定义指标
针对初学者的 MQL 5 中的自定义指标

针对初学者的 MQL 5 中的自定义指标

对于初学者而言,任何新鲜事物似乎都是复杂难懂的。我们熟知的事物对我们而言则极为简单明了。但我们不要忘记,任何事物,包括我们的母语,我们都是从头学起的。MQL5编程语言也是如此,它为开发人员开发自己的交易策略提供了广泛的可能性 - 您可以从基本概念和最简单的例子入手开始您的学习。本文将探讨技术指标与 MetaTrader 5 客户端的交互,并以简单自定义指标 SMA 作为示例。
在 MQL5 中使用对象指针
在 MQL5 中使用对象指针

在 MQL5 中使用对象指针

默认情况下,MQL5 中的所有对象都通过引用传递,但还有使用对象指针的可能性。然而,由于对象可能没有初始化,我们必须执行指针检查。在这种情况下,MQL5程序可能会因为关键性错误而终止并卸载。自动创建的对象不会引起此类错误,因此就此意义而言它们十分安全。通过本文,我们将理解对象引用和对象指针之间的差异,并思考如何编写使用指针的安全代码。
自适应交易系统以及它们在 MetaTrader 5 客户端中的运用
自适应交易系统以及它们在 MetaTrader 5 客户端中的运用

自适应交易系统以及它们在 MetaTrader 5 客户端中的运用

本文推荐一种由很多策略组成的自适应系统,每种策略执行其自己的虚拟交易操作。实际交易依据当时最赚钱策略的信号进行。归功于使用面向对象的方法、标准库中用于处理数据的类和交易类,系统的架构看起来很简单并且可扩展;现在,您可以轻松地创建和分析包含数以百计的交易策略的自适应系统。
基于 Bill Williams 所著"证券交易新空间"的 EA 交易程序
基于 Bill Williams 所著"证券交易新空间"的 EA 交易程序

基于 Bill Williams 所著"证券交易新空间"的 EA 交易程序

在本文中,我将依据 Bill Williams 所著的《证券交易新空间:如何从股票、债券和商品交易中的混沌获利》一书讨论 EA 交易程序的开发。该策略本身已经广为人知,并且其使用在交易者之间仍然备受争议。本文考虑系统的交易信号、其实施的细节以及有关历史数据的测试结果。
交易系统的评估 - 有关进入、退出与交易效率的概述
交易系统的评估 - 有关进入、退出与交易效率的概述

交易系统的评估 - 有关进入、退出与交易效率的概述

有很多指标可用于确定一个交易系统的效率和盈利能力。但是,交易者始终会将任何系统推向一个新的崩溃测试。本文讲述基于效率指标的统计如何用于 MetaTrader 5 平台。它包含一个类,该类用于将成交统计解释转变成与 S.V. Bulashev 所著《Statistika dlya traderov(面向交易者的统计)》一书不冲突的一种解释。它还包括一个用于优化的自定义函数示例。
MQL5 简介:如何编写简单的EA 交易和自定义指标
MQL5 简介:如何编写简单的EA 交易和自定义指标

MQL5 简介:如何编写简单的EA 交易和自定义指标

相比 MQL4,MetaTrader 5 客户端的 MetaQuotes 编程语言 5 (MQL5) 具有许多新的发展潜力和更高的性能。本文将帮助您熟悉这一新的编程语言。文中给出了编写EA 交易和自定义指标的简单示例。我们还会涉及到 MQL5 语言的一些细节,这些细节对于理解示例是必要的。
MQL5 初学者:EA 交易技术指标使用指南
MQL5 初学者:EA 交易技术指标使用指南

MQL5 初学者:EA 交易技术指标使用指南

为在EA 交易中获得内置或自定义指标的值,首先应使用相应函数创建指标的处理函数。本文中的示例说明了在创建自己的程序时如何使用技术指标。在本文中说明的指标使用 MQL5 语言构建。本文的目标受众是那些在交易策略开发上不具备太多经验的读者,并旨在通过使用提供的函数库提供简单明了的指标使用方式。
EA 交易中的限制和验证
EA 交易中的限制和验证

EA 交易中的限制和验证

是否可以在周一交易此交易品种?是否有足够的资金用于开仓?如果止损触发,损失有多大?如何限制挂单数量?交易操作在当前柱上执行还是在前一柱上执行?如果交易机器人无法执行此类验证,则任何交易策略可转为带来损失。本文说明在EA交易中有用的验证示例。
如何订购EA交易,并取得预期的结果
如何订购EA交易,并取得预期的结果

如何订购EA交易,并取得预期的结果

如何正确书写规格要求?当订购EA交易或指标时,什么是能从程序员那里期望得到的,什么是不能期望得到的?如何保持一个对话框,要特别注意什么时刻?本文给出这些以及其他许多对很多人来说并不那么显而易见的问题的答案。
使用MetaTrader 5作为MetaTrader 4的信号提供者
使用MetaTrader 5作为MetaTrader 4的信号提供者

使用MetaTrader 5作为MetaTrader 4的信号提供者

分析并通过技术实例说明怎样在MetaTrader 5平台上做交易分析而在MetaTrader 4上做交易。本文将展示如何在您的MetaTrader 5上创建简单的信号提供者,并且把它连接到多个客户端,甚至包括运行MetaTrader 4的客户端。而且您也可以发现怎样在您的真实MetaTrader 4账户中跟随自动交易锦标赛的选手。
如何将MetaTrader 5中的交易复制到MetaTrader 4
如何将MetaTrader 5中的交易复制到MetaTrader 4

如何将MetaTrader 5中的交易复制到MetaTrader 4

如今,在MetaTrader 5的实盘帐户上进行交易是否可行?如何进行此类交易?本文不仅从理论上解答这些问题,同时还提供可用的源代码,让你能够把MetaTrader 5终端上的交易复制到MetaTrader 4。本文对EA交易的开发者和练习交易者都非常有用。
MetaTrader 5终端策略测试器中的订单生成算法
MetaTrader 5终端策略测试器中的订单生成算法

MetaTrader 5终端策略测试器中的订单生成算法

MetaTrader 5 通过EA交易程序和MQL5编程语言使我们可以在内嵌的策略测试器中模拟自动交易,这种模拟称为EA交易程序的测试,它可以在实现中用多线程优化,也可以在多个设备中同步进行。为了提供完整的测试,我们需要基于可用的分钟历史来生成订单。本文提供了这种算法的详细描述,即在MetaTrader 5客户终端中怎样通过历史生成这些订单。
技术分析:我们如何分析?
技术分析:我们如何分析?

技术分析:我们如何分析?

本文简要介绍笔者对于指标重绘,多时间框架指标和日本蜡烛图(K线)的一些观点。本文内容只论及一般特征,不包含编程细节。
技术分析:我们分析什么?
技术分析:我们分析什么?

技术分析:我们分析什么?

本文试图分析几个 MetaTrader 客户端提供的特色行情描绘方式。这篇文章仅讲述一般原理,并不涉及编程。
将指标应用至其他指标
将指标应用至其他指标

将指标应用至其他指标

在编写使用 OnCalculate() 函数调用的简短形式的指标时,您可能会忽略这样一个事实,即指标的计算不仅可以通过价格数据完成,还可以通过其他指标(无论是内置指标还是自定义指标)的数据实现。是否要改进指标以使其可以正确应用至其他指标的数据?在本文中,我们将回顾修改所需的所有步骤。
MQL5:创建自己的指标
MQL5:创建自己的指标

MQL5:创建自己的指标

什么是指标?指标是我们希望以便利方式在荧幕上显示的一组计算值。这一组值在程序中以数组表示。因此,创建指标意即编写用于处理数组(价格数组)的算法并将处理结果记录在其他数组(指标值)中。本文通过描述“真实强弱指数”(True Strength Index) 的创建说明了如何在 MQL5 中编写指标。
Jeremy Scott - MQL5市场上的成功卖家
Jeremy Scott - MQL5市场上的成功卖家

Jeremy Scott - MQL5市场上的成功卖家

Jeremy Scott,在MQL5.community 中他的昵称是Johnnypasado,因其在MQL5市场上出售产品而为人们所熟知。Jeremy已经赚了好几千美元,并且这一势头还在延续。我们决定和这个未来的百万富翁来个近距离接触,并为其他MQL5市场上的卖家提供些建议。
探索新功能:MQL5 的自定义指标
探索新功能:MQL5 的自定义指标

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

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

MQL5云网络: 你还在计算吗?

自MQL5云网络发布以来很快就要有一年半的时间了,这个领先事件又迎来了一个算法交易的新时代 - 现在,通过轻点鼠标交易人员就可以拥有成百上千的计算核心来处理优化他们的交易策略。
全新 MetaTrader 5 和 MQL5 来袭
全新 MetaTrader 5 和 MQL5 来袭

全新 MetaTrader 5 和 MQL5 来袭

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

关于MetaTrader 4和MetaTrader 5交易信号的一般资料

MetaTrader 4 / MetaTrader 5的“交易信号”是这样一种服务,它允许普通交易者复制信号提供者的交易操作。我们的目标是开发一种能被广泛使用的新服务,它能够保护订阅者,并为他们减少不必要的成本支出。
如何订阅交易信号
如何订阅交易信号

如何订阅交易信号

信号服务推广了可用于 MetaTrader 4 和 MetaTrader 5 平台的社群交易。该服务已集成在交易平台之中, 并且允许任何人轻松地跟单专业操盘手的交易。从数千信号提供者当中任意选择, 只需数次点击即可订阅,之后操盘手的交易将被复制到您的帐户。
preview
如何成为MetaTrader4和MetaTrader5的信号提供者

如何成为MetaTrader4和MetaTrader5的信号提供者

您想提供自己的交易信号,并从中获利吗? 在 MQL5.com 网站上注册为卖家,指定您的交易账户,并为交易者提供订阅,即可复制您的交易。