Eigenvalues larger than 1 in modulus for some forward-looking variables

Hi,

I used dynare to run the attached code to try to replicate the results of a paper. However, it reported that

Blockquote
There are 5 eigenvalue(s) larger than 1 in modulus
for 6 forward-looking variable(s)
The rank condition ISN’T verified!
error: Blanchard Kahn conditions are not satisfied: indeterminacy

Then I employed the command " model_diagnostics". And it told me that

Blockquote
error: ‘M’ undefined near line 38 column 12
error: called from
model_diagnostics at line 38 column 10

I have no idea how to deal with it now. Is there anyone who can help me? I will really appreciate your help.

Best,

Samsonparams.m (780 Bytes)
main201808.mod (2.8 KB)
main201808_steadystate.m (4.8 KB)

How did you call the model_diagnostic routine? Did you pass M_, options_ and oo_ (in that order) as input arguments?

Best,
Stéphane.

Dear Stephane,

I first ran ‘dynare main201808’. It showed

Blockquote
There are 5 eigenvalue(s) larger than 1 in modulus
for 6 forward-looking variable(s)
The rank condition ISN’T verified!
error: Blanchard Kahn conditions are not satisfied: indeterminacy

In order to find a way dealing with it, I googled and found a kind of suggestion about using “model_diagnostics” from dynare forum. Then I typed “model_diagnostics” in command window and the following report showed up.

Blockquote
error: ‘M’ undefined near line 38 column 12
error: called from
model_diagnostics at line 38 column 10

Actually in my “main201808_steadystate.m”, I used “M_.params” and “M_.orig_endo_nbr” to calculate the steady state. Thank you.

Best regards,

Pin

To be sure, did you type the following:

>>  model_diagnostics(M_, options_, oo_)

But I am not sure that this command will help to understand why you have too many stable eigenvalues (indeterminacy).

Best,
Stéphane.

Dear Stephane,

I typed “model_diagnostics(M_,options_,oo_)”. Then the following result displayed.

Blockquote
model_diagnostics(M_, options_, oo_)
MODEL_DIAGNOSTICS: No obvious problems with this mod-file were detected.

It sounds like it did not work. Is there any other way I can use?

Thank you,

Samson

You need to check the timing of your equations. For example, usually the FOC for consumption has forward-looking terms.

Dear Professor,

I got it. Thank you for your helpful advice. I eventually fixed my problem.

Best regards,

Samson

Dear Samson,

How did you fixed the problem, I have been facing same challenges for some weeks now. I have worked on the timing, but still having the same issue. I will appreciate if you can work me through. Thank you.

I’m dealing with the same problem. I’ve tried changing the calibration, but the problem persists. When I run the model, the following message appears:

Blockquote
There are 13 eigenvalue(s) larger than 1 in modulus
for 12 forward-looking variable(s)
The rank condition ISN’T verified!

The message is followed by:

Blockquote
Error using print_info (line 32)
Blanchard & Kahn conditions are not satisfied: no stable equilibrium.

However, when I run model_diagnostics, there are no error indications:

Blockquote
MODEL_DIAGNOSTICS: No obvious problems with this mod-file were detected.

I send my .mod file and the m. file for calculating the steady state values (which are parameters in the already linearized model). Thank you in advance for any help.

test1_steadystate.m (8.7 KB)
test1.mod (9.5 KB)

Dear Jplimagomes,

How did you fixed the problem, I have been facing same challenges for some weeks now. I have worked on the timing, but still having the same issue. I will appreciate if you can work me through. Thank you.

When you encounter with Blanchard-Kahn failure in Dynare results in many cases this problem is due to the timming issue for some variables in the model specially predetermined variables such as Capital stock or K or other predetermined variables.This type of variables appear in time t and t-1 in the model. Altough in theoritical papers or some DSGE books or macroeconomic books this type of variables are witten in time t and t+1 for example :

K_{t+1}=I_{t}+(1-\delta)K_{t}

We can write this predetermined variable in the following form:

K_{t}=I_{t}+(1-\delta)K_{t-1}

For stability in the model number of eigenvalues higher than 1 should equal to the purely forward looking variables or jumpers.

Purely forward looking variables or jumpers appear in the model in t and t+1

Therefore timming issue for the variables in the model is vary important.

Dynare can identify predetermined variables with time t and t-1 and mixed variables in time t , t-1 , and t+1 .

Thank you, Professor. I believe there may be an issue with my model. Despite recent modifications, I have been unable to calculate the steady-state values. I would greatly appreciate your assistance with this matter at your earliest convenience. Attached is the code for my model. Thank you.
g.mod (3.3 KB)

Check your model. For example, g has a steady state of 1, but that is inconsistent with the use of exp(g) elsewhere.

I run the model in my laptop with Dynare 6.

It seems that in some of the equations you did not complying MATLAB arithmetic operator precedence exactly, for example parentheses, power,multiplication, division and so on. This issue may cause problem when you solve the model in MATLAB.

In addition to the above point , I think that your initial values for some of the variables are not suitable.