
var y g r dp n a wp mc mrs dw;
varexo ea eg ez emu;
parameters delta bet epsilon gamm rhor gammapi gammay rhoa rhog sigmaa sigmag sigmaz sigmamu thetap_t sigma;

%Definition of parameters

    delta = 0.36;
    bet = 0.99;
    epsilon = 6;

    thetap_t = 3;
    gammapi = 2.1;
    gammay = 0.125;
    rhor = 0.5;
    sigma = 1/2.5;
    gamm = 1;
    rhoa = 0.5;
    rhog = 0.5;
    sigmaa = 0.5;
    sigmag = 0.5;
    sigmaz = 0.5;
    sigmamu = 0.5;






%Model Equations

model;
#thetap = thetap_t/(thetap_t + 1) ;

    y = y(+1) - sigma*(r - dp(+1) + g(+1) - g);
    y = a + (1-delta)*n;
    mc = wp + n - y;
    mrs = (1/sigma)*y + gamm*n - g;
    r = rhor*r(-1) + (1-rhor)*(gammapi*dp + gammay*y) + sigmaz*ez;
    wp = wp(-1) + dw - dp;
    a = rhoa*a(-1) + sigmaa*ea;
    g = rhog*g(-1) + sigmag*eg;
    dp = bet*dp(+1) + (1-thetap)*(1-bet*thetap)*(1-delta)/(thetap*(1-delta + delta*epsilon))*(mc + sigmamu*emu);
    wp = mrs;

end;


%Initial values for the computation of the steady state 
initval;
    y = 0;
    g = 0;
    r = 0;
    dp = 0;
    n = 0;
    a = 0;
    wp = 0;
    mc = 0;
    mrs = 0;
    dw = 0;
end;

%shocks;
%    var ea = sigmaa;
%    var eg = sigmag;
%    var ez = sigmaz;
%    var emu = sigmamu;
%end;

%steady;
%stoch_simul(order=1, irf=40,periods=1000) y r n wp dp mc mrs dw;




estimated_params;
    stderr ea, uniform_pdf, , , 0, 1 ;
    stderr ez, uniform_pdf, , , 0, 1 ;
    stderr eg, uniform_pdf, , , 0, 1 ;
    stderr emu, uniform_pdf, , , 0, 1 ;
    sigma, inv_gamma_pdf, 0.67, 0.9;
    gamm, normal_pdf, 1, 0.5;
    rhor, uniform_pdf, , , 0, 1 ;
    rhoa, uniform_pdf, , , 0, 1 ;
    rhog, uniform_pdf, , , 0, 1 ;
    gammapi, normal_pdf, 1.5, 0.5 ;
    gammay, normal_pdf, 0.125, 0.125 ;
    thetap_t, gamma_pdf, 2, 1.42 ;



end;

varobs y r dp wp;


estimation(datafile=data);
