// from Schorfheide (2000)

var P C W R K D N L Y gA gM gp_obs gy_obs;
varexo e_a e_m;

parameters alp bet gam gMstar rho psi del;

alp = 0.33;
bet = 0.99;
gam = 0.003;
gMstar = 1.011;
rho = 0.7;
psi = 0.787;
del = 0.02;

model;
P/(C(+1)*P(+1)*gM) = bet*P(+1)*(alp*gA(+1)^(-alp)*K^(alp-1)*N(+1)^(1-alp)+(1-del)/gA(+1))/(C(+2)*P(+2)*gM(+1));
W = L/N;
(psi/(1-psi))*(C*P/(1-N)) = W ;
R = P*(1-alp)*gA^(-alp)*K(-1)^alp*N^(-alp)/W;
1/(C*P) = bet*R/(gM*C(+1)*P(+1));
C+K = Y+(1-del)*K(-1)/gA;
P*C = gM;
gM-1+D = L;
Y = K(-1)^alp*N^(1-alp)*gA^(-alp);
log(gA) = gam + e_a;
log(gM) = (1-rho)*log(gMstar) + rho*log(gM(-1))+e_m;
gp_obs = (P/P(-1))*gM(-1)/gA;
gy_obs = (Y/Y(-1))*gA;
end;

steady;
check;

estimated_params;
alp, beta_pdf, 0.356, 0.02; 
bet, beta_pdf, 0.993, 0.002;
gam, normal_pdf, 0.0085, 0.003;
gMstar, normal_pdf, 1.0002, 0.007;
rho, beta_pdf, 0.129, 0.223;
psi, beta_pdf, 0.65, 0.05;
del, beta_pdf, 0.01, 0.005;
stderr e_a, inv_gamma_pdf, 0.035449, inf;
stderr e_m, inv_gamma_pdf, 0.008862, inf;
end;

varobs gp_obs gy_obs;

estimation(datafile=fsdat,nobs=192,mh_replic=500000,mh_jscale=0.8,loglinear);
//estimation(datafile=fsdat,nobs=192,mh_replic=10000,mh_jscale=0.8,loglinear,mode_compute=0,mode_file=fs2000B_mode);
//estimation(datafile=fsdat,nobs=192,mh_replic=5000,mh_jscale=0.8,loglinear,mode_compute=0,mode_file=fs2000B_mode,load_mh_file);
