%% test2.mod

clear all;
close all;


var c h y k u rk lo R inv pi_p pi_w w mc mrs inv_shock;
varexo eta;

%%% ENDOGENOUS VARIABLES %%%
% c: aggragate consumption
% y: output
% k: capital stock
% u: capital utilization
% rk: rental rate of capital services
% lo: lambda in household maximization problem
% R: nominal interest rate
% inv: investment
% pi_p: price inflation
% pi_w: wage inflation 
% w: real wage
% mc: marginal costs
% mrs: marginal rate of substitution
% inv_shock: investment shock




parameters sigma beta phi  gammau2 delta alpha episw episp episilon phi_r phi_pi phi_y rho mcss rkss gammau1 wss KHratio YKratio IYratio CYratio CHratio  hss css;

%%% Paramenters & Steady State %%%
sigma=1.5;                %intertemporal elasticity (Smets & Wouters 2007)
beta= 0.99;              %discount factor
phi=2;                   %elasticity of hours supply (Smets & Wouters 2007)  MOLTO DIVERSO DA ANNA

gammau2=0.2696;              %utilization parameter 
delta=0.025;            %depreciation rate
alpha=0.3;              %capital share in the production funciton
episilon=.75; % parameter that defines marginal cost --> questo diverso
phi_r=0.7;      %interest rate smoothing (Smets & Wouters 2007)
phi_pi=1.7;     %taylor rule parameter on inflation (CCW 2008)
phi_y=0.5/4;    %taylor rule parameter on output (CCW 2008) 0.5/4   ??
rho=0.5;   %Autoregressive coefficient of the investment Shock 
%Rss=1/beta;  % ------> da eliminare, non usato
episw=0.75;                  %wage rigidity
episp=0.75;               %price rigidity

mcss=(episilon-1)/episilon; %questo ok

rkss=(1-delta)/(beta*1);
gammau1=rkss;         %---->gammau1=rkss


wss=(((episilon-1)/episilon)*((1-alpha)/rkss)*alpha^alpha)^(1/(1-alpha)); %--> da cambiare epislon del wage non del price


KHratio=(rkss/(mcss*alpha))^(1/(1-alpha));
YKratio=KHratio^(1-alpha);
IYratio=delta*YKratio^(-1);
CYratio=-IYratio+1;  %capital to output ratio
CHratio=YKratio*KHratio-delta*KHratio;
hss= wss^(1/phi);
css= CHratio*hss;


%IKratio=delta; %----> da eliminare









%%%%%%%%%%%%%% THE LOG-LINEARISED MODEL

model (linear);
%EQ. 1  Households' FOC for consumption  X
lo=(sigma*(css-(hss^(1+phi))/(1+phi))^(-1))*(css*c-(1-phi)*h*hss^(1+phi));

%EQ. 2 Foc wrt to labour and substituted into foc with respect to consumption / REAL WAGE EQUATION  X
w=phi*h;

% Eq. 5 Foc wrt to Bond (beta) X
lo=R-pi_p+lo(+1);

%Foc wrt to Capital  X
lo=inv_shock+lo(+1)+1*beta*rkss*rk(+1)+beta*(rk(+1)-gammau1+(1-delta))*u(+1)-beta*(1-delta)*inv_shock(+1);

%EQ. 4 Households' FOC for utilization X
rk=gammau2/gammau1 *u;

%EQ.  Capital accumulation
k=(1-delta)*k(-1) +inv_shock*delta*inv+delta*inv;


%EQ. 8  Marginal rate of sub
mrs=-phi*h;

%%%%%%%%%%%%%%%%%%%%%%%%%%% FROM THE FIRM PROBlem

%Eq.13 X
u+k(-1)-h=w-rk;

%EQ. 14 Marginal costs X
mc=alpha*rk+(1-alpha)*w;

%EQ. 13 Production function X
y=alpha*k(-1)+(1-alpha)*h+alpha*u;


%%%%%%%% INFLATION EQUATIONS

%EQ.  Wage inflation 
pi_w=beta*pi_w(+1)-(((1-episw)*(1-beta*episw))/episw)*(w-mrs);

%EQ.  Price inflation
pi_p = beta*pi_p(+1)+(((1-episp)*(1-beta*episp))/episp)*mc;




%%%%% MARKET CLEARING & TAYLOR RULE

%EQ. Market Clearing condition X
y=c*CYratio+inv*IYratio+gammau1*u*YKratio^(-1);


%EQ. 14 Taylor rule X
R=phi_r*R(-1)+(1-phi_r)*(phi_pi*pi_p+phi_y*y);



% 15. Investment shock X
inv_shock=rho*inv_shock(-1)+eta;



end;


steady;
check;

shocks;

var eta=0.01^2;
end;

stoch_simul(irf=40);
