Hello everyone,
I am working on a small-open NK-DSGE model with labor market search and matching frictions (a “NK-SME” extension). The model runs and converges, but the steady-state value of consumption (C) is negative, even though all other steady-state variables look reasonable.
I’ve already written a robust steady-state file that solves for theta, mc, w, and Rk through nested fixed-point iterations. The code runs successfully in Dynare 6.4, using my own modelo_final_steadystate.m.
Here are the steady-state results (variables are all explained on the files attached):
STEADY-STATE RESULTS:
C -0.850369
I 4.61573e-05
K 0.00184629
Y 0.149677
w 0.00684574
Rk 0.704108
R 1.67911
pi 0.587688
mc 0.0263191
n 0.99347
u 0.00652974
v 0.123389
theta 18.8965
m 0.0198694
f 3.04291
q 0.16103
J 0.0621002
Pi 0.145737
A 1.2
X 1
S 1
All static residuals are zero, and the model runs smoothly with stoch_simul(order=1, irf=20). However, despite consistent FOCs and resource constraints (Y = C + I + S), consumption remains negative. I suspect the issue may come from:
-
either a scaling or calibration inconsistency between the output and real wage equations,
-
or possibly the definition of marginal cost and output normalization.
Question:
What could be driving negative steady-state consumption in this type of model? Could it be a normalization error (e.g., scaling of mc or wage), or a deeper issue in the calibration/production side? Any guidance on how to fix or diagnose this would be greatly appreciated.
I’ve attached the .mod and steady-state .m files below for reference.
Thanks in advance,
César M. Martínez
modelo_final.mod (3.0 KB)
modelo_final_steadystate.m (7.7 KB)