MQL5 开发的自动交易示例的文章

icon

EA 是编程的 '巅峰',并且是每一个自动交易开发者的渴望目标。请阅读本部分中的文章,创建您自己的交易机器人。通过下面介绍的步骤,您将了解到如何创建,调试和测试自动交易系统。

这些文章不仅教导 MQL5 编程,而且也演示了如何实现交易思想和技巧。您将了解如何编写跟踪止损,如何运用资金管理,如何获取指标值,等等。

添加一个新的文章
最近 | 最佳
图形界面 X: 渲染表格的新功能 (集成编译 9)
图形界面 X: 渲染表格的新功能 (集成编译 9)

图形界面 X: 渲染表格的新功能 (集成编译 9)

时至今日, CTable 是函数库中所含的最先进类型表格。表格由 OBJ_EDIT 类型的编辑框汇集而成, 但其进一步开发成为问题。因此, 在最大性能方面, 即使是在函数库的当前开发阶段, 也最好开发 CCanvasTable 类型的渲染表格。它的当前版本毫无生气, 但从本文开始, 我们将尝试解决这个问题。
preview
神经网络变得轻松(第十一部分):自 GPT 获取

神经网络变得轻松(第十一部分):自 GPT 获取

也许,GPT-3 是目前已有语言类神经网络中最先进的模型之一,它的最大变体可包含 1750 亿个参数。 当然,我们不打算在家用 PC 上创建如此庞然之物。 然而,我们可以看看在我们的操作中能够采用哪种体系解决方案,以及如何从中受益。
开发和分析交易系统的最佳方法
开发和分析交易系统的最佳方法

开发和分析交易系统的最佳方法

在这篇文章中,我将展示在选择一个系统或信号来投资你的资金时所使用的标准,以及描述开发交易系统的最佳方法,并强调这个问题在外汇交易中的重要性。
MQL5 向导:如何创建未平仓位的追踪模块
MQL5 向导:如何创建未平仓位的追踪模块

MQL5 向导:如何创建未平仓位的追踪模块

MQL5 向导的交易策略生成器极大简化了交易理念的检验过程。本文介绍了如何编写自己的未平仓位管理类,以及如何将其连接至 MQL5 向导的交易策略生成器;当价格呈持仓方向移动时,该类可将止损水平移入无损区域,从而在交易过程中保护您的利益并减少亏损。本文还介绍了为 MQL5 向导创建的类的说明的结构和格式。
如何快速创建一个"2010 年自动交易锦标赛"专用"EA 交易"
如何快速创建一个"2010 年自动交易锦标赛"专用"EA 交易"

如何快速创建一个"2010 年自动交易锦标赛"专用"EA 交易"

为了开发出一种参与“2010 年自动交易锦标赛”的“EA 交易”,我们使用一个即用的“EA 交易”模板。 即便是 MQL5 程序员初哥也能胜任此任务,因为您策略的基类、函数和模板都已经开发完毕。 编写少量的代码来实现您的交易理念就足够了。
可视化使用选定标准优化的结果
可视化使用选定标准优化的结果

可视化使用选定标准优化的结果

在这篇文章中,我们继续开发用于操作优化结果的 MQL 应用程序,这一次,我们将会展示如何在通过图形界面指定了其它标准、在优化参数之后生成最佳结果的表格。
用于交易事件和信号的语音通知系统
用于交易事件和信号的语音通知系统

用于交易事件和信号的语音通知系统

现如今,语音助手在人类生活中起着举足轻重的作用,因为我们会经常使用导航、语音搜索和翻译。 在本文中,我将尝试为各种交易事件、市场状态、或由交易信号生成的信号开发一个简单,且用户友好的语音通知系统。
preview
构建自动运行的 EA(第 05 部分):手工触发器(II)

构建自动运行的 EA(第 05 部分):手工触发器(II)

今天,我们将看到如何创建一个在自动模式下简单安全地工作的智能系统。 在上一篇文章的末尾,我建议允许手工操作 EA 是合适的,至少在一段时间内。
图形界面 XI: 表格单元中的文本编辑框和组合框 (统合构建15)
图形界面 XI: 表格单元中的文本编辑框和组合框 (统合构建15)

图形界面 XI: 表格单元中的文本编辑框和组合框 (统合构建15)

在更新的函数库中, 表格控件 (CTable 类) 将补充新的选项。表格单元中的控件阵容得到扩展, 此次添加了文本编辑框和组合框。此外, 此次更新还引入了在运行时调整 MQL 应用程序窗口大小的功能。
MQL5 Cookbook: 怎样在设置/修改交易参数时避免错误
MQL5 Cookbook: 怎样在设置/修改交易参数时避免错误

MQL5 Cookbook: 怎样在设置/修改交易参数时避免错误

作为我们在系列前一篇文章,"MQL Cookbook: 在MetaTrader 5策略测试器中分析仓位属性"中EA交易工作的继续,我们将使用很多有用的函数,以及提高和优化已有的函数来增强它。这一次EA交易有可以在MetaTrader 5策略测试器中优化的外部参数,并且在某些方面组成了一个简单的交易系统。
创建一个在若干工具上交易的 EA 交易程序
创建一个在若干工具上交易的 EA 交易程序

创建一个在若干工具上交易的 EA 交易程序

金融市场中资产的多样化是一个非常旧的概念,并且始终吸引着新入门的交易者。在本文中,作者提出了一个最简单的方法用以构建一个多货币 EA 交易程序,以便对这种方向的交易策略提供一个初步介绍。
另一个 MQL5 OOP 类
另一个 MQL5 OOP 类

另一个 MQL5 OOP 类

本文会从一种理论性交易概念的构想,到编制一个在经验世界中实现这一概念的 MQL5 EA 交易,为您讲解如何从头建立一个面向对象的 EA 交易。依本人看,边做边学是取得成功的一种可靠方法。所以,我会拿出一个实用的例子,让您明白如何才能整理自己的想法,并最终完成外汇自动交易代码。和您一起遵守“面向对象”原则,也是我的目标之一。
在 GUI 控件中使用布局和容器: CBox 类
在 GUI 控件中使用布局和容器: CBox 类

在 GUI 控件中使用布局和容器: CBox 类

本文介绍一种基于布局和容器来创建 GUI (图形用户界面) 的替代方法, 使用一个布局管理器 — CBox 类。类 CBox class 是一个辅助控件, 在 GUI 面板里充当一个基本控件的容器。它可令图形面板设计更加简便, 并且在某些场合, 减少编写代码时间。
MetaTrader 5 中的并行计算
MetaTrader 5 中的并行计算

MetaTrader 5 中的并行计算

在人类的整个历史长河中,时间都是极其宝贵的,因此我们努力避免不必要的时间浪费。如果您的电脑配备了多核处理器,本文将告诉您如何为“EA 交易”的工作提速。此外,实施建议的方法不要求您掌握 MQL5 以外的其他语言的知识。
preview
CCI 指标。 升级和新特征

CCI 指标。 升级和新特征

在本文中,我将研究升级 CCI 指标的可能性。 此外,我将对指标进行修改。
自组织特征映射 (Kohonen 映射) - 再访主题
自组织特征映射 (Kohonen 映射) - 再访主题

自组织特征映射 (Kohonen 映射) - 再访主题

本文描述利用 Kohonen 映射进行操作的技术。本主题对那些在他们的项目中运用 Kohonen 映射进行市场研究时遇到困难的 MQL4/MQL5 初级程序员和经验丰富的程序员都有益处。
preview
手工图表和交易工具包(第二部分)。 图表图形绘图工具

手工图表和交易工具包(第二部分)。 图表图形绘图工具

这是该系列的下一篇文章,在其中我展示了如何创建一个函数库来,从而看便利地用键盘快捷键手动绘制图表图形。 所用工具包括直线及其组合。 在这一部分中,我们将查看如何在绘图工具里应用第一部分中讲述的函数。 该函数库可连接到任何 EA 或指标,这将大大简化绘图任务。 此方案未使用外部 dll,而所有命令都是由内置 MQL 工具实现的。
preview
无需 Python 或 R 语言知识的 Yandex CatBoost 机器学习算法

无需 Python 或 R 语言知识的 Yandex CatBoost 机器学习算法

本文通过一个具体的例子提供了机器学习过程的主要阶段的代码和描述。您不需要 Python 或 R 语言知识就能够获得模型。此外,基本的MQL5知识已经足够了- 这正是我的水平。因此,我希望这篇文章能为广大读者提供一个很好的指导,帮助那些对评估机器学习能力感兴趣的人,并在他们的课程中实现这些能力。
preview
学习为什么、以及如何设计算法交易系统

学习为什么、以及如何设计算法交易系统

本文在介绍了 MQL5 的一些基础知识之后,通过设计一个简单的算法交易系统,向初学者展示了如何运用 MQL 的基础知识设计他们的算法交易系统(智能交易系统)
MQL5 Cookbook: 使用不限数量的参数开发多币种EA交易
MQL5 Cookbook: 使用不限数量的参数开发多币种EA交易

MQL5 Cookbook: 使用不限数量的参数开发多币种EA交易

在本文中,我们将创建一种模式,它会使用一系列参数为交易系统作优化,而且允许不加数量限制的参数。交易品种的列表将在标准文本文件(*.txt)中创建,每个交易品种的输入参数也将存储于文件中。使用这种方法,我们将能够免除终端中对EA输入参数个数的限制。
MQL5 细则手册:MetaTrader 5 交易事件的声音通知
MQL5 细则手册:MetaTrader 5 交易事件的声音通知

MQL5 细则手册:MetaTrader 5 交易事件的声音通知

在本文中,我们将考虑在“EA 交易”的文件中包含声音文件、从而为交易事件添加声音通知的事宜。将包含文件的事实意味着声音文件将位于“EA 交易”的内部。因此,在向其他用户提供编译后的“EA 交易”版本 (*.ex5) 时,您无需再提供声音文件并说明它们应予以保存的位置。
图形界面 XI: 重构函数库代码 (集成编译 14.1)
图形界面 XI: 重构函数库代码 (集成编译 14.1)

图形界面 XI: 重构函数库代码 (集成编译 14.1)

随着函数库的增长, 其代码必须重新优化以便减少其大小。本文中描述的函数库版本已变得更加面向对象。这令代码更容易学习。最新变化的详细描述将令读者能够根据自己的需求独立开发函数库。
通过有用的技术组合让您的 MQL5 客户惊叹!
通过有用的技术组合让您的 MQL5 客户惊叹!

通过有用的技术组合让您的 MQL5 客户惊叹!

得益于 MQL5 为编程人员提供的一套非常完整的函数集和面向对象 API,他们可以在 MetaTrader 环境中大展身手。然而,Web 技术如今是用途极为广泛的工具,可以在一些情形中提供帮助:当您需要完成一些非常具体的工作;希望用一些不同的东西给您的客户留下深刻印象;或仅仅是您没有足够的时间来掌握 MT5 标准库的特定部分。今天的练习引导您完成有关如何在创建令人惊叹的技术组合的同时,管理您的开发时间的实例。
preview
一张图表上的多个指标(第 06 部分):将 MetaTrader 5 转变为 RAD 系统(II)

一张图表上的多个指标(第 06 部分):将 MetaTrader 5 转变为 RAD 系统(II)

在我的前一篇文章中,我向您展示了如何利用 MetaTrader 5 对象创建图表交易,从而将平台转变为 RAD 系统。 该系统运行良好,可以肯定的是,许多读者也许已经考虑过创建一个函数库,令其能够在拟议的系统中扩展功能。 有基于此,就有可能开发一款更直观的智能交易系统,其界面更友好、更易于使用。
构建新兴的社交技术, 第一部分: 发布您的 MetaTrader 5 信号
构建新兴的社交技术, 第一部分: 发布您的 MetaTrader 5 信号

构建新兴的社交技术, 第一部分: 发布您的 MetaTrader 5 信号

今天我们将学习如何将 MetaTrader 5 终端与 Twitter(推特) 链接,以便发布您的 EA 交易信号。我们将用 PHP 开发一个基于 REST web 服务的社交决策支持系统。此想法来自于自动交易的特定概念,称为电脑辅助交易。我们希望通过人工交易者的认知能力来过滤这些交易信号,否则 EA 会自动在市场上下单。
preview
构建自动运行的 EA(第 03 部分):新函数

构建自动运行的 EA(第 03 部分):新函数

今天,我们将看到如何创建一个在自动模式下简单安全地工作的智能系统。 在上一篇文章中,我们已启动开发一个在自动化 EA 中使用的订单系统。 然而,我们只创建了一个必要的函数。
图形界面 II: 分隔线和上下文菜单元件 (第二章)
图形界面 II: 分隔线和上下文菜单元件 (第二章)

图形界面 II: 分隔线和上下文菜单元件 (第二章)

在本文中, 我们将会创建分隔线元件. 它可以用作独立的界面元件, 也可以作为许多其他元件的一部分. 之后, 我们就拥有了开发上下文菜单的全部所需, 在本文中会加以详细介绍. 另外, 我们还会对类作必要的扩充, 即用于保存应用程序中图形界面所有元件的指针库.
图形界面 VII: 页面控件 (第二章)
图形界面 VII: 页面控件 (第二章)

图形界面 VII: 页面控件 (第二章)

第七部分的第一章介绍了用于创建三种表格控件的类: 文字标签型表格(CLabelsTable), 编辑框型表格(CTable) 以及绘制型表格(CCanvasTable)。在本文中(第二章)我们将讨论页面(Tabs)控件。
非广延统计分布结构化分析的本征坐标法应用
非广延统计分布结构化分析的本征坐标法应用

非广延统计分布结构化分析的本征坐标法应用

应用统计的主要问题是接受统计假设的问题。长期以来它被视为一个无法解决的问题。随着本征坐标法的出现,这种情形出现了改变。它是对信号进行结构化研究的一款优秀且强大的工具,使用现代应用统计方法,能够精准预测可能的走势。本文着重于此方法的具体运用并以 MQL5 语言编程。它还使用 Hilhorst 和 Schehr 介绍的分布作为一个例子,处理函数识别问题。
preview
神经网络变得轻松(第六部分):神经网络学习率实验

神经网络变得轻松(第六部分):神经网络学习率实验

我们之前已研究过各种类型的神经网络及其实现。 在所有情况下,训练神经网络时都使用梯度下降法,为此我们需要选择学习率。 在本文中,我打算通过示例展示正确选择学习率的重要性,及其对神经网络训练的影响。
preview
MetaTrader 5 中的 WebSockets

MetaTrader 5 中的 WebSockets

在引入随 MQL5 API 更新而提供的网络功能之前,MetaTrader 程序与基于 WebSocket 的服务连接和接口的能力受到许多限制。当然,这一切都改变了,在本文中,我们将探讨纯 MQL5 中 WebSocket 库的实现。WebSocket 协议的简要描述将与如何使用生成的库的逐步指南一起给出。
preview
神经网络变得轻松(第四十五部分):训练状态探索技能

神经网络变得轻松(第四十五部分):训练状态探索技能

在没有明确奖励函数的情况下,实用的训练技能就是分层强化学习的主要挑战之一。 以前,我们已领略了解决此问题的两种算法。 但环境研究的完整性问题仍然悬而未决。 本文演示了一种不同的技能训练方式,其可取决于系统的当前状态直接使用。
Trademinator 3:交易机器的崛起
Trademinator 3:交易机器的崛起

Trademinator 3:交易机器的崛起

在《Dr. Tradelove...》一文中,我们创建了一个可独立优化某预先选定交易系统的 EA 交易。而且,我们还决定创建一个不仅能够优化构成 EA 的交易系统参数、而且可以在多个交易系统中选择最优的 EA 交易。我们来看看,它会带来些什么...
preview
构建自动运行的 EA(第 04 部分):手工触发器(I)

构建自动运行的 EA(第 04 部分):手工触发器(I)

今天,我们将看到如何创建一个在自动模式下简单安全地工作的智能系统。
关于策略优化的一些简单想法
关于策略优化的一些简单想法

关于策略优化的一些简单想法

即使你借助MQL5的云计算网络来进行优化工作,仍就需要消耗大量的计算机资源。本文由我对MetaTrader 5策略测试器一些简单的改进想所法组成。这些想法来自于MQL社区的相关技术文档、论坛和文章。
图形界面 VIII: 文件导航器控件 (第三章)
图形界面 VIII: 文件导航器控件 (第三章)

图形界面 VIII: 文件导航器控件 (第三章)

在系列文章第八部分前面的章节中,我们的库加入了几个类用于开发鼠标指针,日历和树形视图,本文介绍的是文件导航器控件,可以用作MQL应用程序图形界面的一部分。
MQL5 Cookbook: 在MetaTrader 5策略测试器中分析仓位属性
MQL5 Cookbook: 在MetaTrader 5策略测试器中分析仓位属性

MQL5 Cookbook: 在MetaTrader 5策略测试器中分析仓位属性

我们将会展示一个来自前一篇文章,"MQL5 Cookbook: 自定义信息面板上的仓位属性"的修改版的EA交易。我们将会解决一些问题,包括从柱中获得数据,在当前交易品种中检查新柱事件,在文件中包含标准库中的交易类,创建一个函数来搜索交易信号,还有一个执行交易操作的函数以及在OnTrade()函数中判断交易事件。
preview
连续前行优化 (第四部分): 优化管理器(自动优化器)

连续前行优化 (第四部分): 优化管理器(自动优化器)

本文主要目的在于阐述运用我们的应用程序进行操控的机制及其能力。 因此,本文可视为有关如何运用该应用程序的指南。 它涵盖了所有可能的陷阱,以及应用程序用法的细节。
MQL5 Cookbook: 自定义信息面板上的仓位属性
MQL5 Cookbook: 自定义信息面板上的仓位属性

MQL5 Cookbook: 自定义信息面板上的仓位属性

这一次我们创建一个简单的EA交易,它可以取得当前交易品种的仓位属性并且在人工交易的时候在自定义信息面板上显示它们。信息面板将使用图形对象创建,显示的信息在每当有订单时都会刷新,这将比系列文章的前一篇 - "MQL5 Cookbook: 获取仓位属性"中提到的每次必须人工运行脚本要方便得多。
preview
MQL5 中的矩阵和向量

MQL5 中的矩阵和向量

运用特殊的数据类型“矩阵”和“向量”,可以创建非常贴合数学符号本意的代码。 运用这些方法,您可以避免创建嵌套循环,或在计算中分心记忆正确的数组索引。 因此,矩阵和向量方法的运用能为开发复杂程序提高可靠性和速度。