主要内容

光滑的

在马尔可夫切换动态回归数据中平滑操作潜在状态的推理

描述

例子

党卫军=平滑(MdlY返回平滑状态概率党卫军状态转换数据中有效的潜在状态Y.马尔可夫转换动态回归模型Mdl模型数据。光滑的使用过滤器,然后执行Kim的反向递归[5]

例子

党卫军=平滑(MdlY名称,值使用由一个或多个名称-值对参数指定的附加选项。例如,Y0, Y0使用前样例响应数据初始化每个子模型的动态组件Y0

例子

党卫军logL] =平滑(___也返回估计的对数似然logL使用前面语法中的任何输入参数组合。

例子

全部折叠

从一维响应过程的双状态马尔可夫转换动态回归模型计算平滑状态概率。这个示例为数据生成过程(DGP)使用任意参数值。

为DGP创建完全指定的模型

建立了切换机制的双状态离散马尔可夫链模型。

P = [0.9 0.1;0.2 - 0.8);mc = dtmc (P);

mc是完全指定的dtmc对象。

对于每个状态,为响应流程创建一个AR(0)(仅为常数)模型。将模型存储在向量中。

mdl1 = arima (“不变”2,“方差”3);mdl2 = arima (“不变”2,“方差”1);mdl = [mdl1;mdl2];

mdl1mdl2完全指定的华宇电脑对象。

从切换机制中创建一个马尔可夫切换动态回归模型mc和子模型的载体mdl

Mdl = msVAR (mc, Mdl);

Mdl是完全指定的msVAR对象。

从DGP模拟数据

光滑的需要响应来计算平滑状态的概率。从DGP生成一个随机响应和状态路径,长度均为30。

RNG(1000);重复性的%(y, ~, sp) =模拟(Mdl 30);

计算状态概率

根据模拟的响应数据,计算马尔科夫转换模型的滤波和平滑状态概率。

fs =过滤器(Mdl y);党卫军=光滑(Mdl y);

fs党卫军分别是仿真视界中的每个时段的过滤和平滑状态概率的30×2矩阵。虽然过滤状态概率在时间tfs (t:))是基于随时间变化的响应数据ty (1:t),则为时刻的平滑状态概率t党卫军(t):))的基础是所有的观察。

在同一个图上绘制模拟的状态路径和滤波平滑的状态概率。

图绘制(sp,'M')举行情节(fs (:, 2),“r”)情节(ss (:, 2),‘g’) yticks([0 1 2])“时间”)标题(“用估计的状态概率观察状态”) 传奇({“模拟状态”“过滤概率:状态2”“平滑概率:状态2”})举行

图中包含一个坐标轴。标题为“观察状态和估计状态概率”的轴包含3个类型为line的对象。这些对象表示模拟状态,滤波概率:状态2,平滑概率:状态2。

考虑战后美国实际GDP增长率的两状态马尔可夫转换动态回归模型。模型的参数估计在[1]

建立Markov-Switching动态回归模型

建立一个描述状态转换机制的完全指定的离散马尔可夫链模型。标签的政权。

P = [0.92 0.08;0.26 - 0.74);mc = dtmc (P,'attenames',[“扩张”“衰退”]);

为这两个机制创建单独的、完全指定的AR(0)模型。

σ= 3.34;跨州的%同性恋模型mdl1 = arima (“不变”, 4.62,“方差”σ^ 2);mdl2 = arima (“不变”, -0.48,“方差”σ^ 2);MDL = [mdl1 mdl2];

从切换机制中创建马尔科夫切换动态回归模型mc以及特定于状态的子模型mdl

Mdl = msVAR (mc, Mdl);

Mdl是完全指定的msVAR对象。

加载和预处理数据

加载美国GDP数据集。

负载data_gdp.

数据包含1947年第一季度至2005年第二季度美国实际GDP的季度数据。利息的期限[1]1947: - 2004:沿。有关数据集的更多细节,请输入描述在命令行。

通过以下方法将数据转换为年化速率系列:

  1. 将数据转换为估计期内的季度

  2. 按季度计算

qrate = diff(数据(2:230)。/数据(2:229);季度率%Arate = 100*((1 + qrate)。^ 4 - 1);%年度率

变换降低了第一个观察值。

计算平滑状态概率

计算数据和模型的平滑状态概率。显示1972年Q2的平滑状态分布。

SS =平滑(MDL,Anate);SS(结束,:)
ans =1×20.9396 - 0.0604

党卫军是一个228乘2的平滑状态概率矩阵。行对应于数据中的周期arate,柱对应的政体。

绘制经济衰退的平滑概率,如[1],图6所示。

图;情节(日期(3:230),学生(:,2),“r”) datetick (“x”) recessionplot标题(“全样本平滑概率和NBER衰退”

图中包含一个坐标轴。标题为“全样本平滑概率”和“NBER衰退”的轴包含12个类型为line、patch的对象。

从二维VARX响应过程的三状态markov转换动态回归模型计算平滑状态概率。这个例子使用了任意的DGP参数值。

为DGP创建完全指定的模型

为切换机制创建三态离散时间马尔可夫链模型。

P = [5 1 1;1 5 1;1 1 5];mc = dtmc (P);

mc是完全指定的dtmc对象。dtmc规格化的行P所以它们的和是1

对于每个状态,为响应过程创建一个完全指定的VARX(0)模型(只有常数和回归系数矩阵)。在模型中指定不同的常数向量。为两个回归器指定相同的回归系数,指定相同的协方差矩阵。将VARX模型存储在一个向量中。

%的常量C1 = (1, 1);C2 = [3; 3);C3 = (5; 5);%回归系数Beta = [0.2 0.1;0 -0.3];%的协方差矩阵σ = [1.8 -0.4;-0.4 - 1.8);%varx子模型mdl1 = varm (“不变”C1,“β”,β,协方差的σ);mdl2 = Varm(“不变”C2,“β”,β,协方差的σ);mdl3 = varm (“不变”C3,“β”,β,协方差的σ);mdl = [mdl1;mdl2;mdl3];

mdl包含三个完全指定的varm模型对象。

对于DGP,从切换机制中创建一个完全指定的马尔可夫切换动态回归模型mc和亚模型mdl

Mdl = msVAR (mc, Mdl);

Mdl是完全指定的msVAR模型。

从DGP模拟数据

通过从标准的二维高斯分布生成30个观测值来模拟两个外生序列的数据。

rng (1)重复性的%x = randn(30,2);

从DGP生成一个随机响应和状态路径,长度均为30。为子模型回归组件指定模拟的外生数据。

(Y, ~, SP) =模拟(Mdl 30“X”,X);

Y是一个30 × 2矩阵的模拟响应路径。SP是一个模拟状态路径的30乘1向量。

计算状态概率

在给定模拟响应数据的情况下,从DGP计算平滑状态概率。

党卫军=平滑(Mdl Y“X”,X);

党卫军是模拟视界中每个周期的平滑状态概率的30 × 2矩阵。

在同一图的子图上绘制模拟状态路径和平滑状态概率。

图次要情节(2,1,1)情节(SP,'M') yticks([1 2 3]) legend({“模拟状态”})次要情节(2,1,2)情节(党卫军,“- - -”) 传奇({“平滑s1 ''平滑s2 '“平滑s3”})

图中包含2个轴。Axes 1包含一个类型为line的对象。该对象表示模拟状态。axis 2包含3个类型为line的对象。这些对象代表Smoothed s1, Smoothed s2, Smoothed s3。

考虑计算衰退的平滑概率,但假设利息时期是1960年:Q1-2004年:Q2。另外,考虑在每个子模型中添加一个自回归术语。

为评估创建部分指定的模型

创建部分指定的马尔可夫转换动态回归模型进行估计。指定AR(1)的子。

P =南(2);mc = dtmc (P,'attenames',[“扩张”“衰退”]);mdl = arima (1,0,0);Mdl = msVAR (mc, [Mdl;mdl));

由于子模型是AR(1),每个子模型都需要一个预样本观测来初始化其动态分量进行估计。

创建包含初始值的完全指定的模型

创建包含估计过程的初始参数值的模型。

mc0 = dtmc (0.5 * 1 (2),'attenames',[“扩张”“衰退”]);submdl01 = arima (“不变”,1,“方差”,1,基于“增大化现实”技术的, 0.001);submdl02 = arima (“不变”, 1“方差”,1,基于“增大化现实”技术的, 0.001);Mdl0 = msVAR (mc0 [submdl01;submdl02]);

加载和预处理数据

加载数据。将整个集合转换为年化速率系列。

负载data_gdp.qrate = diff(数据)。/数据(1:结束(- 1));Arate = 100*((1 + qrate)。^ 4 - 1);

使用与年化率系列相关的日期确定前样本和估计样本时期。由于转换应用第一个差异,您必须从原始样本中删除第一个观察日期。

日期= datetime(日期(2:结束),“ConvertFrom”“datenum”“格式”“yyyy QQQ”“场所”“en_US”);estPrd = datetime ([“1960:第二季”“2004:第二季”],“InputFormat”“yyyy QQQ”“格式”“yyyy QQQ”“场所”“en_US”);idx = isbetween(日期、estPrd (1) estPrd (2));idxPre = date < estPrd(1);

估计模型

将模型与估计样本数据拟合。指定样品前观察。

arate0 = arate (idxPre);arateEst = arate (idx);EstMdl =估计(Mdl Mdl0 arateEst,“Y0”, arate0);

EstMdl是完全指定的msVAR对象。

计算平滑状态概率

根据估计的模型和估计期间的数据计算平滑状态概率。指定样品前观察。绘制衰退的估计概率。

党卫军=平滑(EstMdl arateEst,“Y0”, arate0);图;情节(日期(idx),学生(:,2),“r”)标题(“全样本平滑概率和NBER衰退”) recessionplot

图中包含一个坐标轴。标题为“全样本平滑概率”和“NBER衰退”的轴包含8个类型为line、patch的对象。

考虑模型和数据计算衰退的平滑概率

创建完全指定的Markov切换模型。

P = [0.92 0.08;0.26 - 0.74);mc = dtmc (P,'attenames',[“扩张”“衰退”]);σ= 3.34;mdl1 = arima (“不变”, 4.62,“方差”σ^ 2);mdl2 = arima (“不变”, -0.48,“方差”σ^ 2);mdl = [mdl1;mdl2];Mdl = msVAR (mc, Mdl);

加载并预处理数据。

负载data_gdp.qrate = diff(数据(2:230)。/数据(2:229);Arate = 100*((1 + qrate)。^ 4 - 1);

为数据和模型计算平滑状态概率和对数似然。

[SS, logL] =光滑(Mdl arate);logL
logL = -640.3016

输入参数

全部折叠

完全指定的马尔可夫转换动态回归模型,指定为msVAR返回的模型对象msVAR估计.完全指定模型对象的属性不包含值。

观察到的响应数据,指定为numObs——- - - - - -numSeries数字矩阵。

numObs为样本量。numSeries为响应变量的个数(Mdl。NumSeries).

行对应于观察值,最后一行包含最新的观察值。列对应于各个响应变量。

Y中样本前响应序列的延续Y0

数据类型:

名称-值对的观点

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数name1,value1,...,namen,valuen

例子:Y0, Y0, X, X中的每个子模型的动态组件初始化Mdl通过使用前样本响应数据Y0,并且包括由预测器数据组成的每个子模型中的线性回归分量X和指定的回归系数。

预采样响应数据,指定为逗号分隔对,由“Y0”和一个numPreSampleObs——- - - - - -numSeries数字矩阵。

前样本观察的数量numPreSampleObs必须足以初始化所有子模型的AR项。如果numPreSampleObs超过任何州的应收账款订单,光滑的使用最新的观察结果。默认情况下,Y0初始段是Y,从而减少了有效样本量。

数据类型:

初始状态概率,指定为逗号分隔对,由“S0”和一个长度为非负的数值向量numStates

光滑的规范化S0制作发行版。

默认情况下,S0稳态分布是由渐近

例子:“S0”,0.2 0.2 0.6

例子:“S0”,[0 1]将状态2指定为初始状态。

数据类型:

的所有子模型中用于评估回归成分的预测数据Mdl,指定为逗号分隔的对,由“X”以及一个数值矩阵或数值矩阵的单元向量。

要在每个状态中使用相同预测器的子集,请指定X作为一个矩阵numPreds列,至少numObs行。列对应于不同的预测器变量。子模型使用关联矩阵的初始列,按顺序,直到子模型预测器的数量。列中的列数β的属性Mdl。子(j确定子模型回归组件中外生变量的数量j.如果行数超过numObs,然后光滑的使用最新的观察结果。

要在每个状态中使用不同的预测器,请指定这种矩阵的带长度的细胞向量numStates

默认情况下,光滑的中忽略回归分量Mdl

数据类型:

输出参数

全部折叠

平滑状态概率,返回为anumObs——- - - - - -numStates非负数字矩阵。

响应数据的估计对数似然Y,作为数字标量返回。

算法

光滑的改进了目前对状态分布的估计过滤器通过从完整的样本历史向后迭代生成Y

参考

[1]肖维特,M, J. D.汉密尔顿。“确定商业周期转折点。”在商业周期的非线性分析(《经济分析贡献》第276卷).(C. Milas, P. Rothman, D. van Dijk编)。阿姆斯特丹:翡翠集团出版有限公司,2006。

[2]汉密尔顿,j . D。非平稳时间序列和商业周期的经济分析新方法费雪.1989年第57卷,第357-384页。

[3]汉密尔顿,j . D。《受政体变化影响的时间序列分析》计量经济学杂志.1990年第45卷,39-70页。

[4]汉密尔顿,詹姆斯D。时间序列分析.普林斯顿,新泽:普林斯顿大学出版社,1994年。

[5]金,C.-J。“具有马尔可夫转换的动态线性模型”。计量经济学杂志.第60卷,1994,第1-22页。

另请参阅

对象

功能

介绍了R2019b