MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
图形界面 X: 多行文本框中的字词回卷算法 (集成编译 12)
图形界面 X: 多行文本框中的字词回卷算法 (集成编译 12)

图形界面 X: 多行文本框中的字词回卷算法 (集成编译 12)

我们继续开发多行文本框控件。这次我们的任务是实现一个自动的文字回卷, 以防发生文本框宽度溢出, 或者如果出现机会, 将文本逆卷到上一行。
根据指定的分布法则为自定义品种的时间序列建模
根据指定的分布法则为自定义品种的时间序列建模

根据指定的分布法则为自定义品种的时间序列建模

本文概述终端创建和运用自定义品种的能力,提供了使用自定义品种模拟交易历史、趋势和各种图表形态的选项。
MetaTrader 5 中的并行计算
MetaTrader 5 中的并行计算

MetaTrader 5 中的并行计算

在人类的整个历史长河中,时间都是极其宝贵的,因此我们努力避免不必要的时间浪费。如果您的电脑配备了多核处理器,本文将告诉您如何为“EA 交易”的工作提速。此外,实施建议的方法不要求您掌握 MQL5 以外的其他语言的知识。
轻松快捷开发 MetaTrader 程序的函数库(第六部分):净持帐户事件
轻松快捷开发 MetaTrader 程序的函数库(第六部分):净持帐户事件

轻松快捷开发 MetaTrader 程序的函数库(第六部分):净持帐户事件

在之前的文章中,我们已着手创建一个大型跨平台函数库,简化 MetaTrader 5 和 MetaTrader 4 平台程序的开发。 在本系列文章的第五部分中,我们创建了交易事件类和事件集合,从中将事件发送到 Engine 函数库的基础对象和控制程序图表。 在这部分中,我们将让函数工作在净结算账户上。
轻松快捷开发 MetaTrader 程序的函数库(第 二十二部分):交易类 - 基准类,限制验证
轻松快捷开发 MetaTrader 程序的函数库(第 二十二部分):交易类 - 基准类,限制验证

轻松快捷开发 MetaTrader 程序的函数库(第 二十二部分):交易类 - 基准类,限制验证

在本文中,我们将着手开函数发库基准交易类,并在其第一个版本中加入进行交易操作的权限初始验证。 此外,我们还将略微扩展基准交易类的功能和内容。
preview
如何利用 MQL5 检测趋势和图表形态

如何利用 MQL5 检测趋势和图表形态

在本文中,我们将提供一种通过 MQL5 自动检测价格行为形态的方法,如趋势(上行趋势、下行趋势、横盘整理)、图表形态(双顶、双底)。
preview
数据科学与机器学习(第 01 部分):线性回归

数据科学与机器学习(第 01 部分):线性回归

我们作为交易员,现在是时候基于数字所言来培训我们的系统,并自行制定决策了。 尽管我们的眼睛看不到,但我们的勇气让我们相信,这是世界前进的方向,所以,让我们顶着波浪的方向移动。
扩展 MQL5 标准库和重用代码
扩展 MQL5 标准库和重用代码

扩展 MQL5 标准库和重用代码

作为一名开发人员,MQL5 标准库让您的工作变得更加容易。然而,它无法实现世界上所有开发人员的全部需求,所以,如果您觉得您需要更多的自定义程序,您可以对标准库进行进一步的扩展。本文指导您完成将 MetaQuotes 的峰谷技术指标集成至标准库。我们从 MetaQuotes 的设计理念获得启发以实现我们的目标。
图形界面III:简单与多功能按钮组(第二章)
图形界面III:简单与多功能按钮组(第二章)

图形界面III:简单与多功能按钮组(第二章)

本系列的第一章是关于简单和多功能按钮的,第二篇文章将致力于相互关联的按钮组,这样在应用程序中就可以创建元件,让用户从一个集合(组)中选择一个选项。
MQL5 向导:如何创建未平仓位的追踪模块
MQL5 向导:如何创建未平仓位的追踪模块

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

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

液态图表

您是否希望在小时图表里看到本小时内第二和第十五分钟开盘的柱线?每分钟开盘价都在变化的重绘图表看上去会像什么样?依据这样的图表进行交易有何优势?您将在本文当中找到这些答案。
使用CSS选择器从HTML页面提取结构化数据
使用CSS选择器从HTML页面提取结构化数据

使用CSS选择器从HTML页面提取结构化数据

本文描述了一种通用的基于CSS选择器的HTML文档数据分析和转换方法。交易报告、测试报告、您最喜欢的经济日历、公共信号、账户监控和其他在线报价源将直接从MQL获得。
preview
神经网络变得轻松(第十二部分):舍弃

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

作为研究神经网络的下一步,我建议研究在神经网络训练过程中提高收敛性的方法。 有若干种这样的方法。 在本文中,我们将研究其中之一,名为“舍弃”。
统计估计
统计估计

统计估计

对某个序列的统计参数进行估计非常重要,因为大多数数学模型和方法均基于不同的假设。例如,正态分布规律或离差值(或其他参数)就是这样。因此,在分析和预测时间序列时,我们需要一个简单方便的工具,用于快速清晰地估计主要统计参数。本文简要说明了一个随机序列的最简单统计参数,以及其可视分析的几种方法。本文还说明了如何在 MQL5 中实现这些方法,以及使用 Gnuplot 应用程序对计算结果进行可视化的方法。
preview
多层感知机与反向传播算法

多层感知机与反向传播算法

这两种方法的普及性日益增加,因此在 Matlab、R、Python、C++ 等领域开发了大量的库,它们接收到一个训练集作为输入,并自动为问题创建合适的网络。让我们试着理解基本的神经网络类型是如何工作的(包括单神经元感知机和多层感知机)。我们将探讨一个令人兴奋的算法,它负责网络训练 - 梯度下降和反向传播。现有的复杂模型往往基于这样简单的网络模型。
MQL5 酷客宝典: 读取持有锁仓仓位的属性
MQL5 酷客宝典: 读取持有锁仓仓位的属性

MQL5 酷客宝典: 读取持有锁仓仓位的属性

MetaTrader 5 是一个多资产平台,此外,它还支持不同的仓位管理系统。这种功能为实现和创建交易思路提供了更加广泛的选择,在本文中,我们将讨论在锁仓模式下处理和计算仓位属性的方法。这篇文章包含了一个派生类,以及展示如何取得和处理锁仓仓位属性的实例 。
MQL5 Cookbook: 怎样在设置/修改交易参数时避免错误
MQL5 Cookbook: 怎样在设置/修改交易参数时避免错误

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

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

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

在这篇文章中,我们继续开发用于操作优化结果的 MQL 应用程序,这一次,我们将会展示如何在通过图形界面指定了其它标准、在优化参数之后生成最佳结果的表格。
在 MQL5 中使用 WinInet。第二部分:POST 请求和文件
在 MQL5 中使用 WinInet。第二部分:POST 请求和文件

在 MQL5 中使用 WinInet。第二部分:POST 请求和文件

在本文中,我们将继续学习使用 HTTP 请求处理互联网和与服务器进行信息交换的原则。它介绍了 CMqlNet 类的新函数、从表单发送信息的方法、使用 POST 请求发送文件的方法以及使用 Cookie 在您登录网站时进行身份验证。
MQL5 Cookbook - 以 MQL5 编写的多币种 EA,利用限价订单工作
MQL5 Cookbook - 以 MQL5 编写的多币种 EA,利用限价订单工作

MQL5 Cookbook - 以 MQL5 编写的多币种 EA,利用限价订单工作

这次,我们将要创建一款多币种 EA,交易算法基于限价订单 Buy Stop(高买) 和 Sell Stop(低卖)。本文讨论下列事项:在规定时间范围内进行交易,布置/修改/删除限价订单,检查最后一个持仓是否在止盈或止损位置平仓,以及在成交历史中控制每个品种。
如何快速创建一个"2010 年自动交易锦标赛"专用"EA 交易"
如何快速创建一个"2010 年自动交易锦标赛"专用"EA 交易"

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

为了开发出一种参与“2010 年自动交易锦标赛”的“EA 交易”,我们使用一个即用的“EA 交易”模板。 即便是 MQL5 程序员初哥也能胜任此任务,因为您策略的基类、函数和模板都已经开发完毕。 编写少量的代码来实现您的交易理念就足够了。
选择交易信号进行订阅的技巧。循序渐进的操作手册
选择交易信号进行订阅的技巧。循序渐进的操作手册

选择交易信号进行订阅的技巧。循序渐进的操作手册

本文提供一种在信号服务中搜寻交易信号的系统性方法,寻找能够平衡获利、风险、交易欲望,并且能适用于各类交易帐户及交易对象的交易信号。
MetaTrader 5:在博客、社交网络和专业网站上通过电子邮件发布交易预测和实时交易声明
MetaTrader 5:在博客、社交网络和专业网站上通过电子邮件发布交易预测和实时交易声明

MetaTrader 5:在博客、社交网络和专业网站上通过电子邮件发布交易预测和实时交易声明

本文旨在使用 MetaTrader 5 提供用于发布预测的即用型解决方案。它涵盖各种各样的想法:从使用针对发布 MetaTrader 声明的专业网站,到几乎不需要任何 Web 编程经验就可搭建自己的网站,再到与允许很多读者加入并关注预测的社交网络微博服务的集成,无所不包。在此处提供的所有解决方案都是百分百免费的,并且能够由具备电子邮件和 FTP 服务基本知识的任何人所搭建。使用相同的技术来提供专业托管和商业性交易预测服务也毫无问题。
preview
学习如何基于鳄鱼(Alligator)设计交易系统

学习如何基于鳄鱼(Alligator)设计交易系统

在本文中,我们将完成有关如何基于最流行的技术指标设计交易系统的系列文章。 我们将学习如何创建基于鳄鱼指标的交易系统。
将您的线性交易系统提升为幂交易系统
将您的线性交易系统提升为幂交易系统

将您的线性交易系统提升为幂交易系统

今天的文章为中级 MQL5 编程人员讲解如何通过轻松实施所谓的幂的技术从他们的线性交易系统(固定手数)中获利更多。这是因为结果资产净值曲线呈抛物线形式,以几何级数或指数增长。具体而言,我们将实施一个由 Ralph Vince 开发的固定分数仓位大小的实际 MQL5 变体。
preview
神经网络变得轻松(第十一部分):自 GPT 获取

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

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

一个基于不同大陆不同时区的交易策略实例

在互联网上很轻松就能找到许多策略,它们也会为您提供大量各式各样的建议。我们则会采取一种专业的方法,基于不同大陆不同时区,深入策略创建的过程。
preview
从头开始采用 MQL 语言进行深度神经网络编程

从头开始采用 MQL 语言进行深度神经网络编程

本文旨在教导读者如何从头开始采用 MQL4/5 语言构建深度神经网络。
图形界面 X: 渲染表格的新功能 (集成编译 9)
图形界面 X: 渲染表格的新功能 (集成编译 9)

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

时至今日, CTable 是函数库中所含的最先进类型表格。表格由 OBJ_EDIT 类型的编辑框汇集而成, 但其进一步开发成为问题。因此, 在最大性能方面, 即使是在函数库的当前开发阶段, 也最好开发 CCanvasTable 类型的渲染表格。它的当前版本毫无生气, 但从本文开始, 我们将尝试解决这个问题。
自适应算法(第四部分):附加功能和测试
自适应算法(第四部分):附加功能和测试

自适应算法(第四部分):附加功能和测试

我将继续采用最少的必要功能来充实算法,并测试结果。 其获利能力十分低下,但文章展示的全自动盈利交易的模型,是在不同的行情基本面及完全不同的金融产品上进行。
轻松快捷开发 MetaTrader 程序的函数库(第十二部分)。
轻松快捷开发 MetaTrader 程序的函数库(第十二部分)。

轻松快捷开发 MetaTrader 程序的函数库(第十二部分)。

上篇文章中,我们在函数库中为 MQL4 定义了平仓事件,并删除了若干未使用的订单属性。 在此,我们将研究创建 Account 对象,开发帐户对象的集合,并筹备跟踪帐户事件的功能。
为 MetaTrader 打造的高级 EA 构造器 - botbrains
为 MetaTrader 打造的高级 EA 构造器 - botbrains

为 MetaTrader 打造的高级 EA 构造器 - botbrains

在本文中,我们将展示 botbrains.app 的功能 — 一款无代码开发交易机器人的平台。 若要创建一款交易机器人,您无需编写任何代码 — 只需将必要的模块拖放到规划图上,设置它们的参数,并在它们之间建立连接。
preview
学习为什么、以及如何设计算法交易系统

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

本文在介绍了 MQL5 的一些基础知识之后,通过设计一个简单的算法交易系统,向初学者展示了如何运用 MQL 的基础知识设计他们的算法交易系统(智能交易系统)
preview
MetaTrader 5 中的 WebSockets

MetaTrader 5 中的 WebSockets

在引入随 MQL5 API 更新而提供的网络功能之前,MetaTrader 程序与基于 WebSocket 的服务连接和接口的能力受到许多限制。当然,这一切都改变了,在本文中,我们将探讨纯 MQL5 中 WebSocket 库的实现。WebSocket 协议的简要描述将与如何使用生成的库的逐步指南一起给出。
指标间的数据交换:易如反掌!
指标间的数据交换:易如反掌!

指标间的数据交换:易如反掌!

我们希望创建这样一个环境,即能够提供对附加于图表的指标的数据访问,并具有以下属性:没有数据复制;只需稍加修改我们需要使用的可用方法的代码;MQL 代码优先(当然,我们必须使用 DLL,但我们将只使用一些 C++ 代码字符串)。本文介绍了为 MetaTrader 终端开发程序环境的简易方法,这将提供从其他 MQL 程序访问指标缓冲区的方法。
社交交易。 可盈利的信号能否变得更好?
社交交易。 可盈利的信号能否变得更好?

社交交易。 可盈利的信号能否变得更好?

大多数订阅者是通过优美的余额曲线和订阅用户数量来选择交易信号。 这就是为什么如今许多提供者只在乎漂亮的统计数据而非信号的真实质量,经常玩弄手数把戏并人为地将余额曲线整理到理想的外观。 本文论述了可靠性准则,以及提供者可用于提高其信号质量的方法。 展现特定信号历史的示例性分析,以及有助于提供者提升盈利并降低风险的方法。
图形界面 X: 排序、重建表格和单元格中的控件 (集成编译 11)
图形界面 X: 排序、重建表格和单元格中的控件 (集成编译 11)

图形界面 X: 排序、重建表格和单元格中的控件 (集成编译 11)

我们继续向渲染表格添加新功能: 数据排序, 管理列和行数, 设置表格单元类型以将控件放入其中。
价格序列离散化,随机分量和噪音
价格序列离散化,随机分量和噪音

价格序列离散化,随机分量和噪音

我们通常使用烛条或条形图来分析行情,将价格序列切分成规则间隔。 这样的离散化方法不会扭曲行情走势的真实结构吗? 将音频信号离散化为规则间隔是可以接受的解决方案,因为音频信号是随时间变化的函数。 信号本身是取决于时间的幅度。 该信号属性是基本的。
利用 curl 解析 HTML
利用 curl 解析 HTML

利用 curl 解析 HTML

本文论述利用第三方控件的简易 HTML 代码解析库。 特别是,它涵盖了诸多访问数据的可能性,甚至有些用往常的 GET 和 POST 请求都无法检索。 我们将选择一个页面不太大的网站,并尝试从该网站获取感兴趣的数据。
创建一个在若干工具上交易的 EA 交易程序
创建一个在若干工具上交易的 EA 交易程序

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

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