过滤器
利用矢量误差校正(VEC)模型滤波干扰
语法
描述
返回表格或时间表Tbl2
=过滤器(Mdl
,Tbl1
Presample =Presample
)Tbl2
包含多元响应序列,其结果来自过滤输入表或时间表中的底层多元扰动序列Tbl1
.过滤器
中使用所需的预采样数据表或时间表初始化响应系列Presample
.变量Tbl1
是否与模式创新过程相关联Mdl
.
过滤器
中的变量Mdl。SeriesNames
或者所有的变量Tbl1
.选择不同的扰动变量Tbl1
要对模型进行筛选,请使用DisturbanceVariables
名称-值参数。过滤器
选择相同的变量Presample
属性,但可以选择不同的变量PresampleResponseVariables
名称-值参数。
例子
用VEC模型滤波扰动数值矩阵
考虑以下七个宏观经济系列的VEC模型。然后,将模型与数据进行拟合,通过拟合模型对扰动进行滤波。以数值矩阵的形式提供扰动。
国内生产总值(GDP)
GDP隐性价格平减指数
员工薪酬
所有人的非农业务部门工作时间
实际联邦基金利率
个人消费支出
国内私人投资总额
假设协整秩为4和一个短期项是合适的,即考虑VEC(1)模型。
加载Data_USEconVECModel
数据集。
负载Data_USEconVECModel
有关数据集和变量的更多信息,请输入描述
在命令行。
通过在单独的图上绘制序列来确定是否需要对数据进行预处理。
图平铺布局(2,2)nexttile plot(FRED.Time,FRED.GDP)“本地生产总值”) ylabel (“指数”)包含(“日期”nexttile plot(FRED.Time,FRED.GDPDEF)“GDP平减指数”) ylabel (“指数”)包含(“日期”nexttile plot(FRED.Time,FRED.COE)“雇员的已付补偿”) ylabel (“数十亿美元”)包含(“日期”nexttile的用法和样例:“非农业行业营业时间”) ylabel (“指数”)包含(“日期”)
图tiledlayout(2,2) nexttile plot(FRED.Time,FRED.FEDFUNDS)“联邦基金利率”) ylabel (“百分比”)包含(“日期”nexttile plot(FRED.Time,FRED.PCEC)“消费支出”) ylabel (“数十亿美元”)包含(“日期”nexttile plot(FRED.Time,FRED.GPDI)“本地私人投资总额”) ylabel (“数十亿美元”)包含(“日期”)
通过应用对数变换,稳定除联邦基金利率外的所有系列。将生成的系列按100缩放,以便所有系列都在相同的比例上。
弗雷德。国内生产总值=100*log(FRED.GDP); FRED.GDPDEF = 100*log(FRED.GDPDEF); FRED.COE = 100*log(FRED.COE); FRED.HOANBS = 100*log(FRED.HOANBS); FRED.PCEC = 100*log(FRED.PCEC); FRED.GPDI = 100*log(FRED.GPDI);
使用简写语法创建VEC(1)模型。指定变量名。
Mdl = vecm(7,4,1);Mdl。SeriesNames = FRED.Properties.VariableNames
Mdl = vecm与属性:说明:“7维秩= 4 VEC(1)模型与线性时间趋势”SeriesNames:“GDP”“GDPDEF”“COE”…和4更NumSeries: 7等级:4 P: 2常数:[7×1的向量nan]调整:[7×4矩阵nan)协整:[7×4矩阵nan)影响:[7×7矩阵nan] CointegrationConstant:[4×1的向量nan] CointegrationTrend:[4×1的向量nan]短期的:{7×7矩阵nan}在滞后[1]的趋势:[7×1的向量nan]β:协方差矩阵[7×0]:[7×7矩阵nan)
Mdl
是一个结果
模型对象。所有属性包含南
值对应于给定数据要估计的参数。
使用整个数据集和默认选项估计模型。默认情况下,估计
使用第一个p= 2个观测数据作为预样本数据。
EstMdl =估计(Mdl,FRED.Variables)
EstMdl = vecm属性:描述:“7维Rank = 4 VEC(1)模型”SeriesNames:“GDP”“GDPDEF”“COE”…和4更多NumSeries: 7排名:4 P: 2常量:[14.1329 8.77841 -7.20359…调整:[7×4矩阵]协整:[7×4矩阵]影响:[7×7矩阵]协整常量:[-28.6082 109.555 -77.0912…and 1 more]' CointegrationTrend: [4×1 vector of zero] ShortRun: {7×7 matrix} at lag[1]趋势:[7×1 vector of zero] Beta: [7×0 matrix]协方差:[7×7 matrix]
EstMdl
是估计的结果
模型对象。它是完全指定的,因为所有参数都有已知值。默认情况下,估计
通过从模型中去除协整趋势项和线性趋势项,对H1 Johansen VEC模型形式施加约束。从估计中排除参数相当于将相等约束施加到零。
生成一个numobs
-by-7序列的随机高斯分布值,其中numobs
数据中的观察数是负数吗p.
nummobs = size(FRED,1) - Mdl.P;rng (1)%用于再现性Z = randn(nummobs,Mdl.NumSeries);
为了模拟响应,通过估计模型对扰动进行滤波。指定第一个p= 2个观测数据作为预样本数据。
Y = filter(EstMdl,Z,Y0=FRED{1:2,:});
Y
是一个238 × 7的模拟响应矩阵。中的变量名对应于列EstMdl。SeriesNames
.
绘制模拟反应和真实反应。
图tiledlayout(2,2) nexttile plot(FRED.Time(3:end),[FRED.GDP(3:end) Y(:,1)]) title(“本地生产总值”) ylabel (”指数(了)”)包含(“日期”)传说(“模拟”,“真正的”,“位置”,“最佳”nexttile plot(FRED.Time(3:end),[FRED.GDPDEF(3:end) Y(:,2)]) title(“GDP平减指数”) ylabel (”指数(了)”)包含(“日期”)传说(“模拟”,“真正的”,“位置”,“最佳”) nexttile plot(FRED.Time(3:end),[FRED.COE(3:end) Y(:,3)])“雇员的已付补偿”) ylabel (“数十亿美元(按比例)”)包含(“日期”)传说(“模拟”,“真正的”,“位置”,“最佳”) nexttile plot(FRED.Time(3:end),[FRED.HOANBS(3:end) Y(:,4)])“非农业行业营业时间”) ylabel (”指数(了)”)包含(“日期”)传说(“模拟”,“真正的”,“位置”,“最佳”)
图tiledlayout(2,2) nexttile plot(FRED.Time(3:end),[FRED.FEDFUNDS(3:end) Y(:,5)]) title(“联邦基金利率”) ylabel (“百分比”)包含(“日期”) nexttile plot(FRED.Time(3:end),[FRED.PCEC(3:end) Y(:,6)]) title(“消费支出”) ylabel (“数十亿美元(按比例)”)包含(“日期”nexttile plot(FRED.Time(3:end),[FRED.GPDI(3:end) Y(:,7)]) title(“本地私人投资总额”) ylabel (“数十亿美元(按比例)”)包含(“日期”)
多干扰路径滤波
考虑三个假设响应序列的VEC(1)模型。
创新是均值为0的多元高斯分布和协方差矩阵
为参数值创建变量。
调整= [-0.3 0.3;-0.2 - 0.1;1 0];协整= [0.1 -0.7;-0.2 - 0.5;0.2 - 0.2);ShortRun = {[0.]0.1 - 0.2;0.2 -0.2 0;0.7 -0.2 0.3]}; Constant = [-1; -3; -30]; Trend = [0; 0; 0]; Covariance = [1.3 0.4 1.6; 0.4 0.6 0.7; 1.6 0.7 5];
创建一个结果
模型对象使用适当的名称-值对参数表示VEC(1)模型。
Mdl = vecm(“调整”调整,协整的协整,...“不变”常数,“短期的”短期的,“趋势”的趋势,...协方差的协方差)
Mdl = vecm带属性:描述:“三维Rank = 2 VEC(1)模型”SeriesNames:“Y1”“Y2”“Y3”NumSeries: 3 Rank: 2 P: 2常数:[-1 -3 -30]'调整:[3×2矩阵]协整:[3×2矩阵]影响:[3×3矩阵]协整常量:[2×1向量的NaNs]协整趋势:[2×1向量的NaNs] ShortRun: {3×3矩阵}在滞后[1]趋势:[3×1向量的零]Beta: [3×0矩阵]协方差:[3×3矩阵]
Mdl
是否有效地完全指定结果
模型对象。即协整常数和线性趋势是未知的。然而,由于总体常数和趋势参数是已知的,模拟观测或预测不需要它们。
从三维高斯分布中生成100个观测值的1000条路径。numobs
是数据中没有任何缺失值的观察数。
Numobs = 100;Numpaths = 1000;rng (1);Z = randn(nummobs, mll . numseries,numpaths);
通过估计模型对扰动进行滤波。返回创新(缩放扰动)。
[Y,E] = filter(Mdl,Z);
Y
而且E
分别为100 × 3 × 1000矩阵的滤波响应和缩放扰动。
对于每个时间点,计算所有路径之间的过滤响应的平均向量。
MeanFilt = mean(Y,3);
MeanFilt
是一个100 × 3矩阵,包含每个时间点过滤响应的平均值。
将过滤后的响应和它们的平均值画出来。
图;为j = 1:Mdl。NumSeriessubplot(2,2,j) plot(squeeze(Y(:,j,:)),“颜色”, 0.8, 0.8, 0.8)标题(Mdl.SeriesNames {j});持有在情节(MeanFilt (:, j));包含(“时间指数”)举行从结束
用VEC模型滤波扰动时间表
拟合VEC(1)模型到7个宏观经济序列。然后,通过估计模型滤波高斯分布扰动的多个随机路径,模拟响应。在时间表中提供干扰。本例是基于拟合VEC(1)模型与响应数据矩阵.
加载和预处理数据
加载Data_USEconVECModel
数据集。
负载Data_USEconVECModel头(FRED)
时间GDP GDPDEF COE HOANBS FEDFUNDS PCEC GPDI ___________ ___________ ___________ ________ _________ 31-Mar-1957 470.6 16.485 260.6 54.756 2.96 282.3 77.7 30- june -1957 472.8 16.601 265.1 54.639 3 284.6 77.9 30- 9 -1957 480.3 16.701 265.1 54.375 3.47 289.2 79.3 31- 12 -1957 475.7 16.711 263.7 53.249 2.98 290.8 71 31-Mar-1958 468.4 16.892 269.9 51.297 0.93 293.2 65.1 30- 9 -1958 486.7 17.043 267.7 51.908 1.76 298.3 72 31- 12 -1958 500.4 17.123272.7 52.683 2.42 302.2 80
通过应用对数变换,稳定除联邦基金利率外的所有系列。将生成的系列按100缩放,以便所有系列都在相同的比例上。
弗雷德。国内生产总值=100*log(FRED.GDP); FRED.GDPDEF = 100*log(FRED.GDPDEF); FRED.COE = 100*log(FRED.COE); FRED.HOANBS = 100*log(FRED.HOANBS); FRED.PCEC = 100*log(FRED.PCEC); FRED.GPDI = 100*log(FRED.GPDI); numobs = height(FRED)
nummobs = 240
准备评估时间表
当你计划直接提供时间表进行估算时,你必须确保它具备以下所有特征:
所有选择的响应变量都是数字,不包含任何缺失值。
中的时间戳
时间
变量是规则的,它们是上升或下降的。
从表中删除所有缺失的值。
DTT = rmmissing(FRED);nummobs =身高(DTT)
nummobs = 240
德勤
不包含任何缺失值。
确定采样时间戳是否具有规则频率并进行排序。
areTimestampsRegular = isregular(DTT,“季度”)
areTimestampsRegular =逻辑0
areTimestampsSorted = issorted(DTT.Time)
areTimestampsSorted =逻辑1
areTimestampsRegular = 0
表示DTT时间戳是不规则的。areTimestampsSorted = 1
表示时间戳已排序。本例中的宏观经济序列的时间戳为月底。这种性质导致了一个不规则的测量序列。
通过将所有日期转移到季度的第一天来纠正时间不规律。
dt = dt .时间;Dt =移码(Dt,“开始”,“季”);德勤。时间=dt;areTimestampsRegular = isregular(DTT,“季度”)
areTimestampsRegular =逻辑1
德勤
对于时间是有规律的。
模型与数据拟合
使用简写语法创建VEC(1)模型。指定变量名。
Mdl = vecm(7,4,1);Mdl。SeriesNames = string(FRED.Properties.VariableNames);
估计模型。通过整个时间表德勤
.默认情况下,估计
中的响应变量Mdl。SeriesNames
适合模型。或者,您可以使用ResponseVariables
名称-值参数。
EstMdl =估计(Mdl,DTT);
模拟扰动路径
生成一个numobs
——- - - - - -numseries
——- - - - - -numpaths
独立随机高斯分布值的数组,其中numobs
是数据中观测值的数量,numseries
响应系列7的个数,和numpaths
是100。将模拟路径矩阵添加到数据集中德勤
.
rng (1)%用于再现性nummobs = height(DTT);numseries = estmld . numseries;Numpaths = 100;Z = mvnrnd(零(numseries,1),眼睛(numseries), nummobs *numpaths);Z =重塑(Z, nummobs,numseries,numpaths);为j = 1:numseries DTT = addvars(DTT,squeeze(Z(:,j,:))),...NewVariableNames =“Z_”+ EstMdl.SeriesNames {j});结束头(德勤)
时间GDP GDPDEF COE HOANBS FEDFUNDS PCEC GPDI Z_GDP Z_GDPDEF Z_COE Z_HOANBS Z_FEDFUNDS Z_PCEC Z_GPDI ___________ ______ ______ ______ ______ ________ ______ ______ ____________ ____________ ____________ ____________ ____________ ____________ ____________ 01 - 1月- 1957 615.4 280.25 556.3 400.29 2.96 564.3 435.29 1 x100双1 x100双1 x100双1 x100双x100双1 x100双1 x100双01 - 4月- 1957 615.87 280.95 557.03 565.11 - 435.54 400.07 - 3 1 x100双1 x100双1 x100翻倍1x100双1x100双1x100双1x100双1x100双1x100双1x100双1x100双1x100双1x100双1x100双1x100双1x100双1x100双1x100双01 - 4月- 1958 615.87 282.97 556.03 393.76 0.93 568.09 417.59 1 x100双1 x100双1 x100双1 x100双x100双1 x100双1 x100双01 - 7 - 1958 618.76 283.57 558.99 394.95 1.76 569.81 427.67 1 x100双1 x100双1 x100双1 x100双x100双1 x100双1 x100双01 - 10月- 1958 621.54 284.04 560.84 396.43 2.42 571.11 438.2 1 x100双1 x100双1 x100双1 x100双x100双1 x100双1 x100翻倍
通过模型滤波扰动
当你用时间表过滤干扰时,过滤器
需要一个样品。将时间表分成预样本和样本内数据集。预样本数据是初始值EstMdl。P
观测值,样本内数据集包含其余观测值。
Presample = DTT(1:EstMdl.P,:);InSample = DTT((EstMdl.)P + 1):结束,:);
通过估计模型滤波样本内扰动,模拟响应路径。指定扰动序列的变量名、预采样数据和预采样中的响应变量名。
dnames = string(DTT.Properties.VariableNames);idx = startsWith(dnames,“Z_”);Dnames = Dnames (idx);Tbl2 = filter(EstMdl,InSample,捣乱变量=dnames,...Presample = Presample PresampleResponseVariables = EstMdl.SeriesNames);大小(Tbl2)
ans =1×2238年28
头(Tbl2)
时间GDP GDPDEF COE HOANBS FEDFUNDS PCEC GPDI Z_GDP Z_GDPDEF Z_COE Z_HOANBS Z_FEDFUNDS Z_PCEC Z_GPDI GDP_Responses GDPDEF_Responses COE_Responses HOANBS_Responses FEDFUNDS_Responses PCEC_Responses GPDI_Responses GDP_Innovations GDPDEF_Innovations COE_Innovations HOANBS_Innovations FEDFUNDS_Innovations PCEC_Innovations GPDI_Innovations ___________ ______ ______ ______ ______ ________ ______ ______ ____________ ____________ ____________ ____________ ____________ ____________ _________________________ ________________ _____________ ________________ __________________ ______________ ______________ _______________ __________________ _______________ __________________ ____________________ ________________ ________________ 01 - 7 - 1957 617.44 281.55 558.01 399.59 3.47 566.71 437.32 1 x100双1 x100双1 x100双1 x100双x100双1 x100双1 x100双1 x100双1 x100双1 x100双x100双1 x100双1 x100 x100双1 x100双1 x100的两倍双1 x100双x100双1 x100双1 x100双1 x100双01 - 10月- 1957 616.48 281.61 557.48 397.5 2.98 567.26 426.27 1 x100双1 x100双1 x100双1 x100双x100双1 x100双1 x100双1 x100双x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双01 - 1月- 1958 614.93 282.68 556.15 395.21 1.2 567.09 420.02 1 x100双1 x100双1 x100翻倍x100双1 x100双1 x100双1 x100双1 x100双1 x100双x100双1 x100双1 x100双1 x100双1 x100双1 x100双x100双1 x100双1 x100双1 x100双1 x100双1 x100双01 - 4月- 1958 615.87 282.97 556.03 393.76 0.93 568.09 417.59 1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双1 x100双x100双1 x100双1 x100翻倍1x100双1x100 double 1x100 double 1x100 double 1x100 double 01-Jul-1958 618.76 283.57 558.99 394.95 1.76 569.81 427.67 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 01-Oct-1958 621.54 284.04 560.84 396.43 2.42 571.11 438.2 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 01-Jan-1959 623.66 284.31 563.55 398.35 2.8 573.62 442.12 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 01-Apr-1959 626.19 284.46 565.91 400.24 3.39 575.54 449.31 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double 1x100 double
Tbl2
是一个238 × 2的样本内数据矩阵,模拟扰动的路径,过滤响应的路径(变量名附加_Responses
,和创新路径(名称后跟_Innovations
)。
rnames = string(Tbl2.Properties.VariableNames);idx = endsWith(rnames,“_Responses”);Rnames = Rnames (idx);图tiledlayout (2, 2)为nexttile p1 = plot(Tbl2. time,Tbl2{:,rnames(j)},Color=[0.5 0.5 0.5]);持有在p2 = plot(Tbl2. time,Tbl2{:, mll . seriesnames (j)},LineWidth=2);标题(Mdl.SeriesNames (j))包含(“日期”)传说([p1(1) p2],[“模拟”“观察”])结束
图tiledlayout (2, 2)为nexttile p1 = plot(Tbl2. time,Tbl2{:,rnames(j)},Color=[0.5 0.5 0.5]);持有在p2 = plot(Tbl2. time,Tbl2{:, mll . seriesnames (j)},LineWidth=2);标题(Mdl.SeriesNames (j))包含(“日期”)传说([p1(1) p2],[“模拟”“观察”])结束
输入参数
Z
- - - - - -潜在的多元扰动系列
数字矩阵|数字数组
潜在的多元扰动系列zt与模型创新过程相关εt,指定为numobs
——- - - - - -numseries
数值矩阵或numobs
——- - - - - -numseries
——- - - - - -numpaths
数字数组。
numobs
是样本容量。numseries
为扰动序列的个数(Mdl。NumSeries
)。numpaths
是扰动路径的个数。
行对应采样次数,最后一行包含最新的扰动集。
列对应于响应变量的单个扰动序列。
页面对应于独立的路径。对于一个数值矩阵,Z
是单一的numseries
扰动序列的-维路径。对于三维数组,每一页Z
表示单独的numseries
维路径。在所有页面中,相应行的扰动同时发生。
的规模
名称-值参数指定是否在之前缩放扰动过滤器
过滤它们Mdl
.详情请参见规模
.
数据类型:双
Tbl1
- - - - - -时间序列数据
表格|时间表
包含观测到的扰动变量的时间序列数据zt,与模型创新过程相关εt,或预测变量xt的表或时间表numvars
变量和numobs
行。您可以选择numseries
扰动变量或numpreds
预测变量使用DisturbanceVariables
或PredictorVariables
分别为名称-值参数。
每个选定的扰动变量为anumobs
——- - - - - -numpaths
数字矩阵,每个预测变量是一个数字向量。每一行都是一个观测值,每一行的测量值同时发生。
每个路径(列)在一个特定的变量是独立的,但路径
在所有变量中对应的是j
= 1,…,j
numpaths
.
如果Tbl1
是一个时间表,它必须表示具有常规datetime时间步骤的示例(参见isregular
)和datetime向量Tbl1。时间
必须是升序或降序。
如果Tbl1
是一个表,最后一行包含最新的观察结果。
的规模
名称-值参数指定是否在之前缩放扰动过滤器
过滤它们Mdl
.详情请参见规模
.
Presample
- - - - - -Presample数据
表格|时间表
为模型提供初始值的预采样数据Mdl
,指定为表格或时间表,类型与Tbl1
,numprevars
变量和numpreobs
行。Presample
当你提供一个表格或时间表的数据时需要什么Tbl1
.
每一行都是一个预采样观测,在所有路径中,每一行的测量都是同时发生的。numpreobs
至少是Mdl。P
.如果你提供的行数比需要的多,过滤器
使用最新的Mdl。P
观察。
每个变量都是numpreobs
——- - - - - -numprepaths
数字矩阵。变量对应于与相应扰动相关的响应序列Tbl1
.要控制预采样变量选择,请参见可选选项PresampleResponseVariables
名称-值参数。
对于每个变量,列都是独立的路径。
如果变量是向量,
过滤器
将它们应用到每个路径中Tbl1
以产生过滤后的响应Tbl2
.因此,滤波响应的所有路径都来自共同的初始条件。否则,对于每个变量
每条路径Vark
,j
过滤器
适用于Presample。
生产Vark
(:,j
)Tbl2。
.变量必须至少有Vark
(:,j
)numpaths
列和过滤器
只使用第一个numpaths
列。
如果Presample
是一个时间表,以下所有条件必须成立:
Presample
必须表示具有常规datetime时间步长的示例(参见isregular
)。输入
Tbl1
而且Presample
必须在时间上保持一致Presample
立即之前Tbl1
关于采样频率和阶数。样本时间戳的datetime向量
Presample。时间
必须是升序或降序。
如果Presample
是一个表,最后一行包含最新的预样本观察结果。
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。
在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字
在报价。
例子:过滤器(Mdl, Z, Y0 = PS, X =挂式)
过滤干扰的数值数组Z
通过VEC(p- 1)模型Mdl
,并指定预采样响应数据的数值数组PS
以及外生预测数据的数值矩阵挂式
对于模型回归组件。
DisturbanceVariables
- - - - - -可供选择的变量Tbl1
作为干扰变量来处理zt
字符串向量|特征向量的单元向量|整数向量|逻辑向量
可供选择的变量Tbl1
作为干扰变量来处理zt,指定为以下数据类型之一:
包含的字符向量的字符串向量或单元格向量
numseries
中的变量名Tbl1.Properties.VariableNames
一个长度
numseries
可供选择的变量的唯一索引(整数)向量Tbl1.Properties.VariableNames
一个长度
numvars
逻辑向量,其中DisturbanceVariables (
选择变量j
) =真
从j
Tbl1.Properties.VariableNames
,总和(DisturbanceVariables)
是numseries
所选变量必须是相同宽度的数值向量(单路径)或矩阵(列表示多条独立路径),并且不能包含缺失值(南
)。
如果变量的个数在Tbl1
匹配Mdl。NumSeries
的所有变量Tbl1
.如果变量的个数在Tbl1
超过Mdl。NumSeries
,默认匹配中的变量Tbl1
到名字Mdl。SeriesNames
.
例子:DisturbanceVariables =(“GDP”“CPI”)
例子:扰动变量=[true false true false]
或DisturbanceVariable = 3 [1]
选择第一个和第三个表变量作为扰动变量。
数据类型:双
|逻辑
|字符
|细胞
|字符串
Y0
- - - - - -Presample反应
数字矩阵|数字数组
为模型提供初始值的预示例响应Mdl
,指定为numpreobs
——- - - - - -numseries
数值矩阵或numpreobs
——- - - - - -numseries
——- - - - - -numprepaths
数字数组。使用Y0
只有当你提供扰动数据的数值数组时Z
.
numpreobs
是预采样观测数。numprepaths
是预采样响应路径的数量。
每一行都是一个预样本,在所有页面中,每一行的测量都是同时进行的。最后一行包含最新的预样本观察结果。Y0
至少要有Mdl。P
行。如果你提供的行数比需要的多,过滤器
使用最新的Mdl。P
观察。
每一列对应于与中各自扰动相关的响应序列Z
.
页面对应于独立的路径。
如果
Y0
是一个矩阵,过滤器
将其应用于每个路径(页面)以生成过滤后的响应Y
.因此,所有的路径Y
由共同的初始条件导出。否则,
过滤器
适用于Y0 (:,:
生产j
)Y (:,:
.j
)Y0
至少要有numpaths
页,过滤器
只使用第一个numpaths
页面。
默认情况下,过滤器
设置任何必要的预采样观察。
对于无回归分量的平稳VAR过程,
过滤器
使用无条件均值对于包含回归成分的非平稳过程或模型,
过滤器
将预采样观测值设置为由0组成的数组。
数据类型:双
PresampleResponseVariables
- - - - - -可供选择的变量Presample
用于预采样响应数据
字符串向量|特征向量的单元向量|整数向量|逻辑向量
可供选择的变量Presample
用于预采样数据,指定为以下数据类型之一:
包含的字符向量的字符串向量或单元格向量
numseries
中的变量名Presample.Properties.VariableNames
一个长度
numseries
可供选择的变量的唯一索引(整数)向量Presample.Properties.VariableNames
一个长度
numvars
逻辑向量,其中PresampleResponseVariables (
选择变量j
) =真
从j
Presample.Properties.VariableNames
,总和(PresampleResponseVariables)
是numseries
所选变量必须是相同宽度的数值向量(单路径)或矩阵(列表示多条独立路径),并且不能包含缺失值(南
)。
PresampleResponseNames
不需要包含与在Tbl1
;过滤器
使用所选变量中的数据PresampleResponseVariables (
作为对应于的响应变量的预示例j
)DisturbanceVariables (
.j
)
默认值指定与从中选择的响应变量相同的响应变量Tbl1
(见DisturbanceVariables
)。
例子:PresampleResponseVariables =(“GDP”“CPI”)
例子:PresampleResponseVariables=[true false true false]
或PresampleResponseVariable = 3 [1]
为预采样数据选择第一个和第三个表变量。
数据类型:双
|逻辑
|字符
|细胞
|字符串
X
- - - - - -预测数据xt
数字矩阵
预测数据xt对于模型中的回归组件,指定为包含numpreds
列。使用X
只有当你提供扰动数据的数值数组时Z
.
numpreds
是预测变量的数量(大小(Mdl.Beta, 2)
)。
每一行对应一个观测值,每一行中的测量值同时发生。最后一行包含最新的观察结果。X
至少要有和Z
.如果你提供的行数比需要的多,过滤器
只使用最新的观测结果。过滤器
在预采样期间不使用回归组件。
每一列是一个单独的预测变量。所有预测变量都出现在每个响应方程的回归分量中。
过滤器
适用于X
中的每个路径(页)Z
;也就是说,X
表示观测到的预测器的一条路径。
默认情况下,过滤器
排除回归组件,不管它是否存在于Mdl
.
数据类型:双
PredictorVariables
- - - - - -可供选择的变量Tbl1
作为外生预测变量xt
字符串向量|特征向量的单元向量|整数向量|逻辑向量
可供选择的变量Tbl1
作为外生预测变量xt,指定为以下数据类型之一:
包含的字符向量的字符串向量或单元格向量
numpreds
中的变量名Tbl1.Properties.VariableNames
一个长度
numpreds
可供选择的变量的唯一索引(整数)向量Tbl1.Properties.VariableNames
一个长度
numvars
逻辑向量,其中PredictorVariables (
选择变量j
) =真
从j
Tbl1.Properties.VariableNames
,总和(PredictorVariables)
是numpreds
所选变量必须是数值向量,且不能包含缺失值(南
)。
默认情况下,过滤器
排除回归组件,不管它是否存在于Mdl
.
例子:PredictorVariables=["M1SL" "TB3MS" "UNRATE"]
例子:PredictorVariables=[true false true false]
或PredictorVariable = 3 [1]
选择第一个和第三个表变量以提供预测器数据。
数据类型:双
|逻辑
|字符
|细胞
|字符串
规模
- - - - - -指示是否缩放扰动的标志
真正的
(默认)|假
标志,指示是否通过模型协方差矩阵的下三角Cholesky因子来缩放扰动,该因子在本表中指定为一个值。表中:
价值 | 描述 |
---|---|
真正的 |
E (:,:, =L * Z (:,:, ,在那里l =胆固醇(Mdl.Covariance,“低”) |
假 |
没有规模,E (:,:, =Z (:,: |
对于每一页j
= 1,…,numpaths
,过滤器
过滤器的numobs
——- - - - - -numseries
创新矩阵E (:,:,
通过风险评估(p)模型j
)Mdl
使用指定的比例。
例子:规模= false
数据类型:逻辑
请注意
南
值Z
,Y0
,X
指出缺失的值。过滤器
通过按列表删除从数据中删除缺失的值。如果
Z
是一个三维数组,那么过滤器
的页面水平连接Z
形成一个numobs
——- - - - - -numpaths * numseries
矩阵。如果存在回归组件,则
过滤器
横向连接X
来Z
形成一个numobs
——- - - - - -(numpaths*numseries + numpreds)
矩阵。过滤器
假设每个系列的最后一行同时出现。过滤器
删除至少包含一个的任何行南
从连接的数据。过滤器
中的预示例路径应用步骤1和3Y0
.
这一过程确保了每条路径的过滤响应和创新都是相同的大小,并且基于相同的观察时间。在观测缺失的情况下,从多个路径得到的结果
Z
可能不同于从每个路径单独获得的结果。这种数据缩减减少了有效样本量。
过滤器
当任何表或时间表输入包含缺失值时发出错误。
输出参数
Tbl2
-多元过滤响应与创新系列
表|时间表
多元过滤响应yt创新系列εt,作为表或时间表返回,数据类型与Tbl1
.过滤器
返回Tbl2
只有当你提供输入的时候Tbl1
.
Tbl2
包含以下变量:
过滤后的响应变量yt.每个过滤后的响应变量为a
numobs
——- - - - - -numpaths
数值矩阵,行表示观测值,列表示独立路径,每一行对应输入观测值和路径Tbl1
.过滤器
为扰动变量命名过滤后的响应
在DisturbanceJ
Tbl1
.例如,如果所选扰动变量中的一个DisturbanceJ
_ResponsesTbl1
过滤是国内生产总值
,Tbl2
包含具有名称的对应筛选响应的变量GDP_Responses
.创新变量εt.每个创新变量都是a
numobs
——- - - - - -numpaths
数值矩阵,行表示观测值,列表示独立路径,每一行对应输入观测值和路径Tbl1
.过滤器
将创新变量命名为扰动变量
在DisturbanceJ
Tbl1
.例如,如果所选扰动变量中的一个DisturbanceJ
_InnovationsTbl1
过滤是国内生产总值
,Tbl2
包含具有名称的对应创新的变量GDP_Innovations
.所有的变量
Tbl1
.
如果Tbl1
是一个时间表,Tbl1
而且Tbl2
有相同的行顺序,升序或降序。
算法
过滤器
概括模拟
.这两个功能都是通过一个模型来过滤一个扰动序列,从而产生响应和创新。然而,而模拟
生成一系列均值-零,单位-方差,独立的高斯扰动Z
形成创新E
=L * Z
,过滤器
使您能够提供来自任何分布的干扰。过滤器
使用此过程来确定时间原点t0包含线性时间趋势的模型。如果您没有指定
Y0
,然后t0= 0。否则,
过滤器
集t0来大小(Y0, 1)
- - - - - -Mdl。P
.因此,趋势分量中的次数为t=t0+ 1,t0+ 2,…,t0+numobs
,在那里numobs
有效样本量(大小(Y, 1)
后过滤器
删除缺失的值)。这种约定与模型估计的默认行为是一致的估计
删除第一个Mdl。P
反应,减少有效样本量。虽然过滤器
显式地使用第一个Mdl。P
在Y0
为初始化模型,在Y0
而且Y
(不包括缺失值)决定t0.
参考文献
[1]汉密尔顿,詹姆斯D。时间序列分析.普林斯顿,新泽西州:普林斯顿大学出版社,1994。
[2]约翰森,S。协整向量自回归模型中的似然推理.牛津:牛津大学出版社,1995年。
[3]Juselius, K。协整VAR模型.牛津:牛津大学出版社,2006年。
[4]Lutkepohl, H。多重时间序列分析新导论.柏林:施普林格,2005。
版本历史
在R2017b中引入
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。