MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
学习如何设计基于 CCI 的交易系统
学习如何设计基于 CCI 的交易系统

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

来自我们的《学习如何设计交易系统》系列的新篇章中,我将介绍商品通道指数(CCI),解释其细节,并与您分享如何基于此指标创建交易系统。
轻松快捷开发 MetaTrader 程序的函数库(第十七部分):函数库对象之间的交互
轻松快捷开发 MetaTrader 程序的函数库(第十七部分):函数库对象之间的交互

轻松快捷开发 MetaTrader 程序的函数库(第十七部分):函数库对象之间的交互

在本文中,我们将完成所有函数库对象的基准对象开发,以便任何基于此函数库的对象都能够与用户进行交互。 例如,用户将能够设置开仓时可接受的点差大小,和预警价位,当点差达到该数值,或价格触及预警价位时,来自品种对象的事件将被一并发送到监听此信号的程序。
preview
利用 CatBoost 算法寻找外汇市场的季节性模式

利用 CatBoost 算法寻找外汇市场的季节性模式

本文探索了用时间过滤器建立机器学习模型,并讨论了这种方法的有效性。现在,只要简单地指示模型在一周中某一天的某个时间进行交易,就可以消除人为因素。模式搜索可以由单独的算法提供。
在视图内/外绘制通道
在视图内/外绘制通道

在视图内/外绘制通道

如果说通道是继移动平均线之后最流行的市场分析和交易决策工具,我想这并没有夸大。无需深入了解为数众多的使用通道及其组件的交易策略,我们将讨论某指标的数据基础和实际实施,该指标用于在客户端的屏幕上绘制由三个极值确定的通道。
MQL5 Cookbook: 开发多品种指标分析价格偏离
MQL5 Cookbook: 开发多品种指标分析价格偏离

MQL5 Cookbook: 开发多品种指标分析价格偏离

在本篇中, 我们将研究开发一款多品种指标来分析指定时间周期内的价格偏离。其核心议题已经在之前的多货币对指标编程文章中进行过讨论 "MQL5 Cookbook: 用 MQL5 开发多品种波动指标"。所以这次,我们将仅关注那些有了大幅变化的新特征和功能。如果您是多货币对指标编程的新人, 我建议您先去阅读之前的文章。
preview
构建自动运行的 EA(第 06 部分):账户类型(I)

构建自动运行的 EA(第 06 部分):账户类型(I)

今天,我们将看到如何创建一个在自动模式下简单安全地工作的智能系统。 当前状态下,我们的 EA 已能在任何状况下工作,但尚未准备好自动化。 我们仍然需要在几点上努力。
preview
RSI深三步交易技巧

RSI深三步交易技巧

在MetaTrader 5中展示RSI深三步交易技术。本文基于一系列新的研究,这些研究展示了一些基于RSI的交易技术,RSI是一种技术分析指标,用于衡量股票、货币或商品等证券的强度和动量。
在 MetaTrader 5 中的连续期货合约
在 MetaTrader 5 中的连续期货合约

在 MetaTrader 5 中的连续期货合约

期货合约的生存跨度较短,它们的技术分析更复杂。对于短周期图表,技术分析是十分困难的。例如,UX-9.13 乌克兰股指期货的日线图上,有超过 100 根柱线。所以, 交易员会创建组合的长线期货合约。这篇文章解释了如何在 MetaTrader 5 客户端中拼接期货合约。
preview
从头开始开发智能交易系统(第 31 部分):面向未来((IV)

从头开始开发智能交易系统(第 31 部分):面向未来((IV)

我们继续从 EA 中删除单独的部件。 这是本系列中的最后一篇文章。 并且最后要移除的是声音系统。 如果您之前没有关注过这些文章系列,可能会有点困惑。
MetaTrader 5 带来新机遇
MetaTrader 5 带来新机遇

MetaTrader 5 带来新机遇

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

MetaTrader 5 的 WebSocket — 使用 Windows API

在本文中,我们将使用 WinHttp.dll 针对 MetaTrader 5 平台创建 WebSocket 客户端程序。 客户端最终将作为一个类实现,并借助 Binary.com 的 WebSocket API 进行测试。
DoEasy 函数库中的图形(第八十八部分):图形对象集合 — 存储对象动态变化属性的二维动态数组
DoEasy 函数库中的图形(第八十八部分):图形对象集合 — 存储对象动态变化属性的二维动态数组

DoEasy 函数库中的图形(第八十八部分):图形对象集合 — 存储对象动态变化属性的二维动态数组

在本文中,我将创建一个动态多维数组类,该类能够改变任意维度中的数据量。 基于所创建的类,我还将创建一个二维动态数组来存储一些会动态变动的图形对象属性。
针对交易的组合数学和概率论(第四部分):伯努利(Bernoulli)逻辑
针对交易的组合数学和概率论(第四部分):伯努利(Bernoulli)逻辑

针对交易的组合数学和概率论(第四部分):伯努利(Bernoulli)逻辑

在本文中,我决定重点阐述著名的伯努利(Bernoulli)规划案,并展示如何用它来描述与交易相关的数据数组。 所有这些将被用来创建一个自适应的交易系统。 我们还将寻找一个更通用的算法,一个特例是伯努利公式,并查找能够运用它的应用。
在 MQL5.com 上的自由职业者工作 - 开发者喜爱的位置
在 MQL5.com 上的自由职业者工作 - 开发者喜爱的位置

在 MQL5.com 上的自由职业者工作 - 开发者喜爱的位置

自动交易的开发者不再需要去市场中寻找需要 EA 的交易者 - 现在他们会来找你。目前,成千上万的交易者到 MQL5 上给自由开发人员下订单,并在 MQL5.com 上为任务支付报酬。4 年以来,这项服务促成了三千名交易员对超过 10,000 个任务进行了支付。并且交易员与开发者的行动正在持续增长!
preview
从头开始开发智能交易系统(第 22 部分):新订单系统 (V)

从头开始开发智能交易系统(第 22 部分):新订单系统 (V)

今天,我们将继续开发新订单系统。 实现一个新系统并非那么容易,因为我们经常会遇到各种问题令过程复杂化。 当这些问题出现时,我们必须停下来重新分析我们前进的方向。
preview
学习如何基于抛物线 SAR 设计交易系统

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

在本文中,我们将继续讲述如何基于最流行的指标设计交易系统。 在本文中,我们将详细学习抛物线 SAR 指标,以及如何运用一些简单的策略来设计用于 MetaTrader 5 的交易系统。
利用 HTML 报告分析交易结果
利用 HTML 报告分析交易结果

利用 HTML 报告分析交易结果

MetaTrader 5 平台具有保存交易报告,以及智能交易系统测试和优化报告的功能。 交易和测试报告可以按照两种格式保存:XLSX 和 HTML,而优化报告可以保存为 XML。 在本文中,我们将研究 HTML 测试报告,XML 优化报告和 HTML 交易历史报告。
preview
一张图表上多个指标(第 04 部分):晋升为一款智能交易系统

一张图表上多个指标(第 04 部分):晋升为一款智能交易系统

在我之前的文章里,我已经解释了如何创建拥有多个子窗口的指标,在使用自定义指标时如此这般会变得很有趣。 这次,我们将看到如何为智能交易系统添加多个窗口。
源代码的跟踪、调试和结构分析
源代码的跟踪、调试和结构分析

源代码的跟踪、调试和结构分析

可以在没有很大困难的情况下解决创建执行代码的结构以及对其进行跟踪的整个复杂问题。由于 MQL5 语言的新功能 - 自动创建复杂类型的数据变量(结构和类)以及在超出局部范围时自动消失,这种可能性已经出现在 MetaTrader 5 中。本文提供对方法和现成工具的描述。
MQL5.community 最活跃成员获颁 iPhones 大奖!
MQL5.community 最活跃成员获颁 iPhones 大奖!

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

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

连续前行优化 (第五部分): 自动优化器项目概述和 GUI 的创建

本文深入讲述在 MetaTrader 5 终端里的前向优化。 在先前的文章中,我们研究了生成和过滤优化报告的方法,并开始分析负责优化过程的应用程序的内部结构。 自动优化器是作为 C# 应用程序实现的,并且拥有自己的图形界面。 第五篇文章专门论述了此图形界面的创建。
DoEasy 函数库中的时间序列(第三十九部分):基于函数库的指标 - 准备数据和时间序列事件
DoEasy 函数库中的时间序列(第三十九部分):基于函数库的指标 - 准备数据和时间序列事件

DoEasy 函数库中的时间序列(第三十九部分):基于函数库的指标 - 准备数据和时间序列事件

本文讨论如何应用 DoEasy 库来创建多品种、多周期指标。 我们准备在指标中操控函数库类,并创建时间序列作为指标的数据源进行测试。 我们还将实现时间序列事件的创建和发送。
构建新兴的社交技术, 第二部分: 编制 MQL5 的 REST 客户端
构建新兴的社交技术, 第二部分: 编制 MQL5 的 REST 客户端

构建新兴的社交技术, 第二部分: 编制 MQL5 的 REST 客户端

让我们现在来塑造本文第一部分介绍过的,基于 PHP 的 Twitter (推特)。我们正在组装 SDSS 的不同部分。有关客户端的系统体系结构, 我们借助 MQL5 新提供的 WebRequest() 函数, 通过 HTTP 发送交易信号。
宏观经济数据对货币价格波动影响的还原分析
宏观经济数据对货币价格波动影响的还原分析

宏观经济数据对货币价格波动影响的还原分析

本文研究宏观经济统计数据的多元还原分析应用程序。同时也以 EURUSD 货币对为例,洞察统计数据的评估,对于汇率波动的影响。这种评估可以自动分析基本面,使得交易新手也可运用。
preview
从头开始开发智能交易系统(第 9 部分):概念上的飞跃  (II)

从头开始开发智能交易系统(第 9 部分):概念上的飞跃 (II)

在本文中,我们将把 Chart Trade 这个应用程序放置在浮动窗口当中。 在前一篇中,我们创建了一个基本系统,该系统支持在浮动窗口中使用模板。
研究 CCanvas 类。抗锯齿和阴影
研究 CCanvas 类。抗锯齿和阴影

研究 CCanvas 类。抗锯齿和阴影

CCanvas 类的抗锯齿算法是所有使用抗锯齿构造的基础。本文包括其算法的操作内容, 并提供相应的直观示例。它也涵盖了绘制图形对象造型, 以及在画布上绘制造型的算法详情。数值分析库 ALGLIB 用于计算。
preview
一步步学习如何利用公允价值缺口(FVG)或市场不平衡性来交易的策略:一种“聪明资金”的交易方法

一步步学习如何利用公允价值缺口(FVG)或市场不平衡性来交易的策略:一种“聪明资金”的交易方法

基于公允价值缺口(FVG)交易策略的MQL5自动化交易算法创建与分步实施指南。这一教程旨在为无论是初学者还是经验丰富的交易者提供一个实用的EA创建指南。
如何在莫斯科交易所安全地使用您的 EA 进行交易
如何在莫斯科交易所安全地使用您的 EA 进行交易

如何在莫斯科交易所安全地使用您的 EA 进行交易

本文深入研究了交易方式, 通过莫斯科交易所衍生产品市场的例子来说明如何确保在股票和低流动性市场中交易操作的安全性。它带来了一些实践方法, 其交易原理在文章 "Principles of Exchange Pricing through the Example of Moscow Exchange's Derivatives Market - 莫斯科交易所衍生产品市场为例的定价原则" 里描述。
preview
来自专业程序员的提示(第一部分):代码存储、调试和编译。 操控项目和日志

来自专业程序员的提示(第一部分):代码存储、调试和编译。 操控项目和日志

这些提示来自专业程序员,涵盖有关方法、技术和辅助工具,能够令编程更轻松。
DoEasy 函数库中的图形(第八十七部分):图形对象集合 - 在所有打开的图表上管理对象属性修改
DoEasy 函数库中的图形(第八十七部分):图形对象集合 - 在所有打开的图表上管理对象属性修改

DoEasy 函数库中的图形(第八十七部分):图形对象集合 - 在所有打开的图表上管理对象属性修改

在本文中,我将继续跟踪标准图形对象事件,并创建允许用户控制在终端中打开的任何图表上放置的图形对象属性更改的功能。
MQL5 Cookbook: 处理 BookEvent
MQL5 Cookbook: 处理 BookEvent

MQL5 Cookbook: 处理 BookEvent

本文研究 BookEvent - 一个市场深度事件,以及它的处理原理。一个处理市场深度状态的 MQL 程序,作为例程。它采用面向对象方法编写。处理结果作为面板显示在屏幕上,还有市场深度级别。
DoEasy 函数库中的时间序列(第四十部分):基于函数库的指标 - 实时刷新数据
DoEasy 函数库中的时间序列(第四十部分):基于函数库的指标 - 实时刷新数据

DoEasy 函数库中的时间序列(第四十部分):基于函数库的指标 - 实时刷新数据

本文研究开发基于 DoEasy 库的简单多周期指标。 我们来改进时间序列类,从而能接收来自任何时间帧的数据,并在当前图表周期内显示。
更好的程序员(第 04 部分):如何成为更迅捷的开发人员
更好的程序员(第 04 部分):如何成为更迅捷的开发人员

更好的程序员(第 04 部分):如何成为更迅捷的开发人员

每位开发人员都希望能够更快地编写代码,且能够更快、更有效地编写代码并非只是少数人与生俱来的特殊能力。 无论有多少年的敲键盘经验,这项技能每位编码员都可以学习。
基于预定义的风险和风险/回报比建立互动式半自动拖放“EA 交易”
基于预定义的风险和风险/回报比建立互动式半自动拖放“EA 交易”

基于预定义的风险和风险/回报比建立互动式半自动拖放“EA 交易”

部分交易人员选择自动执行所有交易,而另外一些交易人员基于多个指标的输出混合使用自动和手动交易。作为后者中的一员,我需要一个互动式工具以直接从图表动态地评估风险和回报价格水平。本文将介绍通过预定义的资产净值风险和风险/回报比实施互动式半自动“EA 交易”的方法。“EA 交易”风险、风险/回报和手数参数可于运行时期间在 EA 面板上更改。
preview
构建自动运行的 EA(第 09 部分):自动化(I)

构建自动运行的 EA(第 09 部分):自动化(I)

尽管创建自动 EA 并非一项非常困难的任务,但在缺乏必要知识的情况下可能会犯许多错误。 在本文中,我们将研究如何构建初级自动化,其中包括创建一个触发器来激活盈亏平衡和尾随停止价位。
preview
价格走势模型及其主要规定(第 1 部分):最简单的模型版本及其应用

价格走势模型及其主要规定(第 1 部分):最简单的模型版本及其应用

本文提供了数学上严格的价格运动和市场功能理论的基础。 到目前为止,我们还没有任何经过严格数学论证的价格走势理论。 取而代之的是,我们不得不基于经验假设进行处理,即价格在某种形态之后以某种方式移动。 当然,这些假设既没有得到统计数据的支持,也没有得到理论的支持。
MetaTrader 5 中的交易信号:PAMM 帐户的更佳选择!
MetaTrader 5 中的交易信号:PAMM 帐户的更佳选择!

MetaTrader 5 中的交易信号:PAMM 帐户的更佳选择!

我们很高兴地宣布,MetaTrader 5 现在有了交易信号,从而为投资人员和管理人员带来一款强大的工具。当您追踪成功交易人员的交易时,终端将自动在您的帐户中复制交易!
轻松快捷开发 MetaTrader 程序的函数库(第 二十五部分):处理交易服务器返回的错误
轻松快捷开发 MetaTrader 程序的函数库(第 二十五部分):处理交易服务器返回的错误

轻松快捷开发 MetaTrader 程序的函数库(第 二十五部分):处理交易服务器返回的错误

交易订单发送到服务器之后,我们需要检查错误代码,或未出现错误。 在本文中,我们将研究处理交易服务器返回的错误,并着手创建延后交易请求。
MQL5 Cookbook: 使用不同的打印模式
MQL5 Cookbook: 使用不同的打印模式

MQL5 Cookbook: 使用不同的打印模式

这是 MQL5 Cookbook 系列的第一篇文章,我将会从简单的实例开始,让那些刚刚开始编程的人逐渐熟悉这门新语言。我还记得我开始设计和编写交易系统时的尝试,可以说是非常困难,事实上那是我所学的第一门编程语言,然而,后来还是比我想象的简单一些,我只用了几个月的时间就能够开发相对复杂的程序了。
MetaTrader 4 和 MetaTrader 5 交易平台的群组交易
MetaTrader 4 和 MetaTrader 5 交易平台的群组交易

MetaTrader 4 和 MetaTrader 5 交易平台的群组交易

什么是群组交易?这是一种交易者与投资者互惠互利的合作,成功的交易者凭此实现对于交易的监控,而潜在投资者亦借此机会,监控其表现并复制那些看起来较具前景的交易。