varm

创建向量自回归(VAR)模型

描述

varm函数返回一个varm对象指定功能形式并存储的参数值p秩序,静止不动的,多元的向量自回归模型(VAR (p))模型。

一个关键组成部分varm对象包括的时间序列数(反应变量维数)和多变量回归多项式的阶数(p),因为他们完全指定模型结构。其他模型组件包括一个回归成分相同的外生预测变量关联到每个响应系列,并不断和时间趋势项。鉴于响应可变维数和p,所有系数矩阵和创新分布参数都是未知和可估计的,除非您指定它们的值。

为了估计含有未知参数值模型,通过该模型和数据,以估计。与估计的或完全指定的一起工作varm模型对象,将其传递给目标函数

创建

描述

例子

MDL= varm创建的一个响应系列构成的VAR(0)模型。

例子

MDL= varm(numseries,numlags)创建一个VAR(numlags)模型组成的numseries响应系列。最大非零滞后numlags。所有具有滞后numseries-通过-numseries系数矩阵组成值。

这种简写语法允许轻松地创建模型模板。模型模板适用于无约束的参数估计,即无参数相等约束的估计。创建模型之后,可以使用点符号更改属性值。

例子

MDL= varm(名称,值)性能或使用名称 - 值对的参数的附加选项。在引号每个名字。例如,'时滞',[1〜4], 'AR',AR指定两个自回归系数矩阵基于“增大化现实”技术在滞后14

这速记语法允许创建更灵活的模式。varm推断系列号(NumSeries)和自回归多项式次数(P)从您设置的属性。因此,属性值对应于串联或自回归多项式程度的数量必须彼此一致。

输入参数

展开全部

语法速记为您打造适合于无限制的参数估计模型模板的简便方法。例如,为了创建一个VAR(2)三种响应系列组成模型,输入:

MDL = varm(3,2);

时间序列号,指定为一个正整数。numseries指定多元响应变量的维数yt创新εt

numseries设置NumSeries财产。

数据类型:

滞后反应的数量,包括在模型中,指定为一个非负整数。将得到的模型是一个VAR(numlags)模型。所有具有滞后numseries-通过-numseries系数矩阵组成值。

数据类型:

名称 - 值对参数

指定可选的逗号分隔的对名称,值参数。名称参数名和是对应的值。名称必须出现引号内。您可以按照任何顺序指定多个名称和值对参数名1,值1,...,NameN,值N

该手写语法允许您创建,其中一些或所有的系数被称为模型。在估计,估计强加任何已知的参数等式约束。

例:8“滞后”,[4]指定一个VAR(8)模型,该模型在滞后时具有非零的自回归系数矩阵48

要设置可写值性能, 采用名称,值对参数语法。例如,“常数”,[1;2],基于“增大化现实”技术,{[0.1 - -0.2;-0.3 - 0.5]}不变[1;2]基于“增大化现实”技术{[0.1 -0.2;-0.3 - 0.5]}

自回归多项式滞后,指定为逗号分隔对组成“时滞”和含有至多一个数值向量P独特的正整数元素。

的长度滞后基于“增大化现实”技术必须是相等的。滞后(j)滞后是否与系数矩阵相对应AR {j}

例:'时滞',[1 4]

数据类型:

属性

展开全部

您可以在使用名称-值对参数语法创建模型对象时设置可写属性值,或者在使用点符号创建模型对象后设置可写属性值。例如,要创建一个由两个响应序列组成的VAR(1)模型,然后指定一个未知的时间趋势项,输入:

MDL = varm( 'AR',{的NaN(2)});Mdl.Trend = NaN的;

此属性是只读的。

时间序列号,指定为一个正整数。NumSeries指定多元响应变量的维数yt创新εt

数据类型:

此属性是只读的。

多元自回归多项式阶,指定为一个非负整数。P是具有非零系数矩阵的最大滞后。落后于小于P可以具有完全的零组成的系数矩阵。

P指定初始化模型所需的预采样观察数。

数据类型:

模型截距(或常量),指定为NumSeries1数字向量。

例:“常数”,[1;2]

数据类型:

与滞后响应相关的自回归系数矩阵,指定为的细胞向量NumSeries-通过-NumSeries数字矩阵。

指定对应于在那些系数系数符号VAR模型在差分方程符号表示。

  • 如果设置了滞后名称 - 值对参数滞后,那么以下条件适用。

    • 的长度基于“增大化现实”技术滞后是相等的。

    • AR {j}是滞后系数矩阵吗滞后(j)

    • 默认,基于“增大化现实”技术numel(延迟)×1组成的基质的细胞载体值。

  • 否则,应用以下条件。

    • 的长度基于“增大化现实”技术P

    • AR {j}是滞后系数矩阵吗j

    • 默认,基于“增大化现实”技术P×1组成的基质的细胞载体值。

例:'AR',{[0.5 -0.1;0.1 0.2]}

数据类型:细胞

线性时间趋势项,指定为aNumSeries1数字向量。默认值没有指定模型中的线性时间趋势。

例:'趋势',[0.1;0.2]

数据类型:

回归系数矩阵与预测变量相关联的,指定为NumSeries-通过-NumPreds数字矩阵。NumPreds是预测变量的数目,即,列在所述预测数据的数量。

Beta版(j:)包含每个预测器的回归系数响应的等式中yj,TBeta版(:,k)包含在预测器响应每个方程中的回归系数xk。默认情况下,所有的预测变量在所有反应方程式的回归成分。您可以通过指定等式约束,以0排除某些公式预测一定。

例:在包含3个响应和4个预测变量,以排除第三方程式第二预测,并留下不受限制为人师表,指定[喃喃喃;楠楠楠;[南南]

默认值指定在模型中没有回归系数。但是,如果指定的预测数据,当您估计使用模型估计,然后MATLAB®Beta版到的适当大小的矩阵值。

例:'Beta',[2 3 -1 2;0.5 -1 -6 0.1]

数据类型:

创新的协方差矩阵NumSeries每次创新t= 1,...,T,指定为NumSeries-通过-NumSeries数值,正定矩阵。

例:协方差,眼睛(2)

数据类型:

模型的描述中,指定为字符串标量或特征向量。varm存储值作为字符串标量。默认值描述了该模型的参数形式,例如“2维VAR(3)模型”

例:“描述”、“模式1”

数据类型:|烧焦

响应系列名称,指定为NumSeries长度的字符串矢量。默认值是['Y1 'Y2' ...“YNumSeries“]

例:'SeriesNames',{ 'CPI' '失业'}

数据类型:

请注意

在属性-valued元素指示未知,估计的参数。指定元素指示在模型估计参数等式约束。这些创新的协方差矩阵协方差不能包含混合的值和实数;你必须完全指定的协方差或者必须是完全未知(NaN的(NumSeries))。

对象的功能

估计 将向量自回归(VAR)模型与数据进行拟合
fevd 产生向量自回归(VAR)模型预测误差方差分解(FEVD)
过滤 通过向量自回归(VAR)模型对扰动进行滤波
预测 预测向量自回归(VAR)模型响应
gctest 向量自回归(VAR)模型的格兰杰因果关系和块外生性测试
推断 据此推断向量自回归模型(VAR)的创新
irf 生成向量自回归(VAR)模型的脉冲响应
模拟 蒙特卡罗模拟向量自回归(VAR)模型
总结 显示向量自回归(VAR)模型的估计结果
VECM 转换向量自回归(VAR)模型向量纠错(VEC)模型

例子

全部收缩

创建一个由一个响应序列组成的零度VAR模型。

MDL = varm
MDL = varm具有属性:说明: “1维VAR(0)模型” SeriesNames: “Y” NumSeries:1,P:0常数:NaN的AR:{}趋势:0贝塔:[1×0矩阵]协方差:NaN的

MDLvarm模型对象。它包含一个响应系列,一个未知的常数,一个未知的创新变化。该模型的属性出现在命令行。

假设你的问题已经在滞后1。自回归系数要创建这样一个模型,设置自回归系数特性(基于“增大化现实”技术)到一个含有a的细胞使用点符号价值。

Mdl.AR = {}的NaN
Mdl = varm with properties: Description:“1维VAR(1)模型”系列名称:“Y”数列:1 P: 1常数:NaN AR: {NaN}在滞后[1]趋势:0 Beta:[1×0矩阵]协方差:NaN

如果您的问题包含多个响应系列,则使用不同的响应系列varm语法模型创建。

为消费者价格指数(CPI)和失业率创建一个VAR(4)模型。

加载Data_USEconModel数据集。对于CPI声明变量(CPI)及失业率(UNRATE)系列。

负载Data_USEconModelcpi = DataTable.CPIAUCSL;unrate = DataTable.UNRATE;

使用简化语法创建默认的VAR(4)模型。

Mdl = varm (2、4)
MDL = varm具有属性:说明: “2维VAR(4)模型” SeriesNames: “Y1”, “Y2” NumSeries:2,P:4常数:AR [2×1的NaN矢量]:{2×2点矩阵的的NaN}在滞后[1 2 3 ...和1更多]趋势:测试[2×1零矢量]:[2×0矩阵]协方差:[2×2的NaN矩阵]

MDLvarm模型对象。它作为模型估计的模板。MATLAB®认为任何值作为未知参数值进行估计。例如,不变属性是一个2×1矢量值。因此,模型常数将被估计的活动模型的参数。

通过设置,包含未知的线性时间趋势项趋势财产使用点符号。

Mdl.Trend = NaN的
描述:“具有线性时间趋势的二维VAR(4)模型”系列名称:“Y1”“Y2”数列:2 P: 4常数:[2×1 NaNs向量]AR:{2×2个NaNs}矩阵滞后[1 2 3…[2×1 NaNs向量]Beta:[2×0矩阵]协方差:[2×2矩阵NaNs]

MATLAB扩张至适当的长度,即,一个2×1矢量值。

创建三乱响应系列VAR模型。在该方程组中指定的参数值。

y 1 , t = 1 + 0 2 y 1 , t - 1 - 0 1 y 2 , t - 1 + 0 5 y 3. , t - 1 + 1 5 t + ε 1 , t y 2 , t = 1 - 0 4 y 1 , t - 1 + 0 5 y 2 , t - 1 + 2 t + ε 2 , t y 3. , t = - 0 1 y 1 , t - 1 + 0 2 y 2 , t - 1 + 0 3. y 3. , t - 1 + ε 3. , t

假设创新是多元高斯为0的均值和协方差矩阵

Σ = ( 0 1 0 0 1 0 3. 0 0 1 0 5 0 0 3. 0 1 ]

创建参数值的变量。

C = [1;1;0];PHI1 = {[0.2 -0.1 0.5;-0.4 0.2 0;-0.1 0.2 0.3]};增量= [1.5;2;0];西格玛= [0.1 0.01 0.3; 0.01 0.5 0; 0.3 0 1];

创建一个VAR(1)表示使用相应的名称 - 值对参数动态方程的系统模型对象。

MDL = varm('不变',C,基于“增大化现实”技术的,PHI1,'趋势',三角洲,协方差的,Sigma)的
MDL = varm与属性:描述: “AR-固定3维VAR(1)模型与线性时间趋势” SeriesNames: “Y1”, “Y2”, “Y3” NumSeries:3 P:1常数:[1 1 0]”AR:{3×3矩阵}在延迟[1]趋势:[1.5 2 0]”贝塔:[3×0矩阵]协方差:[3×3矩阵]

MDL是一部全面规定varm模型对象。默认,varm将自回归系数归因于第一个滞后。

你可以使用点符号调整模型属性。例如,考虑的是属性自回归系数矩阵另一个VAR模型PHI1到所述第二滞后术语,指明零用于第一滞后系数的矩阵,并且将所有其他为等于MDL。创建此VAR(2)模型。

MDL2 =铜牌;披= [零(3,3)PHI1];Mdl2.AR =披
MDL2 = varm与属性:描述: “AR-固定3维VAR(2)与线性时间趋势模型” SeriesNames: “Y1”, “Y2”, “Y3” NumSeries:3 P:2常数:[1 1 0]”AR:{3×3矩阵}在延迟[2]趋势:[1.5 2 0]”贝塔:[3×0矩阵]协方差:[3×3矩阵]

或者,您可以使用以下命令创建另一个模型对象varm和相同的语法MDL,但另外指定'时滞',2

将VAR(4)模型与消费者价格指数(CPI)和失业率数据相匹配。

加载Data_USEconModel数据集。

负载Data_USEconModel

绘制在不同的地块两大系列。

数字;情节(DataTable.Time,DataTable.CPIAUCSL);标题('消费者价格指数');ylabel('指数');包含(“日期”);

数字;情节(DataTable.Time,DataTable.UNRATE);标题('失业率');ylabel('百分');包含(“日期”);

通过将其转换为一系列增长率的稳定CPI。通过从失业率系列的第一观察同步两大系列。

rcpi = price2ret (DataTable.CPIAUCSL);unrate = DataTable.UNRATE(2:结束);

使用简化语法创建默认的VAR(4)模型。

Mdl = varm (2、4)
MDL = varm具有属性:说明: “2维VAR(4)模型” SeriesNames: “Y1”, “Y2” NumSeries:2,P:4常数:AR [2×1的NaN矢量]:{2×2点矩阵的的NaN}在滞后[1 2 3 ...和1更多]趋势:测试[2×1零矢量]:[2×0矩阵]协方差:[2×2的NaN矩阵]

MDLvarm模型对象。包含所有属性值对应于待估计给定的数据参数。

估计使用整个数据集模型。

EstMdl =估计(Mdl,[rcpi unrate])
EstMdl = varm与属性:描述: “AR-固定2维VAR(4)模型” SeriesNames: “Y1”, “Y2” NumSeries:2,P:4常数:[0.00171639 0.316255]” AR:{2×2矩阵}在滞后[1 2 3 ...和1更多]趋势:[零的2×1向量]贝塔:[2×0矩阵]协方差:[2×2矩阵]

EstMdl是估计varm模型对象。它完全指定的,因为所有的参数都具有已知值。该说明指出自回归多项式是静止的。

显示从估算汇总统计。

总结(EstMdl)
AR-2固定维VAR(4)模型有效样本规模:241估计的参数的数量:18对数似然:811.361 AIC:-1586.72 BIC:-1524值StandardError的TStatistic p值___________ _____________ __________ __________常数(1)0.0017164 0.0015988 1.0735 0.28303恒(2)0.31626 0.091961 3.439 0.0005838 AR {1}(1,1)0.30899 0.063356 4.877 1.0772e-06 AR {1}(2,1)-4.4834 3.6441 -1.2303 0.21857 AR {1}(1,2)-0.0031796 0.0011306-2.8122 0.004921 AR {1}(2,2)1.3433 0.065032 20.656 8.546e-95 AR {2}(1,1)0.22433 0.069631 3.2217 0.0012741 AR {2}(2,1)7.1896 4.005 1.7951 0.072631 AR {2}(1,2)0。00123.75 0.0018631 0.6642 0.50656 AR{2}(2,2) -0.26817 0.10716 -2.5025 0.012331 AR{3}(1,1) 0.35333 0.068287 5.1742 2.2887e-07 AR{3}(2,1) 1.487 3.9277 0.37858 0.705 AR{3}(1,2) 0.0028594 0.0018621 1.5355 0.12465 AR{3}(2,2) -0.22709 0.1071 -2.1202 0.033986 AR{4}(1,1) -0.047563 0.069026 -0.68906 0.49079 AR{4}(2,1) 8.6379 3.9702 2.1757 0.029579 AR{4}(1,2) -0.00096323 0.0011142 -0.86448 0.38733 AR{4}(2,2) 0.076725 0.064088 1.1972 0.23123 Innovations Covariance Matrix: 0.0000 -0.0002 -0.0002 0.1167 Innovations Correlation Matrix: 1.0000 -0.0925 -0.0925 1.0000

这个例子从如下估计VAR(4)模型

创建和估计的CPI增速和失业率一个VAR(4)模型。对待过去的十年期间为预测范围。

负载Data_USEconModelcpi = DataTable.CPIAUCSL;unrate = DataTable.UNRATE;rcpi = price2ret (cpi);unrate = unrate(2:结束);Y = [rcpi unrate];Mdl = varm (2、4);EstMdl =估计(Mdl Y (1: (end-10):));

使用所估计的模型预测10升的反应和样品中的数据作为样品前体观测。

YF =预测(EstMdl,10,Y(1:(端-10),:));

用各自的预测值在不同的地块上绘制系列的一部分。

数字;情节(DataTable.Time(结束 -  50:结束),RCPI(端 -  50:端));保持情节(DataTable.Time((端 -  9):结束),YF(:,1))H = GCA;填充(DataTable.Time([端 -  9结束端端 -  9]),h.YLim([1,1,2,2]),数k,...'FaceAlpha',0.1,“EdgeColor”,“没有”);传说(“真正的CPI增速”,“预测CPI增长率”,...'位置','NW')标题(“每季度CPI增速:1947至2009年”);ylabel(“CPI增速”);包含(“年”);保持

数字;情节(DataTable.Time(结束 -  50:结束),unrate(结束 -  50:端));保持情节(DataTable.Time((端 -  9):结束),YF(:,2))H = GCA;填充(DataTable.Time([端 -  9结束端端 -  9]),h.YLim([1,1,2,2]),数k,...'FaceAlpha',0.1,“EdgeColor”,“没有”);传说(“真正的失业率”,“预测失业率”,...'位置','NW')标题(“每季度失业率:1947年至2009年”);ylabel('失业率');包含(“年”);保持

更多关于

展开全部

介绍了R2017a