MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
更好的程序员(第 07 部分):变为一名成功的自由职业开发者的注意事项
更好的程序员(第 07 部分):变为一名成功的自由职业开发者的注意事项

更好的程序员(第 07 部分):变为一名成功的自由职业开发者的注意事项

您想成为一名成功的 MQL5 自由开发者吗? 如果答案是肯定的,这篇文章适合您。
preview
从头开始开发智能交易系统(第 9 部分):概念上的飞跃  (II)

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

在本文中,我们将把 Chart Trade 这个应用程序放置在浮动窗口当中。 在前一篇中,我们创建了一个基本系统,该系统支持在浮动窗口中使用模板。
MQL5 Cookbook: 处理 BookEvent
MQL5 Cookbook: 处理 BookEvent

MQL5 Cookbook: 处理 BookEvent

本文研究 BookEvent - 一个市场深度事件,以及它的处理原理。一个处理市场深度状态的 MQL 程序,作为例程。它采用面向对象方法编写。处理结果作为面板显示在屏幕上,还有市场深度级别。
preview
理解并有效地使用 MQL5 策略测试器

理解并有效地使用 MQL5 策略测试器

对于 MQL5 程序员或开发人员,一项基本需求就是掌握那些重要且颇具价值的工具。 其中一个工具是策略测试器,本文是理解和使用 MQL5 策略测试器的实用指南。
轻松快捷开发 MetaTrader 程序的函数库(第 二十五部分):处理交易服务器返回的错误
轻松快捷开发 MetaTrader 程序的函数库(第 二十五部分):处理交易服务器返回的错误

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

交易订单发送到服务器之后,我们需要检查错误代码,或未出现错误。 在本文中,我们将研究处理交易服务器返回的错误,并着手创建延后交易请求。
DoEasy 函数库中的图形(第九十一部分):标准图形对象事件。 对象名称更改历史记录
DoEasy 函数库中的图形(第九十一部分):标准图形对象事件。 对象名称更改历史记录

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

在本文中,我将改进基本功能,从而能够基于函数库程序来控制图形对象事件。 我一开始将以“对象名称”属性为例,实现存储图形对象更改历史的功能。
来自专业程序员的提示(第二部分):在智能交易系统、脚本和外部程序之间存储和交换参数
来自专业程序员的提示(第二部分):在智能交易系统、脚本和外部程序之间存储和交换参数

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

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

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

在本文中,我将继续跟踪标准图形对象事件,并创建允许用户控制在终端中打开的任何图表上放置的图形对象属性更改的功能。
preview
MQL5 简介(第 1 部分):算法交易新手指南

MQL5 简介(第 1 部分):算法交易新手指南

通过我们的 MQL5 编程新手指南,进入算法交易的迷人领域。在揭开自动化交易世界的神秘面纱之际,让我们探索支持MetaTrader 5 的语言 MQL5 的精髓。从了解基础知识到迈出编码的第一步,本文是您即使没有编程背景也能释放算法交易潜力的关键。加入我们的旅程,在令人兴奋的 MQL5 世界里,体验简单与复杂的结合吧。
使用 DeMark Sequential 和 Murray-Gann 水平分析图表
使用 DeMark Sequential 和 Murray-Gann 水平分析图表

使用 DeMark Sequential 和 Murray-Gann 水平分析图表

Thomas DeMark Sequential (序列)擅长显示价格变动的平衡变化。如果我们把它的信号与水平指标例如 Murray 水平相结合,就更为明显。这篇文章主要是为初学者和那些仍然找不到他们的“圣杯”。我还将展示一些我在其他论坛上没有看到的构建水平的功能。因此,这篇文章可能对高级交易者也很有用。欢迎提出建议和合理批评。
MetaTrader 4 和 MetaTrader 5 交易平台的群组交易
MetaTrader 4 和 MetaTrader 5 交易平台的群组交易

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

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

查找错误和记录

MetaEditor 5 具备调试功能。但是在编写 MQL5 程序时,您通常都希望不要显示个别的值,而是测试与在线工作期间出现的所有信息。如果日志文件内容庞大,所需信息快速便捷检索自动化的重要性就显而易见了。本文中,我们会研究 MQL5 程序中查找错误的方式以及记录方法。我们也会简单地记录到文件中,并了解一款方便日志查看的简单程序 - LogMon。
preview
神经网络变得轻松(第八部分):关注机制

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

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

自动选择经纪公司,以便 Expert Advisor 高效运行

众所周知,要 Expert Advisor 实现高效运行,我们需要找到一个合适的经纪公司。本文将介绍用于本搜索的系统方法。您将了解使用 dll 创建适用于不同终端的程序的过程。
在MetaTrader5中创建交互应用来展现RSS订阅
在MetaTrader5中创建交互应用来展现RSS订阅

在MetaTrader5中创建交互应用来展现RSS订阅

本文中我们将讨论创建一个应用来展现RSS订阅的可能性。本文将介绍如何使用MetaTrader 5的标准类库来创建交互应用。
preview
开发多币种 EA 交易(第 1 部分):多种交易策略的协作

开发多币种 EA 交易(第 1 部分):多种交易策略的协作

交易策略是多种多样的,因此,或许可以采用几种策略并行运作,以分散风险,提高交易结果的稳定性。但是,如果每个策略都作为单独的 EA 交易来实现,那么在一个交易账户上管理它们的工作就会变得更加困难。为了解决这个问题,在一个 EA 中实现不同交易策略的操作是合理的。
基于大众交易系统和交易机器人优化点金术的 Expert Advisor(续)
基于大众交易系统和交易机器人优化点金术的 Expert Advisor(续)

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

在本文中,作者继续分析最简单的交易系统的实现算法,并介绍使用优化结果的一些相关细节。本文对于交易新手和 EA 编写新手很有帮助。</div>
预测市场价格的通用回归模型(二):自然、技术和社会暂态函数
预测市场价格的通用回归模型(二):自然、技术和社会暂态函数

预测市场价格的通用回归模型(二):自然、技术和社会暂态函数

本文是前一篇文章的逻辑延续。 它彰显一个事实,即确认第一篇文章的结论。 这些事实在该书出版后的十年内就得以显露。 它们围绕着三个检测到的描述市场价格变化形态的动态暂态函数展开。
用 MQL5 连接 EA 交易程序和 ICQ
用 MQL5 连接 EA 交易程序和 ICQ

用 MQL5 连接 EA 交易程序和 ICQ

本文描述 EA 交易程序和 ICQ 用户之间的信息交换方法,并提供了几个例子。通过他们的手机或 PDA 中的 ICQ 客户端,从一个客户端远程接收交易信息的人会对提供的材料感兴趣。
preview
基于MQL5的订单剥头皮交易系统

基于MQL5的订单剥头皮交易系统

这款MetaTrader 5 EA实现了基于订单流的剥头皮交易策略,并配备了高级风险管理功能。它使用多种技术指标,通过订单的不平衡性来识别交易机会。回测结果显示该策略具有潜在的盈利能力,但同时也突显了需要进一步优化的必要性,尤其是在风险管理和交易结果比率方面。该策略适合经验丰富的交易者,但在实际部署之前,需要进行彻底的测试和深入理解。
preview
学习如何基于 OBV 设计交易系统

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

这是一篇新文章,将针对初学者继续我们的系列,介绍如何基于一些流行指标设计交易系统。 我们将学习一个新的指标,即能量潮(OBV),我们将学习如何使用并基于它来设计交易系统。
preview
神经网络实验(第 1 部分):重温几何学

神经网络实验(第 1 部分):重温几何学

在本文中,我将利用实验和非标准方法开发一个可盈利的交易系统,并验证神经网络是否对交易者有任何帮助。
preview
复购算法:提高效率的数学模型

复购算法:提高效率的数学模型

在本文中,我们将使用复购算法来更深入地了解交易系统的效率,并开始研究使用数学和逻辑提高交易效率的一般原则,以及在使用任意交易系统方面应用更能提高效率的非标准方法。
使用TesterWithdrawal() 函数模拟利润提取
使用TesterWithdrawal() 函数模拟利润提取

使用TesterWithdrawal() 函数模拟利润提取

本文讲述的是用于交易系统风险评估的TesterWithDrawal()函数的用法,即运行期间提取一部分资产。此外,还会讲到此函数对于策略测试程序中资产净值减少的计算算法的作用。在优化您的EA交易的时候,就会用到此函数。
preview
构建自动运行的 EA(第 12 部分):自动化(IV)

构建自动运行的 EA(第 12 部分):自动化(IV)

如果您认为自动化系统很简单,那么您可能并未完全理解创建它们需要什么。 在本文中,我们将谈谈杀死大量智能系统的问题。 不分青红皂白地触发订单是解决这个问题的可能方法。
preview
为EA交易提供指标的现成模板(第3部分):趋势指标

为EA交易提供指标的现成模板(第3部分):趋势指标

在这篇参考文章中,我们将研究趋势指标类别中的标准指标。我们将创建现成的模板,用于EA中的指标使用——声明和设置参数、指标初始化和析构,以及从EA中的指示符缓冲区接收数据和信号。
preview
非线性指标

非线性指标

在本文中,我将尝试研究一些构建非线性指标的方法,并探索其在交易中的用处。 MetaTrader 交易平台中有相当多的指标采用非线性方式。
外部指标的提醒和注释(第二部分)
外部指标的提醒和注释(第二部分)

外部指标的提醒和注释(第二部分)

自发表了“外部指标的提醒和注释”文章以来,我不断收到关于开发基于指标线运行的外部通知程序的可能性的请求和询问。 在对问题进行分析之后,我决定继续探讨该话题。 获得储存在指标缓冲区中的数据成为用户的另一个关注领域。
计算数学表达式(第二部分)。 普拉特和分流场解析器
计算数学表达式(第二部分)。 普拉特和分流场解析器

计算数学表达式(第二部分)。 普拉特和分流场解析器

在本文中,我们基于运算符优先级的解析器,研究数学表达式解析和评估的原理。 我们将实现普拉特(Pratt)和分流场解析器,字节代码的生成和代码计算,查看如何在表达式中将指标用作函数,以及如何基于这些指标在智能交易系统中设置交易信号。
preview
连续前行优化 (第七部分): 将自动优化器的逻辑部分与图形绑定,并通过程序控制图形

连续前行优化 (第七部分): 将自动优化器的逻辑部分与图形绑定,并通过程序控制图形

本文介绍了自动优化程序的图形部分与其逻辑部分的连接。 它考虑了优化启动过程,从单击按钮到把任务重定向到优化管理器。
preview
DoEasy 函数库中的时间序列(第四十九部分):多周期、多品种、多缓冲区标准指标

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

在本文中,我将改进库类,从而满足需要多个缓冲区来显示其数据的多品种、多周期标准指标的开发能力。
preview
学习如何基于鳄嘴(Gator)振荡器设计交易系统

学习如何基于鳄嘴(Gator)振荡器设计交易系统

这是我们关于学习如何基于流行技术指标设计交易系统系列的一篇新文章,将介绍鳄嘴(Gator)振荡器技术指标,以及如何通过简单的策略创建交易系统。
preview
如何利用 MQL5 处理指示线

如何利用 MQL5 处理指示线

在本文中,您将发现利用 MQL5 处理最重要的指示线(如趋势线、支撑线和阻力线)的方法。
针对市场分析的数据库的具体应用
针对市场分析的数据库的具体应用

针对市场分析的数据库的具体应用

处理数据成为现代软件的主要任务 - 独立应用程序和网络应用程序都是如此。为解决此问题而创建了专业软件。这些软件被称为数据库管理系统 (DBMS),能够针对它们的计算机存储和处理对数据进行构建、系统化和组织。对于交易,大多数分析师并不在他们的工作中使用数据库。但是对于一些任务,必须使用此类解决方案。本文提供了一个在客户端-服务器和文件-服务器架构中都能将数据保存到数据库或从数据库加载数据的指标例子。
preview
如何在 MQL5 中使用 ONNX 模型

如何在 MQL5 中使用 ONNX 模型

ONNX(开放式神经网络交换)是一种开源的机器学习模型格式。 在本文中,我们将研究如何创建 CNN-LSTM 模型,来预测金融时间序列。 我们还将展示如何在 MQL5 智能系统中运用创建的 ONNX 模型。
指标和提醒的盈利能力可视化测试
指标和提醒的盈利能力可视化测试

指标和提醒的盈利能力可视化测试

通过这些提醒进行 EA 测试时,通常将决定是使用交易提醒的哪个指标或只是指标计算方式。但是,为每个指标编写一个 EA 并非总是可能/必要/合理的。你可以通过自己收集提醒并绘制理想交易图像的特殊指标,快速计算出基于其他指标提醒的交易盈利能力。这可帮助你既对所得结果进行可视化估计,又快速选择了最优参数。
preview
学习如何基于比尔·威廉姆斯(Bill Williams)的 MFI 设计交易系统

学习如何基于比尔·威廉姆斯(Bill Williams)的 MFI 设计交易系统

这是该系列中的一篇新文章,我们将学习如何根据流行的技术指标设计交易系统。 这次我们将涵盖比尔·威廉姆斯(Bill Williams)的市场促进指数(BW MFI)。
preview
种群优化算法:蚁群优化(ACO)

种群优化算法:蚁群优化(ACO)

这次我将分析蚁群优化算法。 该算法非常有趣且复杂。 在本文中,我尝试创建一种新型的 ACO。
DoEasy 函数库中的图形(第七十五部分):处理基本图形元素图元和文本的方法
DoEasy 函数库中的图形(第七十五部分):处理基本图形元素图元和文本的方法

DoEasy 函数库中的图形(第七十五部分):处理基本图形元素图元和文本的方法

在本文中,我将继续开发由 CCanvas 标准库类提供强力支持的所有函数库图形对象的基准图形元素类。 我将创建绘制图元和在图形元素对象上显示文本的方法。
preview
数据科学与机器学习(第 11 部分):朴素贝叶斯(Bayes),交易中的概率论

数据科学与机器学习(第 11 部分):朴素贝叶斯(Bayes),交易中的概率论

概率交易就像走钢丝一样 — 它需要精确、平衡和对风险的敏锐理解。 在交易世界中,概率就是一切。 这是成功与失败、盈利与亏损的区别。 通过利用概率的力量,交易者可以做出明智的决策,有效地管理风险,并实现他们的财务目标。 故此,无论您是经验丰富的投资者还是交易新手,了解概率都是解锁您的交易潜能的关键。 在本文中,我们将探索令人兴奋的概率交易世界,并向您展示如何将您的交易博弈提升到一个新的水平。