有关MQL5数据分析和统计的文章

icon

许多交易者感兴趣的数学模型和概率规律的文章。数学是技术指标的基础,而且需要 统计,以便分析交易结果并开发策略。

阅读有关模糊逻辑,数字滤波器,市场概况,Kohonen 地图,神经网络和许多其它可用于交易的工具。

添加一个新的文章
最近 | 最佳
preview
神经网络变得轻松(第二部分):网络训练和测试

神经网络变得轻松(第二部分):网络训练和测试

在第二篇文章中,我们将继续研究神经网络,并研究在智能交易系统当中调用我们所创建 CNet 类的示例。 我们将操控两个神经网络模型,它们在训练时间和预测准确性方面都表现出相似的结果。
什么是趋势,行情结构是基于趋势还是横盘?
什么是趋势,行情结构是基于趋势还是横盘?

什么是趋势,行情结构是基于趋势还是横盘?

交易者经常谈论趋势和横盘,但很少有人真正了解趋势/横盘是什么,甚至很少能够清楚地解释这些概念。 讨论这些基本术语通常会受到一系列顽固偏见和误解的困扰。 然而,如果我们想赚钱,就需要了解这些概念的数学和逻辑含义。 在本文中,我将仔细研究趋势和横盘的本质,并尝试定义行情结构是基于趋势/横盘,亦或其他。 我还将研究在趋势和横盘行情上获利的最佳策略。
价格序列离散化,随机分量和噪音
价格序列离散化,随机分量和噪音

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

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

检测超买/超卖区域的方法。 第一部分

超买/超卖区域是某种市场状态的特征,可由证券价格的疲软变化来区分。 这种负面变化会明显发生在任何尺度趋势发展的最后阶段。 由于交易中的利润价值直接取决于尽可能覆盖更广趋势幅度的能力,因此在任何证券交易中,探测此类区域的准确性是一项关键任务。
DoEasy 函数库中的时间序列(第四十七部分):多周期、多品种标准指标
DoEasy 函数库中的时间序列(第四十七部分):多周期、多品种标准指标

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

在本文中,我着手开发操控标准指标的方法,最终能够基于函数库类创建多品种、多周期的标准指标。 此外,我将在时间序列类中添加“跳过柱线”事件,并将函数库的预备函数移至 CEngine 类,从而消减主程序代码中的过多负载。
概率论与数理统计示例(第一部分):基础与初级理论
概率论与数理统计示例(第一部分):基础与初级理论

概率论与数理统计示例(第一部分):基础与初级理论

交易总是需要在面对不确定性时做出决定。 这意味着在做出这些决策时,其结局并不十分明朗。 如此看出建立数学模型的理论方法的重要性,它能够令我们以有意义的方式描述这种情况。
DoEasy 函数库中的时间序列(第四十六部分):多周期、多品种指标缓冲区
DoEasy 函数库中的时间序列(第四十六部分):多周期、多品种指标缓冲区

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

在本文中,我将继续改进指标缓冲区对象类,从而可在多品种模式下操作。 这为自定义程序中创建多品种、多周期指标提供了途径。 我会在计算缓冲区对象里添加缺失的功能,从而令我们可创建多品种、多周期的标准指标。
DoEasy 函数库中的时间序列(第四十五部分):多周期指标缓冲区
DoEasy 函数库中的时间序列(第四十五部分):多周期指标缓冲区

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

在本文中,我将着手改进指标缓冲区对象和集合类,从而可在多周期和多品种模式下操作。 我打算在当前品种图表上的任何时间帧内接收和显示数据缓冲区对象的操作。
preview
神经网络在交易中的实际应用。 是时候进行实践了

神经网络在交易中的实际应用。 是时候进行实践了

本文提供了在 Matlab 平台上实际运用神经网络模块的讲述和指南。 它还涵盖了运用神经网络模块创建交易系统的主要方面。 为了能够在一篇文章中厘清复杂内容,我必须对其进行修改,从而在一个程序中组合若干个神经网络模块函数。
DoEasy 函数库中的时间序列(第四十四部分):指标缓冲区对象类集合
DoEasy 函数库中的时间序列(第四十四部分):指标缓冲区对象类集合

DoEasy 函数库中的时间序列(第四十四部分):指标缓冲区对象类集合

本文介绍如何创建指标缓冲区对象类的集合。 我计划测试为指标创建和操控任意数量缓冲区的能力(在 MQL 指标中可以创建的最大缓冲区数量为 512)。
DoEasy 函数库中的时间序列(第四十三部分):指标缓冲区对象类
DoEasy 函数库中的时间序列(第四十三部分):指标缓冲区对象类

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

本文研究开发指标缓冲区对象类,其为抽象缓冲区对象的衍生类,从而可简化声明,并可操控指标缓冲区,同时创建基于 DoEasy 库的自定义指标程序。
DoEasy 函数库中的时间序列(第四十二部分):抽象指标缓冲区对象类
DoEasy 函数库中的时间序列(第四十二部分):抽象指标缓冲区对象类

DoEasy 函数库中的时间序列(第四十二部分):抽象指标缓冲区对象类

在本文中,我们开始为 DoEasy 库开发指标缓冲区类。 我们将创建抽象缓冲区的基类,该基类将作为开发不同类型指标缓冲区的基础。
DoEasy 函数库中的时间序列(第四十一部分):多品种多周期指标样品
DoEasy 函数库中的时间序列(第四十一部分):多品种多周期指标样品

DoEasy 函数库中的时间序列(第四十一部分):多品种多周期指标样品

在本文中,我们将研究一个运用 DoEasy 库时间序列类的多品种多周期指标样品,该类在子窗口中以蜡烛的形式显示选定时间帧内选定货币对的图表。 我稍微修改了库类,并创建了一个单独的文件来存储程序输入的枚举,并选择一种编译语言。
DoEasy 函数库中的时间序列(第四十部分):基于函数库的指标 - 实时刷新数据
DoEasy 函数库中的时间序列(第四十部分):基于函数库的指标 - 实时刷新数据

DoEasy 函数库中的时间序列(第四十部分):基于函数库的指标 - 实时刷新数据

本文研究开发基于 DoEasy 库的简单多周期指标。 我们来改进时间序列类,从而能接收来自任何时间帧的数据,并在当前图表周期内显示。
DoEasy 函数库中的时间序列(第三十九部分):基于函数库的指标 - 准备数据和时间序列事件
DoEasy 函数库中的时间序列(第三十九部分):基于函数库的指标 - 准备数据和时间序列事件

DoEasy 函数库中的时间序列(第三十九部分):基于函数库的指标 - 准备数据和时间序列事件

本文讨论如何应用 DoEasy 库来创建多品种、多周期指标。 我们准备在指标中操控函数库类,并创建时间序列作为指标的数据源进行测试。 我们还将实现时间序列事件的创建和发送。
DoEasy 函数库中的时间序列(第三十八部分):时间序列集合 - 实时更新以及从程序访问数据
DoEasy 函数库中的时间序列(第三十八部分):时间序列集合 - 实时更新以及从程序访问数据

DoEasy 函数库中的时间序列(第三十八部分):时间序列集合 - 实时更新以及从程序访问数据

本文研究实时更新时间序列数据,并从所有品种的所有时间序列里发送有关“新柱线”事件的消息至控制程序图表,从而能够在自定义程序中处理这些事件。 “新即时报价”类用于判断是否需要更新非当前图表品种和周期的时间序列。
在交易中应用 OLAP(第四部分):定量和可视化分析测试器报告
在交易中应用 OLAP(第四部分):定量和可视化分析测试器报告

在交易中应用 OLAP(第四部分):定量和可视化分析测试器报告

本文提供的的基本工具,可针对测试器报告的单次通关验证和优化结果进行 OLAP 分析。 该工具可以操控标准格式文件(tst 和 opt),并还提供了图形界面。 MQL 源代码附带于后。
DoEasy 函数库中的时间序列(第三十七部分):时间序列集合 - 按品种和周期的时间序列数据库
DoEasy 函数库中的时间序列(第三十七部分):时间序列集合 - 按品种和周期的时间序列数据库

DoEasy 函数库中的时间序列(第三十七部分):时间序列集合 - 按品种和周期的时间序列数据库

本文探讨开发针对程序中所有品种指定时间帧的时间序列集合。 我们将开发时间序列集合,为集合设置时间序列参数的方法,以及取用历史数据初始填充已开发的时间序列。
预测时间序列(第 2 部分):最小二乘支持向量机(LS-SVM)
预测时间序列(第 2 部分):最小二乘支持向量机(LS-SVM)

预测时间序列(第 2 部分):最小二乘支持向量机(LS-SVM)

本文交流的是基于支持向量法,预测时间序列算法的理论和实际应用。 它还提议采用 MQL 来实现,并提供了测试指标和智能交易系统。 该技术尚未在 MQL 中实现。 但是首先,我们必须了解相关的数学知识。
DoEasy 函数库中的时间序列(第三十五部分):柱线对象和品种时间序列列表
DoEasy 函数库中的时间序列(第三十五部分):柱线对象和品种时间序列列表

DoEasy 函数库中的时间序列(第三十五部分):柱线对象和品种时间序列列表

本文开始 DoEasy 函数库的新系列,与创建相关,从而简化和快速进行程序开发。 在当前文章中,我们将为函数库实现访问和操控品种时间序列数据的功能。 我们计划创建柱线(Bar)对象,来存储时间序列的主要和扩展的柱线数据,并将柱线对象置于时间序列列表之中,从而便于对象的搜索和排序。
DoEasy 函数库中的时间序列(第三十六部分):所有用到的品种周期的时间序列对象
DoEasy 函数库中的时间序列(第三十六部分):所有用到的品种周期的时间序列对象

DoEasy 函数库中的时间序列(第三十六部分):所有用到的品种周期的时间序列对象

在本文中我们将探讨,把每个用到的品种周期的柱形对象列表合并到单一品种时间序列对象之中。 因此,每个品种均含一个对象,存储所有已用到品种时间序列周期的列表。
预测时间序列(第 1 部分):经验分解模式(EMD)方法
预测时间序列(第 1 部分):经验分解模式(EMD)方法

预测时间序列(第 1 部分):经验分解模式(EMD)方法

本文探讨运用经验分解模式(EMD)预测时间序列的理论和实际应用。 它提议以 MQL 实现此方法,并出示了测试指标和智能交易系统。
轻松快捷开发 MetaTrader 程序的函数库(第 三十四部分):延后交易请求 - 在特定条件下删除和修改订单与持仓
轻松快捷开发 MetaTrader 程序的函数库(第 三十四部分):延后交易请求 - 在特定条件下删除和修改订单与持仓

轻松快捷开发 MetaTrader 程序的函数库(第 三十四部分):延后交易请求 - 在特定条件下删除和修改订单与持仓

在本文中,我们将完成延后请求交易概念的论述,并创建删除挂单,以及在特定条件下修改挂单和持仓的功能。 由此,我们将拥有完整的功能,令我们能够开发简单的自定义策略,或者根据用户定义的条件激活 EA 行为逻辑。
preview
如何在 MetaTrader 5 中利用 DirectX 创建 3D 图形

如何在 MetaTrader 5 中利用 DirectX 创建 3D 图形

3D 图形为大数据分析提供了完美的方案,它可以直观透视隐藏的形态。 这些任务能以 MQL5 直接解决,而 DireсtX 函数允许创建三维物体。 故其能够为 MetaTrader 5 创建任意复杂度的程序,甚至 3D 游戏。 学习 3D 图形,从绘制简单的三维形状开始。
轻松快捷开发 MetaTrader 程序的函数库(第 三十三部分):延后交易请求 - 在特定条件下平仓
轻松快捷开发 MetaTrader 程序的函数库(第 三十三部分):延后交易请求 - 在特定条件下平仓

轻松快捷开发 MetaTrader 程序的函数库(第 三十三部分):延后交易请求 - 在特定条件下平仓

我们继续开发利用延后请求进行交易的函数库功能。 我们已实现了发送开仓和下挂单的条件交易请求。 在本文中,我们将实现条件平仓 – 全部、部分和由逆向仓位平仓。
在交易中应用 OLAP(第 3 部分):为开发交易策略而分析报价
在交易中应用 OLAP(第 3 部分):为开发交易策略而分析报价

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

在本文中,我们将继续研讨在交易中运用 OLAP 技术。 我们会扩展前两篇文章中表述的功能。 这次我们将研究报价的操盘分析。 我们还将基于所汇集的历史数据,推导并检验交易策略的设想。 本文推介了基于柱线形态研究和自适应交易的智能交易系统。
轻松快捷开发 MetaTrader 程序的函数库 (第 三十二部分) :延后交易请求 - 在特定条件下挂单
轻松快捷开发 MetaTrader 程序的函数库 (第 三十二部分) :延后交易请求 - 在特定条件下挂单

轻松快捷开发 MetaTrader 程序的函数库 (第 三十二部分) :延后交易请求 - 在特定条件下挂单

我们继续功能开发,允许用户利用延后请求进行交易。 在本文中,我们将实现在特定条件下挂单的功能。
轻松快捷开发 MetaTrader 程序的函数库 (第 三十一部分) :延后交易请求 - 在特定条件下开仓
轻松快捷开发 MetaTrader 程序的函数库 (第 三十一部分) :延后交易请求 - 在特定条件下开仓

轻松快捷开发 MetaTrader 程序的函数库 (第 三十一部分) :延后交易请求 - 在特定条件下开仓

从本文开始,我们将开发一种功能,允许用户在特定条件下利用延后请求进行交易,举例来说,当达到特定时间限制、超出指定利润或由止损平仓时。
监视多币种的交易信号(第一部分):开发应用程序结构
监视多币种的交易信号(第一部分):开发应用程序结构

监视多币种的交易信号(第一部分):开发应用程序结构

在本文中,我们将讨论创建多币种交易信号监视器的思路,并开发一个未来的应用程序结构,以及沿用其原型创建深入操作的框架。 本文表述了一种灵活的多币种应用程序的分步创建过程,该应用程序将能够生成交易信号,并有助交易者发现所需的信号。
preview
连续前行优化 (第三部分): 将机器人适配为自动优化器

连续前行优化 (第三部分): 将机器人适配为自动优化器

第三部分充当前两部分之间的桥梁:它阐述的是第一篇文章中研究的 DLL,以及第二篇文章中论述的报告下载对象之间的交互机制。 我们将分析从 DLL 导入的包装类的创建过程,该类可依据交易历史记录形成 XML 文件。 我们还将研究一种与此包装器进行交互的方法。
轻松快捷开发 MetaTrader 程序的函数库 (第 三十部分) :延后交易请求 - 管理请求对象
轻松快捷开发 MetaTrader 程序的函数库 (第 三十部分) :延后交易请求 - 管理请求对象

轻松快捷开发 MetaTrader 程序的函数库 (第 三十部分) :延后交易请求 - 管理请求对象

在上一篇文章中,我们遵照函数库对象的一般概念创建了相对应的延后请求对象类。 本次,我们将着手允许管理延后请求对象的类。
preview
神经网络轻松制作

神经网络轻松制作

人工智能往往伴随着极其复杂和难以理解的事物。 同时,人工智能在日常生活中也越来越多地被提及。 不同的媒体也经常发布有关运用神经网络成就的新闻。 本文的目在于展示任何人都可以轻松创建神经网络,并在交易中运用 AI 成就。
轻松快捷开发 MetaTrader 程序的函数库 (第 二十九部分) :延后交易请求 - 请求对象类
轻松快捷开发 MetaTrader 程序的函数库 (第 二十九部分) :延后交易请求 - 请求对象类

轻松快捷开发 MetaTrader 程序的函数库 (第 二十九部分) :延后交易请求 - 请求对象类

在之前的文章里,我们检验了延后交易请求的概念。 实际上,延后请求是由特定条件执行的正常交易订单。 在本文中,我们会创建完整的延后请求对象类 — 基准请求对象及其后代。
轻松快捷开发 MetaTrader 程序的函数库 (第 二十八部分) :延后交易请求之平仓、删除和修改
轻松快捷开发 MetaTrader 程序的函数库 (第 二十八部分) :延后交易请求之平仓、删除和修改

轻松快捷开发 MetaTrader 程序的函数库 (第 二十八部分) :延后交易请求之平仓、删除和修改

这是有关延后请求概念的第三篇文章。 我们将创建平仓、删除挂单、修改持仓和挂单参数等方法来完成延后交易请求的测试。
轻松快捷开发 MetaTrader 程序的函数库 (第 二十七部分) :操控交易请求 - 下挂单
轻松快捷开发 MetaTrader 程序的函数库 (第 二十七部分) :操控交易请求 - 下挂单

轻松快捷开发 MetaTrader 程序的函数库 (第 二十七部分) :操控交易请求 - 下挂单

在本文中,我们将继续开发交易请求,实现下挂单,并剔除检测到的交易类操作缺陷。
preview
继续漫步优化(第二部分):为任意机器人创建优化报告的机制

继续漫步优化(第二部分):为任意机器人创建优化报告的机制

在漫步优化系列中的第一篇文章里介绍了如何在我们的自动优化器中运用 DLL。 此续文完全致力于 MQL5 语言。
preview
SQLite: MQL5 原生 SQL 数据库操纵

SQLite: MQL5 原生 SQL 数据库操纵

交易策略的研发与大数据处理相关联。 现在,您能够基于 SQLite 在 MQL5 中直接运用 SQL 查询来操纵数据库。 该引擎的重要特性在于整个数据库都被安置在用户 PC 上的单个文件中。
轻松快捷开发 MetaTrader 程序的函数库 (第二十六部分):处理延后交易请求 - 首次实现 (开仓)
轻松快捷开发 MetaTrader 程序的函数库 (第二十六部分):处理延后交易请求 - 首次实现 (开仓)

轻松快捷开发 MetaTrader 程序的函数库 (第二十六部分):处理延后交易请求 - 首次实现 (开仓)

在本文中,我们将在订单和仓位的魔幻数字中存储一些数据,并开始实现延后请求。 为了验证这一概念,我们在收到服务器错误并需要等待与重复发送请求时,创建第一个测试延后请求来开仓。
利用箱形图(Boxplot)探索金融时间序列的季节性形态
利用箱形图(Boxplot)探索金融时间序列的季节性形态

利用箱形图(Boxplot)探索金融时间序列的季节性形态

在本文中,我们将利用箱形图(Boxplot)观察金融时间序列的季节性特征。 每个单独的箱形图(或箱须图)都能直观地展现数值如何沿数据集的分布。 不要把箱形图与烛条图混淆,尽管它们在外观上可能相似。
轻松快捷开发 MetaTrader 程序的函数库(第 二十五部分):处理交易服务器返回的错误
轻松快捷开发 MetaTrader 程序的函数库(第 二十五部分):处理交易服务器返回的错误

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

交易订单发送到服务器之后,我们需要检查错误代码,或未出现错误。 在本文中,我们将研究处理交易服务器返回的错误,并着手创建延后交易请求。