美文网首页大数据 爬虫Python AI Sql玩转大数据大数据部落
卡尔曼滤波器:用R语言中的KFAS建模时间序列

卡尔曼滤波器:用R语言中的KFAS建模时间序列

作者: 拓端tecdat | 来源:发表于2020-04-06 11:18 被阅读0次

原文链接:http://tecdat.cn/?p=6762

时间序列预测,ARIMA等传统模型通常是一种流行的选择。虽然这些模型可以证明具有高度的准确性,但它们有一个主要缺点 - 它们通常不会解释“冲击”或时间序列的突然变化。让我们看看我们如何使用称为卡尔曼滤波器的模型来潜在地缓解这个问题。

时间序列

我们以货币市场为例。货币对可能会有整体上升趋势,然后在抛售期间大幅下跌。传统的时间序列模型不一定能够立即解决这个问题,并且在考虑到趋势的突然变化之前可能需要几个时期。

因此,我们希望使用一个确实能够解释这种冲击的时间序列模型。让我们来看一个称为卡尔曼滤波器的模型。

卡尔曼滤波器是一种状态空间模型,可以更快地调整冲击到时间序列。让我们看一下如何使用一个例子。

2015年1月,当瑞士国家银行决定从瑞士法郎取消瑞士法郎时,货币市场遭受了历史上最大的冲击之一。结果,瑞士法郎飙升,而其他主要货币则暴跌。

让我们看看卡尔曼滤波器如何调整这种冲击。

卡尔曼滤波器:USD / CHF

首先,让我们下载2015年1月的USD / CHF数据。

现在,我们将尝试使用KFAS库使用卡尔曼滤波器对此时间序列进行建模。

当我们绘制时间序列时,我们提出了以下内容:

need-to-insert-img

为了进行比较,我们还将计算10天移动平均值,以比较平滑性能与卡尔曼滤波器的平滑性能。

现在让我们将上面的内容与我们的原始系列结合起来,看看我们提出了什么:

这是生成的数据框:

need-to-insert-img

在某些情况下,高频数据 - 或过滤从噪声信号中提取信息并预测未来状态,是卡尔曼滤波器最合适的用途。另一方面,平滑更依赖于过去的数据,因为在某些情况下,平均最近的测量可能比使用最近的测量更准确。

这在直觉上是有道理的,因为货币在一个月之前的交易价格为0.9658。在这方面,平滑估计器允许比使用滤波估计a更好地预测信号,滤波估计a直到时间段33才调整冲击。

例子:英镑/美元

因此,我们已经看到卡尔曼滤波器如何适应美元/瑞士法郎的突然变动。让我们再举一个货币冲击的例子。当英国在2016年6月投票支持“英国退欧”时,我们看到英镑/美元随后暴跌。

如在USD / CHF的例子中,我们从Quandl下载我们的GBP / USD数据并运行卡尔曼滤波器:

这是我们的数据图。同样,我们看到alpha在t = 22时的震荡前一天向下调整到1.438的水平:

need-to-insert-img

以下是a,att和alpha统计信息:

need-to-insert-img

同样,我们看到10天SMA需要将近10天才能完全调整震荡,再次表明平滑参数α在调整货币水平的巨大变化方面仍然证明是优越的。

结论

调整时间序列冲击的重要性

如何在R中使用KFAS实现卡尔曼滤波器

如何解释卡尔曼滤波器的输出

为什么卡尔曼滤波器是用于建模时间序列冲击的合适模型

相关文章

  • 卡尔曼滤波器:用R语言中的KFAS建模时间序列

    原文链接:http://tecdat.cn/?p=6762 时间序列预测,ARIMA等传统模型通常是一种流行的选择...

  • 文科生也能懂的卡尔曼滤波理论小释

    纪念卡尔曼滤波器发明60周年 零数学基础 最近我想写点关于卡尔曼滤波器的科普材料,一查今年恰好是卡尔曼博士发表他那...

  • 源码阅读:使用Cartographer进行毫米波SLAM(番外篇

    老版本的滤波器用卡尔曼滤波 ,也就是做位姿预估的时候用卡尔曼 新版本改成位姿差值器 有些新特性 common 普...

  • 图文并茂,卡曼滤波

    ​卡尔曼滤波是如何工作? 看图说话! 我务必向大家介绍卡尔曼滤波器(Kalman Filter),因为它之所能, ...

  • 【Intro2SDC】卡尔曼方程参考

    卡尔曼方程参考 卡尔曼滤波器方程 变量定义 - 状态向量 - 状态转移矩阵 - 误差协方差矩阵 - 过程噪声协方差...

  • 卡尔曼滤波器 opencv

    卡尔曼滤波器 opencv http://blog.csdn.net/akunainiannian/article...

  • 深入理解互补滤波器

    低通滤波器:滤掉高频噪声高通滤波器:滤掉低频噪声互补滤波器:滤掉部分高频噪声和部分低频噪声卡尔曼滤波器:动态版本的...

  • 卡尔曼滤波器

    姓名:李嘉蔚学号:16020520034 【嵌牛导读】:本帖讲一讲如何直观的理解卡尔曼滤波器,因为著名的五大公式一...

  • 卡尔曼滤波器

    是一种滤波算法 应用场景:传感器数据融合与状态估计。比如你有一个加速度计,又有陀螺仪或GPS 。假设当前状态值可靠...

  • 卡尔曼滤波器

    简单的insignt 方程中,下标上的k是状态。在这里我们可以将其视为离散的时间间隔,例如k=1表示1ms,k=2...

网友评论

    本文标题:卡尔曼滤波器:用R语言中的KFAS建模时间序列

    本文链接:https://www.haomeiwen.com/subject/qfkmphtx.html