varm

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

描述

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

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

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

创建

描述

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

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

这简写语法允许简单的模型模板创建。该模型模板适用于不受限制的参数估计,即,估计不带参数的等式约束。创建模型后,可以改变使用点符号属性值。

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

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

输入参数

展开全部

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

MDL = varm(3,2);

的时间序列,指定为正整数。numseries指定的多变量响应变量和创新的维数,ÿŤεŤ, 分别。

数据类型:

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

数据类型:

名称 - 值对参数

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

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

例:'时滞',[4 8]指定与非零自回归系数矩阵一个VAR(8)模型在滞后48

要设置可写值性能, 采用名称,值对参数语法。例如,'恒',[1;2], 'AR',{[0.1 -0.2;-0.3 0.5]}不变[1;2]AR{[0.1 -0.2;-0.3 0.5]}

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

的长度滞后AR必须相等。滞后(Ĵ是对应于系数矩阵的滞后AR {Ĵ}

例:'时滞',[1 4]

数据类型:

属性

展开全部

当您使用的名称 - 值对参数语法创建模型对象,你可以设置可写的属性值,或者在您通过使用点符号模型对象。例如,为了创建一个VAR(1)模型由两个串联的反应,然后指定一个未知的时间趋势项,输入:

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

此属性是只读的。

的时间序列,指定为正整数。NumSeries指定的多变量响应变量和创新的维数,ÿŤεŤ, 分别。

数据类型:

此属性是只读的。

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

P指定样品前观测的数量需要初始化模型。

数据类型:

模型截距(或常量),指定为NumSeries×1数值向量。

例:'恒',[1;2]

数据类型:

与滞后应答有关自回归系数矩阵,指定为的细胞载体NumSeries-通过-NumSeries数字矩阵。

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

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

    • 的长度AR滞后是相等的。

    • AR {Ĵ}是滞后系数矩阵滞后(Ĵ

    • 默认情况下,ARnumel(延迟)×1组成的基质的细胞载体为NaN值。

  • 否则,应用以下条件。

    • 长度ARP

    • AR {Ĵ}是滞后系数矩阵Ĵ

    • 默认情况下,ARP×1组成的基质的细胞载体为NaN值。

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

数据类型:细胞

线性时间趋势项,指定为NumSeries×1数值向量。默认值指定在模型中没有线性时间趋势。

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

数据类型:

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

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

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

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

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

数据类型:

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

例:'协方差',眼(2)

数据类型:

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

例:“说明”,“模式1”

数据类型:|烧焦

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

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

数据类型:

注意

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

对象函数

估计 配合向量自回归(VAR)模型数据
fevd 产生向量自回归(VAR)模型预测误差方差分解(FEVD)
过滤 通过向量自回归(VAR)模型滤波器的干扰
预测 预测向量自回归(VAR)模型的响应
gctest 对于向量自回归Granger因果关系和块外生性测试(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。自回归系数要创建这样一个模型,设置自回归系数特性(AR)向含有细胞为NaN使用点符号价值。

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

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

创建一个VAR(4)居民消费价格指数(CPI),失业率模型。

加载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®认为任何为NaN值作为未知参数值进行估计。例如,不变属性是一个2×1矢量为NaN值。因此,模型常数将被估计的活动模型的参数。

通过设置包括一个未知的线性时间趋势项趋势属性为NaN使用点符号。

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扩张为NaN至适当的长度,即,一个2×1矢量为NaN值。

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

ÿ 1 Ť = 1 + 0 2 ÿ 1 Ť - 1 - 0 1 ÿ 2 Ť - 1 + 0 ÿ 3 Ť - 1 + 1 Ť + ε 1 Ť ÿ 2 Ť = 1 - 0 4 ÿ 1 Ť - 1 + 0 ÿ 2 Ť - 1 + 2 Ť + ε 2 Ť ÿ 3 Ť = - 0 1 ÿ 1 Ť - 1 + 0 2 ÿ 2 Ť - 1 + 0 3 ÿ 3 Ť - 1 + ε 3 Ť

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

Σ = [ 0 1 0 0 1 0 3 0 0 1 0 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,'AR',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('指数');xlabel('日期');

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

通过将其转换为一系列增长率的稳定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模型对象。包含所有属性为NaN值对应于待估计给定的数据参数。

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

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。0012375 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:(端-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增速”);xlabel('年');保持

数字;情节(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('失业率');xlabel('年');保持

更多关于

展开全部

介绍了在R2017a