HP滤波

HP滤波（或）是宏观经济学中用到的时间序列分析方法，尤其在中较为常用。HP滤波可以从原始数据中分离出周期性的部分，并得到一条平滑的曲线来表述整个时间序列，即把对短期波动更敏感的数据转成了对长期波动更敏感的表示方式，改变乘数可以调整其敏感程度。20世纪90年代，两位经济学家和诺贝尔奖得主爱德华·普雷斯科特发表了这种方法并受到学界欢迎。不过实际上早在1923年就首次发表了该方法。

数学表述 
这个方法的思想类似于。令表示一组时间序列变量的对数，则由一系列趋势项、周期项和误差项组成，即。给定合适的正数，存在一个趋势项满足
 。

上式第一项表示变量偏离趋势项的误差的平方和，从而控制了周期项的大小；第二项用乘子乘上趋势项二阶差分的平方和，从而控制了趋势项变化的剧烈程度。越大，后者的控制就越强。霍德里克和普雷斯科特建议季度数据取为1600，若单位不是季度则正比于每单位所含季度数的平方，即年度数据取100、月度数据取14,400。雷文（Ravn）和乌利希（Uhlig）则在2002年发表的文章中提出应该正比于数据每单位所含季度数的四次方，即年度数据应取6.25、月度数据取129,600。

麦克尔罗伊的一篇论文中给出了双侧HP滤波谱分解的精确数学表达式。

评价 
HP滤波很容易实现，不过它也存在一定缺陷，只在以下严苛条件下才能做出最优估计：
 时间序列是的，否则HP滤波会得到偏离实际情况的趋势项。
 如果发生了单次的永久性冲击（permanent shock）或存在稳定的趋势增长率，HP滤波得到的周期项也会扭曲。
 样本中的周期项是白噪音，或者趋势项和周期项中的随机变化机制相同。

标准的双侧HP滤波不应该用来估计基于递归状态空间表达的DSGE模型，这是因为HP滤波使用未来的观测去构造当前时间点的结果，但递归状态空间要求当前的观测仅基于当前和过去的状态。要解决这个问题，可以使用单侧HP滤波。

参见 
 带通滤波器
 卡尔曼滤波

参考文献

拓展阅读

外部链接  
普雷斯科特给出的Fortran代码
Matlab实现
单侧HP滤波的Matlab实现
R语言实现的HP滤波，包名mFilter
在线进行HP滤波

时间序列