Ellika
April 6, 2023, 3:35pm
1
% This file is modified by Zhong Yue @ 2023-4-06 to run in Dynare
var y c inv n k d rk w a g taok taon r ;
varexo ea eg ek en;
parameters beta delta alpha theta chi rhok rhon gammak gamman rhog rhoa gs;
parameters kns Rs Ws cns Ns Ks Cs Is Ys Gs rs Ds taoks taons DYs As;
beta = 0.99;
delta = 0.025;
alpha = 0.33;
chi = 2;
theta = 4;
gs = 0.2;
rhoa = 0.95;
rhon = 0.9;
rhog = 0.9;
rhok = 0.9;
gammak = 0.025;
gamman = 0.025;
DYs = 0.5;
taoks = 0.3;
taons = 0.2;
As = 1;
model;
%(1)Euler Equation
1/exp(c)=beta*(1/exp(c(+1))*((1+taok(+1))*exp(rk(+1))+1-delta));
%(2)intertemporal
1/exp(c)=beta*(1/exp(c(+1))*(1+r));
%(3)labour demand
exp(w)=(1-alpha)*exp(a)*exp(k(-1))^(alpha)*exp(n)^(-alpha);
%(4)capital demand
exp(rk)=alpha*exp(a)*exp(k(-1))^(alpha-1)*exp(n)^(1-alpha);
%(5)labour supply
theta*exp(n)^(chi)=1/exp(c)*(1-taon)*exp(w);
%(6)production
exp(y)=exp(a)*exp(k(-1))^(alpha)*exp(n)^(1-alpha);
%(7)resource constraint
exp(y)=exp(c)+exp(inv)+exp(g);
%(8)capital accumulate
exp(k)=exp(inv)+(1-delta)*exp(k(-1));
%(9)government budget constraint
exp(g)=taok*exp(rk)*exp(k(-1))+taon*exp(w)*exp(n)+exp(d)-(1+r(-1))*exp(d(-1));
%(10)a
a=rhoa*a(-1)+ea;
%(11)g
g=(1-rhog)*log(gs*Ys)+rhog*g(-1)+eg;
%(12)taok
taok=(1-rhok)*taoks+rhok*taok(-1)+(1-rhok)*gammak*(exp(d)/exp(y)-DYs)+ek;
%(13)taon
taon=(1-rhon)*taons+rhon*taon(-1)+(1-rhon)*gamman*(exp(d)/exp(y)-DYs)+en;
end;
steady_state_model;
kns = ((alpha*(1-taoks))/(1/beta - (1-delta)))^(1/(1-alpha));
Rs = alpha*kns^(alpha-1);
Ws = (1-alpha)*kns^(alpha);
cns = (1-gs)*kns^(alpha) - delta*kns;
Ns = (((1-taons)*(1-alpha)*kns^(alpha))/(theta*cns))^(1/(1+chi));
Ks = kns*Ns;
Cs = cns*Ns;
Is = delta*Ks;
Ys = kns^alpha*Ns;
Gs = gs*Ys;
rs = 1-1/beta;
Ds = DYs*Ys;
y = log(Ys);
c = log(Cs);
k = log(Ks);
inv = log(Is);
n = log(Ns);
d = log(Ds);
g = log(Gs);
a = log(As);
w = log(Ws);
rk = log(Rs);
r = rs;
taok = taoks;
taon = taons;
end;
resid;
model_diagnostics;
steady;
check;
shocks;
var ea = 0.1;
var eg = 0.1;
var ek = 0.1;
var en = 0.1;
end;
stoch_simul(order=1,irf=40);
The erro implies the residuals of Equation 1, Equation 2, Equation 9
are not zero. You could check the steady state value of variables rk、c、r
in this three functions.
Equation 1, Equation 2, Equation 9