Steady state okay, but BK condition -> no stable equilibrium

I have been stuck in this problem for a while. My steady state is okay, but when I run stochastic simulation, Matlab says that the B-K conditions are not satisfied, due to no stable equilibrium. I have checked the structure of the model, and the values of the parameters and initial values. But I still can not fix this B-K problem. Any help from this forum would be appreciated!

??? Error using ==> print_info at 39
Blanchard Kahn conditions are not satisfied: no stable equilibrium

Error in ==> stoch_simul at 71
print_info(info, options_.noprint);

Error in ==> model4b0 at 341
info = stoch_simul(var_list_);

Error in ==> dynare at 120
evalin(‘base’,fname) ;

Hi LittlkeFish,

The Blanchard-Kahn conditions are needed to calculate the policy functions that solve the model.
Use the “check;” command just after “steady;” to be sure that they are fulfill before the “stoch_simul” command.
check; will give you the number of jump variables and the number of eigenvalues larger than one. The two numbers should be the same.

Unfortunately, there is no general method to find where the problem comes from. But, most of times, an equation is writen in expectation instead of realized values (like capital accumulation) or the reverse. It may also comes from the parameters of the monetary rule (Taylor principle).

A way to find the solution is to simplify the model (to three or four equations) and rebuilt it blocks after blocks (capital, open economy, price rigidities, etc.) and to check at each iteration if the blanchard-kahn conditions are ok.

It may take time, but never forget that “A well designed model always fulfill BK.”

Good luck

[quote=“bcarton”]Hi LittlkeFish,

The Blanchard-Kahn conditions are needed to calculate the policy functions that solve the model.
Use the “check;” command just after “steady;” to be sure that they are fulfill before the “stoch_simul” command.
check; will give you the number of jump variables and the number of eigenvalues larger than one. The two numbers should be the same.

Good luck[/quote]

Thanks, bcarton. I just typed ‘check’ after finding the steady state:

check

EIGENVALUES:
Modulus Real Imaginary

   2.825e-33       -2.825e-33                0
   3.355e-15        3.355e-15                0
   2.806e-08        1.979e-15        2.806e-08
   2.806e-08        1.979e-15       -2.806e-08
         0.5              0.5                0
       0.623            0.623                0
       1.532           -1.532                0
         Inf              Inf                0
         Inf              Inf                0

There are 3 eigenvalue(s) larger than 1 in modulus
for 4 forward-looking variable(s)

The rank conditions ISN’T verified!

=> So what should I do in order to make the # of eigenvalues = # of forward-looking variables? Thanks!

Hi!!

Could you fix the problem?? I’m having the same problem now and I’m pretty lost here :confused:

Thank you!!

Check your timing.