这个例子展示了如何估计矢量误差修正(VEC)模型的参数。在估计VEC模型参数之前,必须确定是否存在协整关系(见使用Engle-Granger测试进行协整的测试)。您可以使用普通最小二乘(OLS)估计剩余的VEC模型系数。
以下是使用Engle-Granger测试进行协整的测试,加载DATA_CANADA.
数据集。在小型,中期和长期利率系列上运行Engle-Granger协整测试。
加载DATA_CANADA.Y =数据(:,3:结束);%利率数据[〜,〜,〜,〜,reg] = Egcitest(y,'测试'那't2');c0 = reg.coeff(1);b = reg.coeff(2:3);beta = [1; -b];
假设模型选择程序表示充分性问:= vec中的2个滞后(问:) 模型。
因为你估计C0.
和
=[1;-B]
以前,您可以有条件估计
那B1
那B2
, 和C1.
经过:
形成所需的滞后差异
将序列的第一个区别退出到问:滞后差异和估计的协整术语。
形成滞后差异系列。
q = 2;[numObs, numDims] = (Y)大小;tBase = (q + 2): numObs;%相称时间基础,所有滞后t =长度(tbase);%有效的样本大小ylags = lagmatrix(y,0:(q + 1));观察时间基础上的%y(t-k)ly = ylags(tbase,(numdims + 1):2 * numdims);相应时间基础上的%Y(T-1)
形成多维差异,使
numdims.
-Wide列块咪啶棒
包含(1-L)Y(T-K + 1)
。
deltaylags = zeros(t,(q + 1)* numdims);为了k = 1:(q + 1)deltaylags(:,((k-1)* numdims + 1):k * numdims)=......ylags(tbase,((k-1)* numdims + 1):k * numdims)......- ylags(tbase,(k * numdims + 1):( k + 1)* numdims);结尾dy = deltaylags(:,1:numdims);%(1-L)y(t)dly = deltaylags(:(numdims + 1):结束);%[(1-L)Y(T-1),...,(1-L)Y(T-Q)]
将序列的第一个区别退出到问:滞后差异和估计的协整术语。在回归中包含截距。
x = [(ly * beta-c0),dly,(t,1)];p =(x \ dy)';%α,B1,...,BQ,C1]alpha = p(:,1);B1 = P(:,2:4);B2 = P(:,5:7);C1 = P(:,结束);
显示VEC模型系数。
Alpha,B,C0,B1,B2,C1
alpha =3×1-0.6336 0.0595 0.0269
b =2×12.2209 -1.0718
C0 = -1.2393.
B1 =3×30.1649 -0.1465 -0.0416 -0.0024 0.3816 -0.3716 0.0815 0.1790 -0.1528
B2 =3×3-0.3205 0.9506 -0.9514-0.1996 0.5169 -0.5211-0.1751 0.6061 -0.5419
C1 =3×10.1516 0.1508 0.1503