I am trying to replicate a small open economy RBC model (info below).
Although I am using steady state values as the initial values Dynare cannot seem to find a solution
producing the following -usual- error:
SOLVE: maxit has been reached
??? Error using ==> print_info at 52
Impossible to find the steady state. Either the model doesn't have a unique steady state of the guess values are
too far from the solution
The model uses exact calibration values for the parameters in the paper.
The code is shown below. I would appreciate any help. Thanks.
[code]% RBC model for Argentina
% see J. Garcia-Cicco et al. (2010) “Real Business Cycles in Emerging Countries?”
close all
%----------------------------------------------------------------
% Defining variables
%----------------------------------------------------------------
var y c h k tb r d inv lm rp a g;
% NOTE: lm: lagrange multiplier
% rp: country risk premium
varexo e_a e_g;
parameters alpha theta beta omega psi phi gamma delta rstar dbar gbar rho_a rho_g sigma_a sigma_g;
%----------------------------------------------------------------
% 2. Calibration
%----------------------------------------------------------------
alpha = 0.32;
theta = 2.24;
omega = 1.6;
phi = 3.3;
psi = 0.001;
gamma = 2;
delta = 0.1255;
beta = 0.9224;
dbar = 0.007;
gbar = 1.005;
rstar = 1/beta*gbar^gamma-1;
rho_a = 0.765;
sigma_a = 0.027;
rho_g = 0.828;
sigma_g = 0.03;
%----------------------------------------------------------------
% 3. Model
%----------------------------------------------------------------
model;
lm = (c-thetah^omega/omega)^(-gamma);
rp = psi(exp(d(-1)-dbar)-1);
r = rstar + rp;
tb = y - c - inv - ((phi/2)(gk/k(-1)-gbar)^2)k(-1);
dg/(1+r) = d(-1)-tb;
inv = kg-(1-delta)k(-1);
y = exp(a)k(-1)^alpha(gh)^(1-alpha);
thetah^(gamma-1) = exp(a)(1-alpha)g^(1-alpha)(k(-1)/h)^alpha;
lmg^gamma = (beta)(1+r)lm(+1);
(g^gamma)lm(1+phi((k/k(-1))g-gbar)) = (beta)lm(+1)(1-delta+alphaexp(a(+1))(g(+1)h(+1)/k)^(1-alpha)
+phi(k(+1)/k)g(+1)((k(+1)/k)g(+1)-gbar)-0.5phi*((k(+1)/k)g(+1)-gbar)^2);
a = rho_aa(-1) + e_a;
log(g) = (1-rho_g)log(gbar) + rho_glog(g(-1)) + e_g;
end;
%----------------------------------------------------------------
% 4. Computation
%----------------------------------------------------------------
initval;
y = 0.2217;
c = 0.1791;
h = 0.1851;
k = 0.3217;
r = rstar;
d = dbar;
inv = 0.042;
tb = y-c-inv;
lm = 138.3395;
rp = 0;
a = 0;
g = gbar;
end;
shocks;
var e_a = sigma_a^2;
var e_g = sigma_g^2;
end;
check;
resid(1);
steady(solve_algo=3);[/code]