MQL4和MQL5编程文章

icon

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

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

添加一个新的文章
最近 | 最佳
资金管理回顾
资金管理回顾

资金管理回顾

本文探讨交易者在外汇交易中使用各种资金管理系统时遇到的一些问题。此外还提供了在使用不同资金管理 (MM) 方法执行交易时获取的实验数据。
通过 MQL4 读取 RSS 新闻递送
通过 MQL4 读取 RSS 新闻递送

通过 MQL4 读取 RSS 新闻递送

本文讨论了利用 HTML 标签分析的函数通过 MQL4 读取 RSS(简易信息聚合)标记的示例。 我们将尝试制作一个半成品,它可以继续转变为新闻指示器或 MQL4 语言的 RSS 阅读器。
LibMatrix:矩阵代数库(第一部分)
LibMatrix:矩阵代数库(第一部分)

LibMatrix:矩阵代数库(第一部分)

作者让读者熟悉一个简单的矩阵代数库,并提供主要函数的说明和独特特性。
Chuvashov 的三角形机械交易系统
Chuvashov 的三角形机械交易系统

Chuvashov 的三角形机械交易系统

我将对基于 Stanislav Chuvashov 理念的机械交易系统进行概述并提供程序代码。 三角形建基于上分形和下分形产生的两条趋势线的交叉。
手动交易自动化的三个方面。 第 1 部分: 交易
手动交易自动化的三个方面。 第 1 部分: 交易

手动交易自动化的三个方面。 第 1 部分: 交易

本文是介绍 МetaТrader 4 交易平台中手动交易自动化的系列文章的第一篇。 本系列文章的每一篇都专门针对以下方面之一:手动交易的自动化,交易显示自动化的当前状态,和交易结果报告的自动化。 本文中,我将介绍一个有趣的由交易者手动控制的 EA 创建方法。
MetaTrader 4 Expert Advisor 与外部世界交换信息
MetaTrader 4 Expert Advisor 与外部世界交换信息

MetaTrader 4 Expert Advisor 与外部世界交换信息

一个供 МetaТrader 4 Expert Advisor 与外部世界进行信息交换的简单、通用而可靠的解决方案。 信息的提供商和用户可能使用不同的计算机,连接是通过全局 IP 地址实现的。
随机沙盒
随机沙盒

随机沙盒

本文包括用作为 Excel 文件的交互式“沙盒”,用于模拟随机的 Expert Advisor 回溯测试数据。 读者可以使用它,有助于探索和深入了解 MetaTrader 默认提供的 EA 性能指标。 本文旨在引导读者获得这种体验。
在Linux上运行MetaTrader 4
在Linux上运行MetaTrader 4

在Linux上运行MetaTrader 4

在本文中,我们演示了一种在流行的Linux版本(Ubuntu和Debian)上安装MetaTrader 4的简单方法。这些系统广泛用于服务器硬件以及交易者的个人计算机上。
深入了解累积/派发以及它的作用
深入了解累积/派发以及它的作用

深入了解累积/派发以及它的作用

累积/派发 (A/D) 指标有一个有趣的功能 - 突破此指标图表中绘制的趋势线暗示着一定概率上会即将突破价格图表中的趋势线。本文对于那些刚开始在 MQL4 中进行编程的人来说很有帮助和趣味性。为此,我尝试用易于理解的方式呈现信息并使用最简单的代码结构。
Mac OS 上的 MetaTrader 4
Mac OS 上的 MetaTrader 4

Mac OS 上的 MetaTrader 4

Apple 产品已经变得非常流行。 MetaQuotes Software Corp. 密切关注着 IT 行业的进展,已经为基于 iOS 的设备发布了专门的移动应用程序,包括适用于 iPhone 的 MetaTrader 4 和适用于 iPhone 的 MetaTrader 5。 在 MQL4.community 论坛,很多主题是关于寻求在 Mac OS 操作系统下运行 MetaTrader 4 的解决方法。 本文中,你将学会如何在 Apple 的流行操作系统上使用 MetaTrader 4。
交易者的工具箱: 拖动交易库(Drag Trade Library)
交易者的工具箱: 拖动交易库(Drag Trade Library)

交易者的工具箱: 拖动交易库(Drag Trade Library)

本文描述了提供可视化交易功能的拖动交易库。 该库可以轻松集成到几乎任何 Expert Advisor 中。 只需要添加一些代码行,就可以几乎毫不费力的将你的 Expert Advisor 从一个自动程序转换为自动交易和信息系统。
合成柱 - 显示价格图形信息的新视角
合成柱 - 显示价格图形信息的新视角

合成柱 - 显示价格图形信息的新视角

使用柱和日本蜡烛图显示价格信息的传统方法的主要缺点是受到时间周期的限制。 这些方法在创建的时候可能是最好的,但如今市场变动有时过于迅速,用这种方式在图表上显示的价格不能及时反映新的变动。 本文所提到的价格图表显示方法没有这个缺点,并且提供了非常熟悉的布局。
Chuvashov 的叉子机械交易系统
Chuvashov 的叉子机械交易系统

Chuvashov 的叉子机械交易系统

本文对基于 Stanislav Chuvashov 提出的技术的机械交易系统的方法和程序代码进行了简单的介绍,希望读者予以注意。 本文所探讨的市场分析跟 Thomas DeMark 以分形作为构建趋势线的参考点为最近的时间间隔绘制趋势线的方法有一些共同之处。
货币联动的分形分析
货币联动的分形分析

货币联动的分形分析

货币报价的独立性如何? 它们的走势是协同呢?还是一种货币的走势跟其他货币的走势截然无关? 本文描述了如何使用非线性动力学和分形几何方法解决该问题。
关于技术分析和市场预测的方法
关于技术分析和市场预测的方法

关于技术分析和市场预测的方法

本文论证了一个具备视觉思维的著名数学方法的能力和潜力,并提供了一种“独特的”市场展望。 一方面,它有助于吸引广泛受众的注意力,因为它可以让具有创造性思维的人们重新审视交易模式本身。 另一方面,它可以引导人们进行与各种分析和预测工具相关的其他开发和程序代码实现。
交易者的黄金法则
交易者的黄金法则

交易者的黄金法则

为了在高预期基础上获利,我们必须理解良好交易的三个基本原则: 1)进入市场时了解你所面临的风险;2)及早止损,让利润奔跑起来;3)了解你的系统的预期——对其定期测试和调整。 本文提供了跟踪未平仓头寸并实践第二黄金法则的程序代码,因为它可以使利润奔跑起来以达到可能的最高水平。
Expert Advisor 参数的测试(优化)技术和一些选择条件
Expert Advisor 参数的测试(优化)技术和一些选择条件

Expert Advisor 参数的测试(优化)技术和一些选择条件

我们可以毫不费力地找到测试的圣杯,然而,要摆脱它却困难得多。 本文重点介绍 Expert Advisor 操作参数的选择,以及在最大限度利用终端性能和最大限度减少终端用户负载的情况下对优化和测试结果进行自动化分组处理。
计量经济学 EURUSD 先行预测
计量经济学 EURUSD 先行预测

计量经济学 EURUSD 先行预测

本文主要讲述使用 EViews 软件对 EURUSD 的先行预测以及使用 EViews 语言程序对预测结果进行的进一步评估。 此预测采用回归模型,通过专为 MetaTrader 4 开发的 Expert Advisor 进行评估。
图形界面 II: 分隔线和上下文菜单元件 (第二章)
图形界面 II: 分隔线和上下文菜单元件 (第二章)

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

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

外部指标的提醒和注释

在实际交易中,交易者可能面临下面的情形:需要在显示器(图表窗口)上得到指示关于指标出现的信号的“提醒”或文本信息。 本文包含了一个示例,显示了由外部指标创建的图形对象的信息。
交易者的工具箱: 设计指标
交易者的工具箱: 设计指标

交易者的工具箱: 设计指标

本文主要介绍设计指标的主要任务,解决方案和自动化。
金融证券的叠加和干扰
金融证券的叠加和干扰

金融证券的叠加和干扰

随着影响货币对行为受到更多因素影响,评估其行为和对未来进行预测将愈发困难。 因此,如果我们成功提取货币对的组成部分,随时间改变的国家货币值,通过和带有此货币以及影响其行为的多个因素的货币对相比较,我们便可以相当程度上界定国家货币移动的自由度。 因此我们可以提高对其行为评估和未来预测的精准度。 如何办到?
请保护好自己,开发员!
请保护好自己,开发员!

请保护好自己,开发员!

知识产权的保护依旧是个大问题。 本文对 MQL4 程序保护的基本原则进行阐述。 通过这些原则,你可以确保你所开发的成果不会被窃取,或至少能够让小偷的“工作”复杂化,以让他罢手。
Meta 交易者持仓报告 - 在 MetaTrader 4 中进行美国商品期货交易委员会报告分析的新领域
Meta 交易者持仓报告 - 在 MetaTrader 4 中进行美国商品期货交易委员会报告分析的新领域

Meta 交易者持仓报告 - 在 MetaTrader 4 中进行美国商品期货交易委员会报告分析的新领域

本文关于在 MetaTrader 中使用美国商品期货交易委员会(CFTC)的报告数据。 文章详细描述了所讨论的 META 交易者持仓报告(COT)项目,展示了如何加载和处理必要的信息。 项目中包含的 Expert Advisor 将帮助我们分析文章中给出概念的有效性。 最后,我们将得出一些结论并提供有用的建议。
FANN2MQL 神经网络教学
FANN2MQL 神经网络教学

FANN2MQL 神经网络教学

本文将利用一个简单的例子为你演示如何通过 FANN2MQL 来使用神经网络:教给神经网络一个简单的模式,然后测试它是否能够识别从未见过的模式。
验证流言: 全日交易取决于亚洲时段的交易行情
验证流言: 全日交易取决于亚洲时段的交易行情

验证流言: 全日交易取决于亚洲时段的交易行情

在本文中,我们会探讨著名论述“全日交易取决于亚洲时段的交易行情”。
烛台方向统计再现的研究
烛台方向统计再现的研究

烛台方向统计再现的研究

是否能够基于烛台方向的再现趋势,在一天内的特定时间预测市场在即将到来的一小段时间内的市场行为? 即,是否可以在第一时间找出此类事件。 每个交易者可能都想过这个问题。 本文的目的是尝试基于烛台在特定时间间隔内的统计再现来预测市场行为。
过滤的魔力
过滤的魔力

过滤的魔力

大部分自动化交易系统开发员会使用某种形式的交易信号过滤。 在本文中,我们将探索带通滤波和 Expert Advisor 离散滤波器的创造和实施,以提高自动交易系统的特性。
图形界面 II: 主菜单元件 (第四章))
图形界面 II: 主菜单元件 (第四章))

图形界面 II: 主菜单元件 (第四章))

这是图形界面系列第二部分的最后一章。在此,我们将探讨主菜单的创建,演示这个控件的开发以及设置库中类的处理函数以正确回应用户的操作。我们还将讨论如何把上下文菜单附加到主菜单项目中。另外,我们还会提到怎样阻止当前没有激活的元件。
在一个 Expert Advisor 内的多个 Expert Advisor 的竞争
在一个 Expert Advisor 内的多个 Expert Advisor 的竞争

在一个 Expert Advisor 内的多个 Expert Advisor 的竞争

使用虚拟交易,你可以创建一个自适应的 Expert Advisor,在真实市场上打开和关闭交易。 将多个策略组合到一个 Expert Advisor 内! 你的多系统 Expert Advisor 会根据虚拟交易的获利能力,自动选择进行真实市场交易的最佳策略。 这种方法可以降低亏损并增加你在市场上操作的获利能力。 进行实验并跟其他人分享你的结果吧! 我想,很多人会对你的策略组合感兴趣。
通过"单元测试"的帮助来提高代码质量
通过"单元测试"的帮助来提高代码质量

通过"单元测试"的帮助来提高代码质量

就算是简单程序也会经常出现看似难以置信的错误。 “我怎么会编出这种东西?”是我们发现这种错误时的第一反应。 “我应该如何避免它?”则是较少会映入脑海的第二个问题。 编写完美无缺的代码是不可能的,特别是在大型项目里,但可通过技术手段及时检测出这些错误。 本文介绍如何借助通用的“单元测试”方法来提高 MQL4 代码质量。
图形界面 II: 设置库的事件处理函数 (第三章)
图形界面 II: 设置库的事件处理函数 (第三章)

图形界面 II: 设置库的事件处理函数 (第三章)

之前的文章中包含了用于创建主菜单构成部分类的实现. 现在, 是时候在主基础类和创建控件的类中关注事件处理函数了. 我们将特别关注根据鼠标光标的位置来管理图表的状态.
通用智能交易系统:交易策略的模式(第一章)
通用智能交易系统:交易策略的模式(第一章)

通用智能交易系统:交易策略的模式(第一章)

任何一个智能交易系统(EA)的开发人员,无论编程技能如何,每天都面临着同样的交易目标和算法问题的困扰,即应该如何建立一个可靠的交易系统。本文介绍CStrategy交易引擎,它可以给出这些任务的解决方案,并且向用户提供一种用于描述自定义交易思想的简便机制。
向指标或者EA中快速添加控制面板
向指标或者EA中快速添加控制面板

向指标或者EA中快速添加控制面板

你是不是觉得需要向你的指标或者EA中添加图形面板来提升配置参数的速度和便捷性?在本文中,你将学会如何一步一步在你的MQL4/MQL5程序中实现输入参数的交互面板。
创建手动交易策略的模糊逻辑
创建手动交易策略的模糊逻辑

创建手动交易策略的模糊逻辑

本文提出使用模糊理论来改善手动交易策略的方法。作为例子,我们给出了如何一步步构建策略和选则参数,然后将模糊逻辑应用与进入市场的标准选择上。这样,在修改策略后,我们获得了能对市场情况做出合理反应的弹性开仓条件。
MetaTrader 5 已具备锁仓账户系统
MetaTrader 5 已具备锁仓账户系统

MetaTrader 5 已具备锁仓账户系统

为了扩大零售外汇交易者的可能性,我们新增第二种账户系统 - 锁仓系统。现在,每个交易品种可以有多位持仓,包括反向持仓。这就为实现基于所谓“锁定”的交易策略铺平了道路 - 如果价格移动方向与交易者相反,那么他们就可以新建一个反向持仓。
跟踪止损和退出市场的模式
跟踪止损和退出市场的模式

跟踪止损和退出市场的模式

订单修改/关闭算法的开发人员面临无止境的痛苦 - 如何比较通过不同方法获得的结果?检查机制众所周知 - 它就是策略测试程序。但如何使 EA 同等地处理建立/关闭订单?本文将介绍一个能够重复建立大量订单的工具,让我们能够维持一个在数学上保持正确的平台,以比较针对跟踪止损和退出市场的不同算法的结果。
通过 DDE 在 MetaTrader 4 与 Matlab 之间进行交互
通过 DDE 在 MetaTrader 4 与 Matlab 之间进行交互

通过 DDE 在 MetaTrader 4 与 Matlab 之间进行交互

分步说明如何使用 DDE 将数据从 Matlab 传输到 MetaTrader 4。
已打开头寸的两步修改
已打开头寸的两步修改

已打开头寸的两步修改

两步法让你在邻近趋势的情况下和可能发生偏离的时候,避免不必要的关闭和重新打开头寸。
谬误,第 2 部分统计学是一门伪科学,亦或是一部记录艰难生计的编年史
谬误,第 2 部分统计学是一门伪科学,亦或是一部记录艰难生计的编年史

谬误,第 2 部分统计学是一门伪科学,亦或是一部记录艰难生计的编年史

无数次将统计方法应用于客观现实(即金融序列)的尝试在流程的非稳定性、伴随概率分布的肥尾效应和金融数据量不足等障碍前撞得头破血流。本文中,我将尝试不去探讨金融序列本身,而是探讨其主观呈现 - 在这种情况下,就是探讨交易者尝试控制序列(即交易系统)的方式。介绍交易结果流程的统计规律是件相当有意思的任务。在某些情况下,我们可以对此流程的模型下一个非常正确的结论,这些结论可以应用于交易系统。