When I run my two-country model in Dynare, it always notes that “Blanchard Kahn conditions are not satisfied: indeterminacy due to rank failure”. To deal with it correctly, I have tried to re-check the equations and change some parameters, and have read lots of correlative topics on the Dynare official forum, but it still doesn’t work. Additionally, the model_diagnostic command shows “the Jacobian of the static model is singular there is 4 colinear relationships between the variables and the equations”, but the 4 colinear equations are AR(1) equations. Also, the reason why I choose the coefficient in the last 4 equations, which value equals 1, is that I need permanent shocks.
I would appreciate it if you could help me.Thank you!
There are 11 eigenvalue(s) larger than 1 in modulus
for 11 forward-looking variable(s)
The rank condition ISN’T verified
print_info (line 48)
Blanchard Kahn conditions are not satisfied: indeterminacy due to rank failure
Impulsewithexp3 (line 435)
info = stoch_simul(var_list_);
dynare (line 180)
evalin(‘base’,fname) ;
model_diagnostics(M_,options_,oo_)
model_diagnostic: the Jacobian of the static model is singular
there is 4 colinear relationships between the variables and the equations
The presence of a singularity problem typically indicates that there is one
redundant equation entered in the model block, while another non-redundant equation
is missing. The problem often derives from Walras Law.
but when I remove these four AR(1) equation(make fE fEstar fX fXstar being exogeneous variables), there is no message after the command of model_diagnostics, while the same BK condition problem sill exist.
best
oishi Impulsewithoutexp2.mod (7.54 KB)
That is hard to diagnose. The model_diagnostics warnings come from the unit roots in your model. But that is a feature. There must be a deeper problem hidden in your model that is unrelated to the exogenous shock processes. I can only recommend to simplify the model as far as possible to get a working one and then start adding features again.
Dear professor jpfeifer:
Thank you for your suggestions, and I will try to simplify my model.
Also I have another question about the Figure 16 in your paper “A Guide to Specifying Observation Equations for the Estimation of DSGE Models” . I can’t figure out the timing structure of the interest rate or inflation rate. Should I treat them as normal variables like output Y or as predetermined variables like capital K? So, I wonder whether I should add (+1) after the rate in bond Euler equations or add ( -1) after the rate in accounting equations(In the code above, I add(+1) in bond Euler equations).
That all depends on your setup. For example, for risk-free bonds the interest rate is known at time t and shows up in the Euler equation with a time t timing. In contrast, the inflation rate is not known in advance. A typical Euler equation therefore is
Why don’t you properly derive your Euler equation for your model?
[quote=“jpfeifer”]That all depends on your setup. For example, for risk-free bonds the interest rate is known at time t and shows up in the Euler equation with a time t timing. In contrast, the inflation rate is not known in advance. A typical Euler equation therefore is
Why don’t you properly derive your Euler equation for your model?[/quote]
Dear Professor jpfeifer,
These are my Euler equations of Bonds and accounting equation. r is the risk-free rate of return. Q is the real exchange rate.
Also I can't figure out the difference between the end of time t-1 and the beginning of time t. e.g. the interest rate begins at the beginning of time t-1 and ends at the beginning of time t, so at time t there are two kinds of interest rate, the interest rate at the beginning of time t and the interest rate at the end of time t. so which interest rate can be used to calculate the interest at time t?
That's all. Thank you a lot!
What matters for the timing convention in Dynare is when a variable is decided upon. The variable gets a timing t-1 when it cannot be affected by e.g. a TFP shock happening at the beginning of period t.