这是我们上时间序列课上的一个协整例子
我对这门课一直不明白,所以想请高手帮我分别解释一下分析结果,就是执行完程序后各个表都是怎麽分析和解释的。
我现在就要考试了,手头上还有一个类似的项目要交,现在还不明白,所以非常着急,希望热心的高手指点一下,感激不尽。
data bidon;
infile 'E:\Mes documents\serie temp\exemples\chom.txt' expandtabs;
input idf rc
date = intnx( 'qtr', '30sep1981'd, _n_ );
format date yyqs.;
run;
proc print;run;
symbol i=j;
symbol2 i=j;
proc gplot data=bidon;
plot idf*date rc*date / overlay legend;
run;
quit;
proc varmax data=bidon lagmax=5;
model idf rc / p=2 dify(1);
run;
proc arima data=bidon;
identify var= idf nlag=10 stationnarity=(DICKEY);
estimate p=2;
run;quit;
data bibi;
set bidon;
didf=dif(idf);
run;
proc print;run;
proc arima data=bibi;
identify var= didf nlag=10 stationnarity=(DICKEY);
estimate p=1;
run;quit;
proc arima data=bidon;
identify var= rc nlag=10 stationnarity=(DICKEY);
estimate p=2;
run;quit;
data bibi2;
set bidon;
drc=dif(rc);
run;
proc print;run;
proc arima data=bibi2;
identify var= drc nlag=10 stationnarity=(DICKEY); /*en passant en delta on exclu la constante donc ici on utilise taux et non taux mu*/
estimate p=1 noconstant;
run;quit;
proc varmax data=bidon lagmax=5;
model idf rc / p=2 dify(1);
run;
proc varmax data=bidon lagmax=5;
model idf rc / p=1 dify(1)noint;
run;
proc arima data=bidon;
identify var=idf(1);
estimate p=1 noconstant;
run;quit;
proc arima data=bidon;
identify var=rc(1);
estimate p=1 noconstant;
run;quit;
proc varmax data=bidon;
model idf rc / p=1 dify(1) noint;
causal group1=(idf) group2=(rc);
run;
proc varmax data=bidon;
model idf rc / p=1 dify(1) noint;
causal group1=(rc) group2=(idf);
run;
proc varmax data=bidon;
model idf rc / p=1 dify(1) noint lagmax=16 print=(impulse=(all)) printform=univariate;
run;
还有一个例子是用 proc iml的
proc iml ;
phi={1 0 0 ,0 1 0 ,1 -1 0};
sig={1 0 1 , 0 1 -1, 1 -1 3};
call varmasim( y , phi) sigma= sig n=200 seed=2002;
cn={'y1' 'y2' 'y3'};
create simul from y [colname=cn];
append from y;
quit;
data simul;
set simul;
date=intnx('quarter', '01Jan1955'd, _n_-1);
format date yyq4;
proc gplot data =simul;
symbol1 v=none i=join l=1;
symbol2 v=none i=join l=2;
symbol3 v=none i=join l=3;
plot y1*date =1
y2*date= 2
y3*date=3/overlay;
run;
proc varmax;
model y1 y2 y3 /p=1 cointtest =(johansen);
run;
proc varmax;
model y1 y2 y3 /p=2 cointtest =(johansen);
run;
proc varmax;
model y1 y2 y3 /p=1 ecm =(rank=1 normalise= y1) noint; 没有 常数
run;
proc varmax;
model y1 y2 y3 /p=1 ecm =(rank=1 normalise= y1 ectrend) ; *有常数;
run;
proc varmax;
model y1 y2 y3 /p=1 ecm =(rank=1 normalise= y1) ; *常数在外边;
run;