本人打算对序列做ADF检验,不知道怎么计算回归系数的t统计量,运行的结果与Eviews给出的t统计量值不同,不知道为什么?求高手指点!!!程序如下:warning off;
y=[
74.3 74.5 75.8 76.2 76.9 77.3 78.1 79.1 80.9 81.3 80.6 83.8 84.3 84.6 87.1 88.5 91.3
91.8 94.8 95 96.5 99.2 101.4 103.9 104.1 105.7 104.8 103.8 107.2 105.9 103 102.1 98.8 102.2 100.2 95.7 92.7
96.2 94.3 96.2 94.8 95.2 94.2 96.3 93.7 94.5 93 94 94 95.2 98.9 100 101.3 104.7 104.8 105.8 106.8 112.7 114.5 119.2
];
v=length(y);T=v;p=5;
m=diff(y); %m1是y的差分序列
%预分配相关变量内存,提高运行速度
t=zeros(T,1); %预分配内存,时间趋势项
dy=zeros(T,1); %预分配内存,y的滞后项
b=zeros(1+p,1);%预分配内存。b是参数矩阵,共有alpha,alpha1,rho,deta,beta1-5等9个系数
t_rho=zeros(1,1);%预分配内存,检验参数rho的t统计量
%回归方程中的解释变量
e=ones(T-p-1,1); %做回归时的截距项
b=zeros(p+1,1);
sigma2=zeros(p+1,1); %预分配内存,估计系数的方差
%ols回归
X=[y(p+1:v-1) m(5:v-2) m(4:v-3) m(3:v-4) m(2:v-5) m(1:v-p-1)];%解释变量矩阵
Y=m(6:v-1); %被解释变量
b = (X'*X)\(X'*Y); %b的第j列是OLS估计出来的系数,\是左除,表示inv(X'*X)*X*Y
RSS = (Y-X*b)' * (Y-X*b)/ (v-p-1); % 估计样本残差方差
sigma2=diag(RSS*eye(1+p)/(X'*X)); %估计系数的方差
t_rho=b(1)/sqrt(sigma2(1)); %计算rho的t统计值
per_1= -2.7391; %???给定分位点表
h1=1;h2=0;
if t_rho<per_1
h1 %在alpha=0.01时拒绝原假设,即数据平稳
else
h2 %在alpha=0.01时不拒绝原假设,单位根过程
end