# Blanchard & Kahn conditions are not satisfied: no stable equilibrium

**URL:** <https://forum.dynare.org/t/blanchard-kahn-conditions-are-not-satisfied-no-stable-equilibrium/19903>\
**Category:** ML/Bayesian estimation\
**Created:** [3 March 2022 02:22 UTC](https://forum.dynare.org/t/blanchard-kahn-conditions-are-not-satisfied-no-stable-equilibrium/19903 "2022-03-03T02:22:24Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![jiji](https://forum.dynare.org/letter_avatar_proxy/v4/letter/j/2bfe46/32.png) [@jiji](https://forum.dynare.org/u/jiji)\
**Post date:** [3 March 2022 02:22 UTC](https://forum.dynare.org/t/blanchard-kahn-conditions-are-not-satisfied-no-stable-equilibrium/19903/1 "2022-03-03T02:22:25Z")

</div>

Hi all,  
I get the following error message when running the code: “Blanchard & Kahn conditions are not satisfied: no stable equilibrium.”.  
I’m currently looking for the cause, but it’s not clear. If anyone knows, I would be grateful if you could point out what went wrong.  
Thank you in advance!  
[Hz.mod](https://forum.dynare.org/uploads/short-url/8z0EH8tZV8PyfkVTryeqxBY5yZR.mod) (11.8 KB)

---

<div class="post-metadata">

**Author:** ![jpfeifer](https://forum.dynare.org/user_avatar/forum.dynare.org/jpfeifer/32/5044_2.png) [@jpfeifer](https://forum.dynare.org/u/jpfeifer)\
**Post date:** [4 March 2022 12:29 UTC](https://forum.dynare.org/t/blanchard-kahn-conditions-are-not-satisfied-no-stable-equilibrium/19903/2 "2022-03-04T12:29:12Z")

</div>

See

> [@B-K conditions are not satisfied but The rank condition is verified](https://forum.dynare.org/t/b-k-conditions-are-not-satisfied-but-the-rank-condition-is-verified/13620/2):
>
> Your model has a unit root. You need to use diffuse\_filter in the estimation-command

---

<div class="post-metadata">

**Author:** ![jiji](https://forum.dynare.org/letter_avatar_proxy/v4/letter/j/2bfe46/32.png) [@jiji](https://forum.dynare.org/u/jiji)\
**Post date:** [8 March 2022 01:04 UTC](https://forum.dynare.org/t/blanchard-kahn-conditions-are-not-satisfied-no-stable-equilibrium/19903/3 "2022-03-08T01:04:55Z")

</div>

Dear Johannes,  
As your suggestion, I used diffuse\_filter in the estimation-command.However, new problems arised.

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

The rank condition is verified.

initial\_estimation\_checks:: The forecast error variance in the multivariate Kalman filter became singular.  
initial\_estimation\_checks:: This is often a sign of stochastic singularity, but can also sometimes happen by chance  
initial\_estimation\_checks:: for a particular combination of parameters and data realizations.  
initial\_estimation\_checks:: If you think the latter is the case, you should try with different initial values for the estimated parameters.

ESTIMATION\_CHECKS: There was an error in computing the likelihood for initial parameter values.  
ESTIMATION\_CHECKS: If this is not a problem with the setting of options (check the error message below),  
ESTIMATION\_CHECKS: you should try using the calibrated version of the model as starting values. To do  
ESTIMATION\_CHECKS: this, add an empty estimated\_params\_init-block with use\_calibration option immediately before the estimation  
ESTIMATION\_CHECKS: command (and after the estimated\_params-block so that it does not get overwritten):

error initial\_estimation\_checks (line 153)  
initial\_estimation\_checks:: The forecast error variance in the multivariate Kalman filter became singular.  
error initial\_estimation\_checks (line 153)  
error(‘initial\_estimation\_checks:: The forecast error variance in the multivariate Kalman filter became singular.’)  
error dynare\_estimation\_1 (line 164)  
oo\_ = initial\_estimation\_checks(objective\_function,xparam1,dataset\_,dataset\_info,M\_,estim\_params\_,options\_,bayestopt\_,bounds,oo\_);  
error dynare\_estimation (line 105)  
dynare\_estimation\_1(var\_list,dname);  
error papert.driver (line 1150)  
oo\_recursive\_=dynare\_estimation(var\_list\_);  
error dynare (line 293)  
evalin(‘base’,[fname ‘.driver’]) ;

---

<div class="post-metadata">

**Author:** ![jpfeifer](https://forum.dynare.org/user_avatar/forum.dynare.org/jpfeifer/32/5044_2.png) [@jpfeifer](https://forum.dynare.org/u/jpfeifer)\
**Post date:** [8 March 2022 08:29 UTC](https://forum.dynare.org/t/blanchard-kahn-conditions-are-not-satisfied-no-stable-equilibrium/19903/4 "2022-03-08T08:29:00Z")

</div>

Now your are facing stochastic singularity, because you are not allowed to observed a perfect linear combination of variables.

Take

```auto
Ghat = That*Tss/Gss+Mhat*Mss/Gss-(Mhat(-1)-pihat)*Mss/(Gss*piss);

```

From what I can see, all variables in that equation are declared as observed.
