MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
神经网络变得轻松(第十部分):多目击者关注

神经网络变得轻松(第十部分):多目击者关注

我们以前曾研究过神经网络中的自关注机制。 在实践中,现代神经网络体系结构会采用多个并行的自关注线程来查找序列元素之间的各种依存关系。 我们来研究这种方法的实现,并评估其对整体网络性能的影响。
DoEasy 函数库中的时间序列(第四十六部分):多周期、多品种指标缓冲区
DoEasy 函数库中的时间序列(第四十六部分):多周期、多品种指标缓冲区

DoEasy 函数库中的时间序列(第四十六部分):多周期、多品种指标缓冲区

在本文中,我将继续改进指标缓冲区对象类,从而可在多品种模式下操作。 这为自定义程序中创建多品种、多周期指标提供了途径。 我会在计算缓冲区对象里添加缺失的功能,从而令我们可创建多品种、多周期的标准指标。
preview
神经网络变得轻松(第十三部分):批次常规化

神经网络变得轻松(第十三部分):批次常规化

在上一篇文章中,我们开始研究旨在提高神经网络训练品质的方法。 在本文中,我们将继续这个主题,并会研讨另一种方法 — 批次数据常规化。
在 MQL5.com 上的自由职业者工作 - 开发者喜爱的位置
在 MQL5.com 上的自由职业者工作 - 开发者喜爱的位置

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

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

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

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

DIY 技术指标

在本文中,我将研究允许您创建自己的技术指标的算法。 您将学到如何通过非常简单的初始假设,来获得非常复杂和有趣的结果。
DoEasy 函数库中的图形(第八十七部分):图形对象集合 - 在所有打开的图表上管理对象属性修改
DoEasy 函数库中的图形(第八十七部分):图形对象集合 - 在所有打开的图表上管理对象属性修改

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

在本文中,我将继续跟踪标准图形对象事件,并创建允许用户控制在终端中打开的任何图表上放置的图形对象属性更改的功能。
MQL5.community 最活跃成员获颁 iPhones 大奖!
MQL5.community 最活跃成员获颁 iPhones 大奖!

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

继我们决定奖励最为出色的 MQL5.com 参与者后,我们已经选出了确定每一位参与者对本社区发展所做贡献的关键准则。结果我们选出了下述优胜者,他们在网站上发布的文章数量最多 - investeo (11 篇)和 victorg (10 篇);以及将其代码提交到代码库的 – GODZILLA (340 个程序)、Integer (61 个程序)和 abolk (21 个程序)。
preview
从头开始开发智能交易系统(第 9 部分):概念上的飞跃  (II)

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

在本文中,我们将把 Chart Trade 这个应用程序放置在浮动窗口当中。 在前一篇中,我们创建了一个基本系统,该系统支持在浮动窗口中使用模板。
DoEasy 函数库中的图形(第八十八部分):图形对象集合 — 存储对象动态变化属性的二维动态数组
DoEasy 函数库中的图形(第八十八部分):图形对象集合 — 存储对象动态变化属性的二维动态数组

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

在本文中,我将创建一个动态多维数组类,该类能够改变任意维度中的数据量。 基于所创建的类,我还将创建一个二维动态数组来存储一些会动态变动的图形对象属性。
preview
连续前行优化 (第五部分): 自动优化器项目概述和 GUI 的创建

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

本文深入讲述在 MetaTrader 5 终端里的前向优化。 在先前的文章中,我们研究了生成和过滤优化报告的方法,并开始分析负责优化过程的应用程序的内部结构。 自动优化器是作为 C# 应用程序实现的,并且拥有自己的图形界面。 第五篇文章专门论述了此图形界面的创建。
测试可视化:交易记录
测试可视化:交易记录

测试可视化:交易记录

本文描述了在可视化测试时便捷查看交易记录的可能性。
考虑 T. Demark 方法的趋势线指标
考虑 T. Demark 方法的趋势线指标

考虑 T. Demark 方法的趋势线指标

指标反映了显示市场近期事件的趋势线。该指标的开发考虑了 Thomas Demark 有关技术分析的建议和方法。指标显示了趋势的最后方向和趋势的倒数第二个相反方向。
源代码的跟踪、调试和结构分析
源代码的跟踪、调试和结构分析

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

可以在没有很大困难的情况下解决创建执行代码的结构以及对其进行跟踪的整个复杂问题。由于 MQL5 语言的新功能 - 自动创建复杂类型的数据变量(结构和类)以及在超出局部范围时自动消失,这种可能性已经出现在 MetaTrader 5 中。本文提供对方法和现成工具的描述。
DoEasy 函数库中的时间序列(第三十九部分):基于函数库的指标 - 准备数据和时间序列事件
DoEasy 函数库中的时间序列(第三十九部分):基于函数库的指标 - 准备数据和时间序列事件

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

本文讨论如何应用 DoEasy 库来创建多品种、多周期指标。 我们准备在指标中操控函数库类,并创建时间序列作为指标的数据源进行测试。 我们还将实现时间序列事件的创建和发送。
处理 MQL5“EA 交易”的 GSM 调制解调器
处理 MQL5“EA 交易”的 GSM 调制解调器

处理 MQL5“EA 交易”的 GSM 调制解调器

当前,有相当数量的方式可以对交易账户进行轻松的远程监视:移动终端、推送通知、ICQ 。但都需要互联网连接。本文描述了“EA 交易”的创建程序,即使在移动互联网不可用的情况下,其也允许您通过电话或短信与交易终端保持联系。
preview
自适应指标

自适应指标

在本文中,我将研究创建自适应指标的若干种可能方式。 自适应指标的区别在于输入值和输出信号之间存在反馈。 这种反馈令指标能够独自调整到处理金融时序数据的最优状态。
基于大众交易系统和交易机器人优化点金术的 Expert Advisor(续)
基于大众交易系统和交易机器人优化点金术的 Expert Advisor(续)

基于大众交易系统和交易机器人优化点金术的 Expert Advisor(续)

在本文中,作者继续分析最简单的交易系统的实现算法,并介绍使用优化结果的一些相关细节。本文对于交易新手和 EA 编写新手很有帮助。</div>
中测试移动平均线计算的性能
中测试移动平均线计算的性能

中测试移动平均线计算的性能

在创建第一个移动平均线指标之后,已经出现了若干指标。其中很多指标使用类似的平滑方法,但是还没有研究不同的移动平均线算法的性能。在本文中,我们将考虑在 MQL5 中使用移动平均线的若干可能方式并比较它们的性能。
preview
一张图表上多个指标(第 04 部分):晋升为一款智能交易系统

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

在我之前的文章里,我已经解释了如何创建拥有多个子窗口的指标,在使用自定义指标时如此这般会变得很有趣。 这次,我们将看到如何为智能交易系统添加多个窗口。
在视图内/外绘制通道
在视图内/外绘制通道

在视图内/外绘制通道

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

MQL5 Cookbook: 处理 BookEvent

本文研究 BookEvent - 一个市场深度事件,以及它的处理原理。一个处理市场深度状态的 MQL 程序,作为例程。它采用面向对象方法编写。处理结果作为面板显示在屏幕上,还有市场深度级别。
preview
MQL5 酷宝书 – 财经日历

MQL5 酷宝书 – 财经日历

本文着重于财经日历的编程特性,并研究创建一个类来简化访问日历属性和接收事件值。 运用 CFTC(商品期货交易委员会)的非商业净持仓规则来开发指标作为一个实际例子。
MetaTrader 4 和 MetaTrader 5 交易平台的群组交易
MetaTrader 4 和 MetaTrader 5 交易平台的群组交易

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

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

Layman 的笔记:锯齿形调整浪...

当然,每位交易新手在首次看到“神秘的”多段线后,无疑都渴望在接近极值点交易。真的如此简单。这是最大值。那是最小值。非常漂亮的历史图形。实践中如何呢?画了一条射线。它应该是——最高点!是卖出的时候了。现在价格下跌了。可恶!不!价格竟然开始上涨。哎!这只是没用的玩意,不是指标。于是将其扔掉!
宏观经济数据对货币价格波动影响的还原分析
宏观经济数据对货币价格波动影响的还原分析

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

本文研究宏观经济统计数据的多元还原分析应用程序。同时也以 EURUSD 货币对为例,洞察统计数据的评估,对于汇率波动的影响。这种评估可以自动分析基本面,使得交易新手也可运用。
面向订单的 Expert Advisor。交易者手册
面向订单的 Expert Advisor。交易者手册

面向订单的 Expert Advisor。交易者手册

并非所有交易者都是程序员。同时并非所有程序员都是优秀的程序员。那么,如果你需要自动执行系统而又没有时间也不想研究 MQL4,应该怎么办?
preview
从头开始开发智能交易系统(第 22 部分):新订单系统 (V)

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

今天,我们将继续开发新订单系统。 实现一个新系统并非那么容易,因为我们经常会遇到各种问题令过程复杂化。 当这些问题出现时,我们必须停下来重新分析我们前进的方向。
preview
从头开始开发智能交易系统(第 31 部分):面向未来((IV)

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

我们继续从 EA 中删除单独的部件。 这是本系列中的最后一篇文章。 并且最后要移除的是声音系统。 如果您之前没有关注过这些文章系列,可能会有点困惑。
DoEasy 函数库中的时间序列(第四十部分):基于函数库的指标 - 实时刷新数据
DoEasy 函数库中的时间序列(第四十部分):基于函数库的指标 - 实时刷新数据

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

本文研究开发基于 DoEasy 库的简单多周期指标。 我们来改进时间序列类,从而能接收来自任何时间帧的数据,并在当前图表周期内显示。
preview
学习如何基于 Ichimoku 设计交易系统

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

这是我们系列中有关如何基于最热门指标设计交易系统的一篇新文章,这回我们将详细讨论 Ichimoku 指标,以及如何依据该指标设计交易系统。
利用 EX5 库来推动您的项目开发
利用 EX5 库来推动您的项目开发

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

隐藏 .ex5 文件中类/函数的实施细节,会让您能够同其他开发人员共享自己的专有算法,设立共同项目并在网络中宣传它们。而且,在 MetaQuotes 团队不遗余力地引入直接继承 ex5 库类可能性的同时,我们现在就要付诸实施了。
再谈等量图
再谈等量图

再谈等量图

本文阐述了构建图表的方法,其中每个柱都包含等量的价格变动。
视频:简单自动交易 — 如何利用 MQL5 创建简单的智能交易系统
视频:简单自动交易 — 如何利用 MQL5 创建简单的智能交易系统

视频:简单自动交易 — 如何利用 MQL5 创建简单的智能交易系统

在我的课程中,大多数学生认为 MQL5 真的很难理解。 除此之外,他们还在寻找一种直接的方法来把一些过程自动化。 那么阅读本文中归纳的信息,就能立刻发现如何利用 MQL5 开始运作。 即使您以前从未接触过任何形式的编程。 即使您无法领会之前您所观察到的插图的情况下。
构建新兴的社交技术, 第二部分: 编制 MQL5 的 REST 客户端
构建新兴的社交技术, 第二部分: 编制 MQL5 的 REST 客户端

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

让我们现在来塑造本文第一部分介绍过的,基于 PHP 的 Twitter (推特)。我们正在组装 SDSS 的不同部分。有关客户端的系统体系结构, 我们借助 MQL5 新提供的 WebRequest() 函数, 通过 HTTP 发送交易信号。
更好的程序员(第 04 部分):如何成为更迅捷的开发人员
更好的程序员(第 04 部分):如何成为更迅捷的开发人员

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

每位开发人员都希望能够更快地编写代码,且能够更快、更有效地编写代码并非只是少数人与生俱来的特殊能力。 无论有多少年的敲键盘经验,这项技能每位编码员都可以学习。
DoEasy 函数库中的图形(第九十一部分):标准图形对象事件。 对象名称更改历史记录
DoEasy 函数库中的图形(第九十一部分):标准图形对象事件。 对象名称更改历史记录

DoEasy 函数库中的图形(第九十一部分):标准图形对象事件。 对象名称更改历史记录

在本文中,我将改进基本功能,从而能够基于函数库程序来控制图形对象事件。 我一开始将以“对象名称”属性为例,实现存储图形对象更改历史的功能。
针对交易的组合数学和概率论(第四部分):伯努利(Bernoulli)逻辑
针对交易的组合数学和概率论(第四部分):伯努利(Bernoulli)逻辑

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

在本文中,我决定重点阐述著名的伯努利(Bernoulli)规划案,并展示如何用它来描述与交易相关的数据数组。 所有这些将被用来创建一个自适应的交易系统。 我们还将寻找一个更通用的算法,一个特例是伯努利公式,并查找能够运用它的应用。
轻松快捷开发 MetaTrader 程序的函数库(第 二十五部分):处理交易服务器返回的错误
轻松快捷开发 MetaTrader 程序的函数库(第 二十五部分):处理交易服务器返回的错误

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

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

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

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