var C lambda W N D Pi Y A MC m i a;
 
varexo eps_a eps_m;
 
parameters
beta sigma phi alpha epsilon kappa_r rho_a rho;
 
beta = 0.985;
sigma = 1;
phi=1;
alpha = 0.2;

epsilon = 6;
kappa_r = 5;
 
rho_a = 0.5;
 
rho = 1/beta-1;

model;
 
C^(-sigma) = lambda;
N^phi = lambda*W;
lambda = beta*(1+i)*lambda(+1)/Pi(+1);
C+D=W*N+D(-1)*(1+i(-1))/Pi;

epsilon-1-epsilon*MC+kappa_r*(Pi-1)*Pi=beta*lambda(+1)/lambda*(kappa_r*(Pi(+1)-1)*Pi(+1)*Y(+1)/Y);
MC = W/A;

C=Y;
Y=A*N;
A=1+a;
a=0.5*a(-1)+eps_a;

i= rho +1.5*ln(Pi)+m;
m=0.5*m(-1)+eps_m;

end;
 
initval;
 
i      	=	 0.0152284;
C      	=	 ((epsilon-1)/epsilon)^0.5;
lambda 	=	 (epsilon/(epsilon-1))^0.5;
W      	=	 (epsilon-1)/epsilon;
N      	=	 ((epsilon-1)/epsilon)^0.5;
D      	=	 9.99088;
Pi     	=	 1;
Y      	=	 ((epsilon-1)/epsilon)^0.5;
A      	=	 1;
MC     	=	 (epsilon-1)/epsilon;
end;
  
steady;
check;
 
shocks;
var eps_a; stderr 0.01;
var eps_m; stderr 0.0025;

end;
 
stoch_simul(irf=12)  i Pi Y ;