MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
preview
构建自动运行的 EA(第 08 部分):OnTradeTransaction

构建自动运行的 EA(第 08 部分):OnTradeTransaction

在本文中,我们将目睹如何利用事件处理系统快速有效地处理与订单系统相关的问题。 配合这个系统,EA 就能更快地工作,如此它就不必持续不断地搜索所需的数据。
来自专业程序员的提示(第二部分):在智能交易系统、脚本和外部程序之间存储和交换参数
来自专业程序员的提示(第二部分):在智能交易系统、脚本和外部程序之间存储和交换参数

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

这些来自专业程序员关于方法、技术和辅助工具的一些提示,可令编程变得更轻松。 我们将讨论终端重启(关闭)后如何恢复参数。 所有示例都是来自我的 Cayman 项目的真实工作代码片段。
预测市场价格的通用回归模型(二):自然、技术和社会暂态函数
预测市场价格的通用回归模型(二):自然、技术和社会暂态函数

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

本文是前一篇文章的逻辑延续。 它彰显一个事实,即确认第一篇文章的结论。 这些事实在该书出版后的十年内就得以显露。 它们围绕着三个检测到的描述市场价格变化形态的动态暂态函数展开。
preview
DoEasy 函数库中的时间序列(第四十九部分):多周期、多品种、多缓冲区标准指标

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

在本文中,我将改进库类,从而满足需要多个缓冲区来显示其数据的多品种、多周期标准指标的开发能力。
用 MQL5 连接 EA 交易程序和 ICQ
用 MQL5 连接 EA 交易程序和 ICQ

用 MQL5 连接 EA 交易程序和 ICQ

本文描述 EA 交易程序和 ICQ 用户之间的信息交换方法,并提供了几个例子。通过他们的手机或 PDA 中的 ICQ 客户端,从一个客户端远程接收交易信息的人会对提供的材料感兴趣。
使用TesterWithdrawal() 函数模拟利润提取
使用TesterWithdrawal() 函数模拟利润提取

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

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

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

如果您认为自动化系统很简单,那么您可能并未完全理解创建它们需要什么。 在本文中,我们将谈谈杀死大量智能系统的问题。 不分青红皂白地触发订单是解决这个问题的可能方法。
preview
让图表更有趣:添加背景

让图表更有趣:添加背景

许多工作站包含一些代表性的图片用以显示用户的一些信息。 这些图片令工作环境更加优美和令人兴奋。 我们来看看如何通过添加背景令图表更有趣。
外部指标的提醒和注释(第二部分)
外部指标的提醒和注释(第二部分)

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

自发表了“外部指标的提醒和注释”文章以来,我不断收到关于开发基于指标线运行的外部通知程序的可能性的请求和询问。 在对问题进行分析之后,我决定继续探讨该话题。 获得储存在指标缓冲区中的数据成为用户的另一个关注领域。
已打开头寸的两步修改
已打开头寸的两步修改

已打开头寸的两步修改

两步法让你在邻近趋势的情况下和可能发生偏离的时候,避免不必要的关闭和重新打开头寸。
针对市场分析的数据库的具体应用
针对市场分析的数据库的具体应用

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

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

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

通过这些提醒进行 EA 测试时,通常将决定是使用交易提醒的哪个指标或只是指标计算方式。但是,为每个指标编写一个 EA 并非总是可能/必要/合理的。你可以通过自己收集提醒并绘制理想交易图像的特殊指标,快速计算出基于其他指标提醒的交易盈利能力。这可帮助你既对所得结果进行可视化估计,又快速选择了最优参数。
计算数学表达式(第二部分)。 普拉特和分流场解析器
计算数学表达式(第二部分)。 普拉特和分流场解析器

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

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

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

本文介绍了自动优化程序的图形部分与其逻辑部分的连接。 它考虑了优化启动过程,从单击按钮到把任务重定向到优化管理器。
preview
如何利用 MQL5 处理指示线

如何利用 MQL5 处理指示线

在本文中,您将发现利用 MQL5 处理最重要的指示线(如趋势线、支撑线和阻力线)的方法。
工作必须继续,再次讨论锯齿形调整浪
工作必须继续,再次讨论锯齿形调整浪

工作必须继续,再次讨论锯齿形调整浪

关于一个显而易见但仍不合标准的锯齿形调整浪构成方法,以及其所产生的结果:多帧分形锯齿形调整浪指标,它表示在单个工作时间范围 (TF) 上基于三个较大波动所构建的锯齿形调整浪。在整个过程中,较大的 TF 的时间范围可能也不符合标准,介于 M5 到 MN1 之间。
更好的程序员(第 07 部分):变为一名成功的自由职业开发者的注意事项
更好的程序员(第 07 部分):变为一名成功的自由职业开发者的注意事项

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

您想成为一名成功的 MQL5 自由开发者吗? 如果答案是肯定的,这篇文章适合您。
preview
从市场里选择智能交易系统的正确途径

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

在本文中,我们将研究购买智能交易系统时应该注意的一些要点。 我们还将寻求提升盈利的方法,从而明智地花钱,并从付出中获取盈利。 此外,读完本文之后,您会发现,即便使用简单免费的产品也有可能赚到钱。
preview
数据科学与机器学习(第 11 部分):朴素贝叶斯(Bayes),交易中的概率论

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

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

三维图形 - 市场分析的专业工具

本文中,我们将编写一个简单的库,用于构建 3D 图形及其在 Microsoft Excel 中的进一步浏览。我们将使用标准的 MQL4 选项准备和导出数据至 *.csv 文件。
preview
学习如何基于鳄嘴(Gator)振荡器设计交易系统

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

这是我们关于学习如何基于流行技术指标设计交易系统系列的一篇新文章,将介绍鳄嘴(Gator)振荡器技术指标,以及如何通过简单的策略创建交易系统。
preview
从头开始开发智能交易系统(第 8 部分):概念上的飞跃

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

实现新功能的最简单途径是什么? 在本文中,我们将后撤一步,然后再前进两步。
MQL5 Cookbook: 处理典型图表事件
MQL5 Cookbook: 处理典型图表事件

MQL5 Cookbook: 处理典型图表事件

本文研究典型图表事件,包括其处理例程。我们将专注于鼠标事件,按键,创建/修改/删除图形对象,鼠标点击图表上的图形对象,用鼠标移动图形对象,在文本域中完成文本编辑,以及在图表上修改事件。研究的每一类事件,都有一个 MQL5 程序例程。
DoEasy 函数库中的图形(第七十五部分):处理基本图形元素图元和文本的方法
DoEasy 函数库中的图形(第七十五部分):处理基本图形元素图元和文本的方法

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

在本文中,我将继续开发由 CCanvas 标准库类提供强力支持的所有函数库图形对象的基准图形元素类。 我将创建绘制图元和在图形元素对象上显示文本的方法。
preview
复购算法:提高效率的数学模型

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

在本文中,我们将使用复购算法来更深入地了解交易系统的效率,并开始研究使用数学和逻辑提高交易效率的一般原则,以及在使用任意交易系统方面应用更能提高效率的非标准方法。
查找错误和记录
查找错误和记录

查找错误和记录

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

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

每位开发人员都希望能够更快地编写代码,且能够更快、更有效地编写代码并非只是少数人与生俱来的特殊能力。 这项技能是可通过学习提升的,这就是我在本文中尝试传授的内容。
基于大众交易系统和交易机器人优化点金术的 Expert Advisor(续)
基于大众交易系统和交易机器人优化点金术的 Expert Advisor(续)

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

在本文中,作者继续分析最简单的交易系统的实现算法,并介绍以图表方式将回溯测试中的优化结果记录到一个 html 文件中。本文对于交易新手和 EA 编写新手很有帮助。
群集指标在嘉盛市场中的实际应用
群集指标在嘉盛市场中的实际应用

群集指标在嘉盛市场中的实际应用

群集指标是一系列将货币对分成独立的货币的指标。指标允许跟踪相对货币波动,确定形成新的货币趋势的潜能,接收交易信号,以及跟踪中期和长期仓位。
如何准备 MetaTrader 5 报价用于其他应用程序
如何准备 MetaTrader 5 报价用于其他应用程序

如何准备 MetaTrader 5 报价用于其他应用程序

本文介绍创建目录、复制数据、归档、使用 Market Watch(市场报价)或常用列表中的交易品种以及错误处理等示例。实际上,所有这些元素可集中在一个以用户定义格式归档数据的脚本中。
MetaTrader 4中的测试特性和限定
MetaTrader 4中的测试特性和限定

MetaTrader 4中的测试特性和限定

文章介绍在MetaTrader 4中更多策略测试的特性和限定。
在交易中应用 OLAP(第 3 部分):为开发交易策略而分析报价
在交易中应用 OLAP(第 3 部分):为开发交易策略而分析报价

在交易中应用 OLAP(第 3 部分):为开发交易策略而分析报价

在本文中,我们将继续研讨在交易中运用 OLAP 技术。 我们会扩展前两篇文章中表述的功能。 这次我们将研究报价的操盘分析。 我们还将基于所汇集的历史数据,推导并检验交易策略的设想。 本文推介了基于柱线形态研究和自适应交易的智能交易系统。
preview
价格走势模型及其主要规定(第 1 部分):概率价格域演化方程与发生的可观测随机游走

价格走势模型及其主要规定(第 1 部分):概率价格域演化方程与发生的可观测随机游走

本文研究的是概率价格域演化方程,与即将到来的价格尖峰准则。 它还揭示了图表上价格数值的本质,以及这些数值随机游走的发生机制。
preview
神经网络变得轻松(第八部分):关注机制

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

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

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

这次我将分析蚁群优化算法。 该算法非常有趣且复杂。 在本文中,我尝试创建一种新型的 ACO。
preview
学习如何基于奥森姆(Awesome)振荡器设计交易系统

学习如何基于奥森姆(Awesome)振荡器设计交易系统

在我们系列的这篇新文章中,我们将学习一种也许对我们的交易有用的新技术工具。 它是奥森姆(Awesome)振荡器((AO)指标。 我们将学习如何基于该指标设计交易系统。
preview
神经网络实验(第 2 部分):智能神经网络优化

神经网络实验(第 2 部分):智能神经网络优化

在本文中,我将利用实验和非标准方法开发一个可盈利的交易系统,并验证神经网络是否对交易者有任何帮助。 若在交易中运用神经网络的话, MetaTrader 5 完全可作为一款自给自足的工具。
preview
神经网络变得轻松(第二十七部分):深度 Q-学习(DQN)

神经网络变得轻松(第二十七部分):深度 Q-学习(DQN)

我们继续研究强化学习。 在本文中,我们将与深度 Q-学习方法打交道。 DeepMind 团队曾运用这种方法创建了一个模型,在玩 Atari 电脑游戏时其表现优于人类。 我认为评估该技术来解决交易问题的可能性将会很有益处。
preview
学习如何基于 OBV 设计交易系统

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

这是一篇新文章,将针对初学者继续我们的系列,介绍如何基于一些流行指标设计交易系统。 我们将学习一个新的指标,即能量潮(OBV),我们将学习如何使用并基于它来设计交易系统。
preview
突破结构(BoS)交易策略分步指南

突破结构(BoS)交易策略分步指南

基于结构突破(Break of Structure, BoS)策略的自动化交易算法开发综合指南在MQL5中创建交易顾问并在MetaTrader 5中进行测试的全方位详解——从分析价格支撑与阻力到风险管理