Why default planner_discount is 1.0 in ramsey_policy OPTION?

Dear,
I am writing a code for Optimal monetary Policy paper, BUT I am meeting a problem as the below:
“planner_objective(Xt+ammt-anexp(Nt)+thestart+(muutilt-thestart)exp(F1t)-(exp(sigtilt)/(2pipi)^(1/2))exp(-(thestart-muutilt)^2/(2exp(sigtilt)^2)));
ramsey_policy(planner_discount=1.0045, graph, irf=20, periods=1000, instruments=(Rt));”

Why default planner_discount is 1.0 in ramsey_policy OPTION?
What’s the meaning of “planner_discount”? Is it the time discount factor, such as 0.995,0.99, etc.?

  1. If I set planner_discount=1.0, the code CANNOT work:
    “??? Error using ==> print_info at 45
    Blanchard Kahn conditions are not satisfied: indeterminacy”.
  2. If I set planner_discount=1.0045, the code can work:
    "Approximated value of planner objective function
    • with initial Lagrange multipliers set to 0: 172.3171
    • with initial Lagrange multipliers set to steady state: -277.9055".
  3. If I set planner_discount=0.999, or 0.994, or 0.996, the code CANNOT work:
    “??? Error using ==> print_info at 42
    Blanchard Kahn conditions are not satisfied: no stable
    equilibrium”.
  4. If I set planner_discount=0.995, the code CANNOT work:
    “??? Error using ==> print_info at 54
    One of the eigenvalues is close to 0/0 (the absolute value
    of numerator and denominator is smaller than 1e-006!
    If you believe that the model has a unique solution you
    can try to reduce the value of qz_zero_threshold.”

the attaches are my codes, for your ref.:Benchcapifliendom.mod (13.4 KB)Funccapifliendom.m (684 Bytes)
Funccapifliendomini.m (1.3 KB)
RunBenchcapifliendomIRF.m (7.5 KB)

Thanks!
Jianfeng Liu

  1. Yes, the planner_discount refers to the discount factor of the Ramsey planner for the period utility function you are providing in the planner:objective
  2. It is quite hard to trace out what is going on. You are using a steady_state_model`-block, but with fixed values. What you should be using is a conditional steady state file, i.e. one that provides the steady state conditional on the value of the instrument. Otherwise, it will not properly work.
  3. Please use Dynare 4.5 as there have been significant bugfixes related to optimal policy.

Hi, jpfeifer,
Many thanks for your reply!
Could you please give a simple sample for “a conditional steady state file, i.e. one that provides the steady state conditional on the value of the instrument”? Is it another seperate “XXX_steadystate.m” file with same name? By the way, how to introduce the “steadystate” file in the main codes, is it still by using “steady” and “check” command?
Thanks again!

BR
Jeff Liu

An example is here at https://github.com/DynareTeam/dynare/blob/master/tests/optimal_policy/Ramsey/ramsey_ex.mod
The point is that you take the instrument value as given and then provide the steady state for the rest given that value.

Dear jpfeifer:
Many thanks for fast supporting and sorry for later to reply you! I will follow your suggestion to continue my codes and once it’s fixed, I will feedback to you!

Thanks again!
BR
Jianfeng, Liu

Dear jpfeifer:
Please be informed I have already fixed this problem with your friendly supportings.
I rewirted my steady-state-model to be conditional the instrument. Because in this New Keynes model, there are some steady-state variables, although they have already been conditional the instrument, I still used the fixed steady-state-values for all variables. Anyway, it’s workable now.
Many thanks!

BR
Jianfeng, Liu