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

icon

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

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

添加一个新的文章
最近 | 最佳
preview
从头开始开发智能交易系统(第 21 部分):新订单系统 (IV)

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

最后,视觉系统将开始工作,尽管它尚未完工。 在此,我们将完成主要更改。 这只是它们当中很少一部份,但都是必要的。 嗯,整个工作将非常有趣。
preview
神经网络变得轻松(第十八部分):关联规则

神经网络变得轻松(第十八部分):关联规则

作为本系列文章的延续,我们来研究无监督学习方法中的另一类问题:挖掘关联规则。 这种问题类型首先用于零售业,即超市等,来分析市场篮子。 在本文中,我们将讨论这些算法在交易中的适用性。
preview
从头开始开发智能交易系统(第 20 部分):新订单系统 (III)

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

我们继续实现新的订单系统。 创建这样的一个系统需要熟练地掌握 MQL5,以及了解 MetaTrader 5 平台的实际工作方式,及其提供的资源。
preview
从头开始开发智能交易系统(第 19 部分):新订单系统 (II)

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

在本文中,我们将开发一个“看看发生了什么”类型的图形订单系统。 请注意,我们这次不是从头开始,只不过我们将修改现有系统,在我们交易的资产图表上添加更多对象和事件。
preview
在莫斯科交易所(MOEX)里使用限价订单进行自动网格交易

在莫斯科交易所(MOEX)里使用限价订单进行自动网格交易

本文研究针对 MetaTrader 5 平台开发 MQL5 智能交易系统(EA),旨在能在 MOEX 上操作。 该 EA 采用网格策略,面向 MetaTrader 5 终端,并在 MOEX 上进行交易。 EA 包括了依据止损和止盈平仓,以及在某些市场条件下取消挂单。
preview
神经网络变得轻松(第十七部分):降低维度

神经网络变得轻松(第十七部分):降低维度

在本部分中,我们将继续讨论人工智能模型。 即,我们研究无监督学习算法。 我们已经讨论了众多聚类算法之一。 在本文中,我将分享一种解决与降维相关问题的方法。
preview
从头开始开发智能交易系统(第 18 部分):新订单系统 (I)

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

这是新订单系统的第一部分。 自从我们在文章中开始打造这个 EA 以来,它已经历了各种变化和改进,同时保持了相同的图表订单系统模型。
preview
神经网络变得轻松(第十六部分):聚类运用实践

神经网络变得轻松(第十六部分):聚类运用实践

在上一篇文章中,我们为数据聚类创建了一个类。 在本文中,我想分享在解决实际交易任务时应用所获结果会遇到的可能变体。
preview
神经网络变得轻松(第十五部分):利用 MQL5 进行数据聚类

神经网络变得轻松(第十五部分):利用 MQL5 进行数据聚类

我们继续研究聚类方法。 在本文中,我们将创建一个新的 CKmeans 类来实现最常见的聚类方法之一:k-均值。 在测试期间,该模型成功地识别了大约 500 种形态。
preview
神经网络变得轻松(第十四部分):数据聚类

神经网络变得轻松(第十四部分):数据聚类

我的上一篇文章已经发表一年多了。 这令我有了大量时间考虑修改思路和发展新方法。 在这篇新文章中,我想转移一下以前使用的监督学习方法。 这次我们将深入研究无监督学习算法。 特别是,我们将考虑一种聚类算法 — k-均值。
preview
从头开始开发智能交易系统(第 13 部分):时序与交易(II)

从头开始开发智能交易系统(第 13 部分):时序与交易(II)

今天,我们将针对市场分析构建《时序与交易》系统的第二部分。 在前一篇文章《时序与交易(I)》当中,我们讨论了一种替代的图表组织系统,该系统能够针对市场上执行的成交进行最快速的解释。
preview
从头开始开发智能交易系统(第 12 部分):时序与交易(I)

从头开始开发智能交易系统(第 12 部分):时序与交易(I)

今天,我们将创建时序与交易,从而快速解读订单流程。 这是我们构建系统的第一部分。 在下一篇文章中,我们将补全该系统缺失的信息。 为了实现这一新功能,我们需要在智能交易系统代码中添加一些新的内容。
preview
从头开始开发智能交易系统(第 11 部分):交叉订单系统

从头开始开发智能交易系统(第 11 部分):交叉订单系统

在本文中,我们将创建一个交叉订单系统。 有一种类型的资产让交易员的生涯变得非常困难 — 那就是期货合约。 但为什么令他们的职业生涯变得如此困难?
preview
从头开始开发智能交易系统(第 9 部分):概念上的飞跃  (II)

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

在本文中,我们将把 Chart Trade 这个应用程序放置在浮动窗口当中。 在前一篇中,我们创建了一个基本系统,该系统支持在浮动窗口中使用模板。
preview
从头开始开发智能交易系统(第 8 部分):概念上的飞跃

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

实现新功能的最简单途径是什么? 在本文中,我们将后撤一步,然后再前进两步。
preview
从头开始开发智能交易系统(第 7 部分):添加价格成交量(Volume)指标(I)

从头开始开发智能交易系统(第 7 部分):添加价格成交量(Volume)指标(I)

这是目前最强力的指标之一。 任何满怀信心尝试交易的人都必须在他们的图表上拥有这个指标。 最常用的指标都是那些喜欢在交易时“读磁带”的人所采用。 此外,而该指标则是那些交易时仅依据价格动作的人会采用。
preview
一张图表上的多个指标(第 06 部分):将 MetaTrader 5 转变为 RAD 系统(II)

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

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

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

有很多人不知道如何编程,但他们很有创造力,亦有杰出的想法。 然而,由于缺乏编程知识,他们无法实现这些想法。 我们一起看看如何利用 MetaTrader 5 平台本身创建图表交易,就如同它是一个 IDE。
preview
让图表更有趣:添加背景

让图表更有趣:添加背景

许多工作站包含一些代表性的图片用以显示用户的一些信息。 这些图片令工作环境更加优美和令人兴奋。 我们来看看如何通过添加背景令图表更有趣。
preview
MetaTrader 5 的 WebSocket — 使用 Windows API

MetaTrader 5 的 WebSocket — 使用 Windows API

在本文中,我们将使用 WinHttp.dll 针对 MetaTrader 5 平台创建 WebSocket 客户端程序。 客户端最终将作为一个类实现,并借助 Binary.com 的 WebSocket API 进行测试。
preview
学习为什么、以及如何设计算法交易系统

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

本文在介绍了 MQL5 的一些基础知识之后,通过设计一个简单的算法交易系统,向初学者展示了如何运用 MQL 的基础知识设计他们的算法交易系统(智能交易系统)
preview
从市场里选择智能交易系统的正确途径

从市场里选择智能交易系统的正确途径

在本文中,我们将研究购买智能交易系统时应该注意的一些要点。 我们还将寻求提升盈利的方法,从而明智地花钱,并从付出中获取盈利。 此外,读完本文之后,您会发现,即便使用简单免费的产品也有可能赚到钱。
preview
MQL5 中的矩阵和向量

MQL5 中的矩阵和向量

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

在 MQL5 中使用 AutoIt

简述。 在本文中,我们将探索采用 MetraTrader 5 终端里以集成的 MQL5 编写 AutoIt 脚本。 在其中,我们将覆盖如何操纵终端的用户界面来自动完成各种任务,并介绍一个采用 AutoItX 库的类。
preview
固化价格动作止损或固化 RSI(智能止损)

固化价格动作止损或固化 RSI(智能止损)

在交易中,止损是资金管理采用的主要工具。 有效利用止损、获利回吐和成交量可以使交易者在交易中更加一致,总体上更加有利可图。 尽管止损是一个极好的工具,但在运用中也会遇到一些挑战。 最主要的是止损猎杀(stop-loss hunt)。 本文展望如何降低交易中的猎杀,并与经典的止损用例进行比较,从而判定其盈利能力。
preview
开发 EA 构造函数的一次尝试

开发 EA 构造函数的一次尝试

在本文中,我把自己的一套交易函数以成品 EA 的形式提供给大家。 这种方法能够通过简单地添加指标和改变输入来获得多种交易策略。
来自专业程序员的提示(第二部分):在智能交易系统、脚本和外部程序之间存储和交换参数
来自专业程序员的提示(第二部分):在智能交易系统、脚本和外部程序之间存储和交换参数

来自专业程序员的提示(第二部分):在智能交易系统、脚本和外部程序之间存储和交换参数

这些来自专业程序员关于方法、技术和辅助工具的一些提示,可令编程变得更轻松。 我们将讨论终端重启(关闭)后如何恢复参数。 所有示例都是来自我的 Cayman 项目的真实工作代码片段。
DoEasy 函数库中的其他类(第七十一部分):图表对象集合事件
DoEasy 函数库中的其他类(第七十一部分):图表对象集合事件

DoEasy 函数库中的其他类(第七十一部分):图表对象集合事件

在本文中,我将创建一些跟踪图表对象事件的功能 — 添加/删除品种图表和图表子窗口,以及添加/删除/更改图表窗口中的指标。
DoEasy 库中的其他类(第六十八部分):图表窗口对象类和图表窗口中的指标对象类
DoEasy 库中的其他类(第六十八部分):图表窗口对象类和图表窗口中的指标对象类

DoEasy 库中的其他类(第六十八部分):图表窗口对象类和图表窗口中的指标对象类

在本文中,我将继续开发图表对象类。 我将添加含有可用指标列表的图表窗口对象列表。
DoEasy 库中的其他类(第六十七部分):图表对象类
DoEasy 库中的其他类(第六十七部分):图表对象类

DoEasy 库中的其他类(第六十七部分):图表对象类

在本文中,我将创建图表对象类(单个交易金融产品图表),并改进 MQL5 信号对象的集合类,以便在更新列表时也能为存储在集合中的每个信号对象更新其所有参数。
preview
神经网络变得轻松(第十三部分):批次常规化

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

在上一篇文章中,我们开始研究旨在提高神经网络训练品质的方法。 在本文中,我们将继续这个主题,并会研讨另一种方法 — 批次数据常规化。
preview
实用且奇特的自动交易技术

实用且奇特的自动交易技术

在本文中,我将演示一些非常有趣且实用的自动交易技术。 其中一些可能您很熟悉。 我将尝试覆盖最有趣的方法,并解释为什么它们值得使用。 此外,我将展示这些技术在实战中的适用性。 我们将创建智能交易系统,并依据历史报价来测试全部所述技术。
preview
神经网络变得轻松(第十二部分):舍弃

神经网络变得轻松(第十二部分):舍弃

作为研究神经网络的下一步,我建议研究在神经网络训练过程中提高收敛性的方法。 有若干种这样的方法。 在本文中,我们将研究其中之一,名为“舍弃”。
preview
神经网络变得轻松(第十一部分):自 GPT 获取

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

也许,GPT-3 是目前已有语言类神经网络中最先进的模型之一,它的最大变体可包含 1750 亿个参数。 当然,我们不打算在家用 PC 上创建如此庞然之物。 然而,我们可以看看在我们的操作中能够采用哪种体系解决方案,以及如何从中受益。
DoEasy 函数库中的价格(第六十三部分):市场深度及其抽象请求类
DoEasy 函数库中的价格(第六十三部分):市场深度及其抽象请求类

DoEasy 函数库中的价格(第六十三部分):市场深度及其抽象请求类

在本文中,我将着手开发操控市场深度的功能。 我还将创建市场深度抽象订单对象,及其衍生类。
DoEasy 函数库中的时间序列(第六十一部分):品种即时报价序列集合
DoEasy 函数库中的时间序列(第六十一部分):品种即时报价序列集合

DoEasy 函数库中的时间序列(第六十一部分):品种即时报价序列集合

鉴于程序在其运行时可能会用到不同的品种,因此应为每个品种创建一个单独的列表。 在本文中,我将把这些列表合并到一个即时报价数据集合。 实际上,这将是一个常规列表,基于指向标准库 CObject 类及其衍生类实例指针的动态数组。
DoEasy 函数库中的时间序列(第六十部分):品种即时报价数据的序列列表
DoEasy 函数库中的时间序列(第六十部分):品种即时报价数据的序列列表

DoEasy 函数库中的时间序列(第六十部分):品种即时报价数据的序列列表

在本文中,我将创建存储单一品种即时报价数据的列表,并在 EA 中检查其创建状态,以及检索所需数据。 每个所用品种各自的即时报价数据列表将来会构成即时报价数据集合。
preview
神经网络变得轻松(第八部分):关注机制

神经网络变得轻松(第八部分):关注机制

在之前的文章中,我们已经测试了组织规划神经网络的各种选项。 我们还研究了自图像处理算法中借鉴而来的卷积网络。 在本文中,我建议研究关注机制,它的出现为开发语言模型提供了动力。
preview
MetaTrader 5 中的 WebSockets

MetaTrader 5 中的 WebSockets

在引入随 MQL5 API 更新而提供的网络功能之前,MetaTrader 程序与基于 WebSocket 的服务连接和接口的能力受到许多限制。当然,这一切都改变了,在本文中,我们将探讨纯 MQL5 中 WebSocket 库的实现。WebSocket 协议的简要描述将与如何使用生成的库的逐步指南一起给出。
preview
DoEasy 函数库中的时间序列(第五十七部分):指标缓冲区数据对象

DoEasy 函数库中的时间序列(第五十七部分):指标缓冲区数据对象

在本文中,开发一个对象,其中包含一个指标的一个缓冲区的所有数据。 这些对象对于存储指标缓冲区的数据序列将是必需的。 在其的辅助下,才有可能对任何指标的缓冲区数据,以及其他类似数据进行排序和比较。