非常感谢,感觉有点入门了。dynare感觉还不很成熟,我在dynare中某个地方块注释忘了删去,它只在运行时报告。如
上面的程序,我在红色的地方漏了删除一个块注释符:
var x y;
varexo e,u;
parameters rho beta;
beta=0.9;
rho=0.9;
model(linear);
y=beta*y(+1)+x+u;
x=rho*x(-1)+e;
end;
shocks;
var e; stderr 0.1;
var u; stderr 0.1;
end;
*/
stoch_simul(periods=900,order=1,irf=40,drop=400,nograph) y x;
save Simul_data y x;
varobs y x;
estimated_params;
rho, normal_pdf, 0.7, 0.2;
end;
estimation(datafile=Simul_data, mode_check, prefilter=1, order=1, mode_compute=1) y x;
//estimation(datafile=Simul_data,prefilter=1,mh_replic=500,mh_nblocks=2,mh_jscale=0.4,mode_compute=1,order=1,bayesian_irf,irf=30,mode_check) y x;
,它只在运行时报告说:
??? Error: File: simplest.m Line: 83 Column: 1
Unexpected MATLAB operator.
Error in ==> dynare at 120
evalin('base',fname) ;
有些功能应该放在dynare中完成为好,如dynare的注释和matlab是不同的,检查这方面的错误应由dynare完成;在参数估计时如果未增加冲击变量,可能会出现kalman滤波时的条件不满足,这在预处理时似乎也能由dynare提醒用户,但它没这么做或没做到。


雷达卡


留着以后看
京公网安备 11010802022788号







