文章 "在MetaTrader 5中集成隐马尔可夫模型"

 

新文章 在MetaTrader 5中集成隐马尔可夫模型已发布:

在本文中,我们将展示如何将使用Python训练的隐马尔可夫模型(Hidden Markov Models, HMMs)集成到MetaTrader 5应用程序中。HMM是一种强大的统计工具,用于对时间序列数据进行建模,其中被建模的系统以不可观察(隐藏)的状态为特征。HMM的一个基本前提是,在特定时间处于给定状态的概率取决于该过程在前一个时间点的状态。

HMM是一种强大的统计工具,用于对时间序列数据进行建模,其中被建模的系统以不可观察(隐藏)的状态为特征。HMM的一个基本前提是,在特定时间处于给定状态的概率取决于该过程在前一个时间点的状态。这种依赖性代表了HMM的记忆。

在金融时间序列的背景下,这些状态可能代表一个序列是处于上升趋势、下降趋势,还是在特定范围内振荡。任何使用过金融指标的人都熟悉金融时间序列中固有噪声所引起的反复无常效应(即“锯齿效应”或“振荡效应”)。HMM可以用来过滤掉这些虚假信号,从而更清晰地了解潜在的趋势。

为了构建HMM,我们需要能够捕捉定义该过程全部行为的观测值。这组数据被用来学习匹配HMM的参数。这个数据集将由建模过程的各种特征组成。例如,如果我们研究的是金融资产的收盘价,我们还可以包括与收盘价相关的其他方面,如各种理论上有助于定义我们感兴趣的隐藏状态的指标。 

学习模型参数的过程是在假设被建模的序列将始终处于两个或更多状态之一的条件下进行的。这些状态简单地被标记为0到S-1(S为状态总数)。对于这些状态,我们必须分配一组概率,这些概率能够捕捉过程从一个状态切换到另一个状态的可能性。这些概率通常被称为转移矩阵。对第一个观测值有特殊的设定,有关它处于每个可能状态的初始概率。如果观测值处于特定状态,则期望它遵循与该状态相关的特定分布。

HMM完全由以下四个属性定义:

  • 假设的状态数量
  • 第一个观测值处于任何一个状态的初始概率
  • 概率转移矩阵
  • 每个状态的概率密度函数

    作者:Francis Dube