Recursive Ramsey and welfare ranking

Dear Dynare’s users,

I would like to ask for your support in helping me to solve an odd welfare ranking result, if possible, please. Check column C of the “Table.png” file (click here).

As you see in the former Table, the Strict Domestic Inflation (-41.754) delivers higher welfare than the one attained under the Ramsey policy (-41.773). Clearly, this goes against theoretical intuition, and consequently, I wonder what could be wrong or explain such an outcome.

“Conditional welfare” numbers are the representative agent’s utility function values at the steady state. Note that the competitive equilibrium steady state is imposed on all the regimes (including that of the recursive Ramsey planner). [The odd welfare ranking outcome does not change if the recursive Ramsey planner regime is imposed on all the regimes instead.]

The model is solved by relying on a second-order perturbation approximation. Therefore, welfare steady states are equal at first-order (-41.507; see column D) but differ in second-order (column E), as expected. In that regard, one would hope that the recursive Ramsey planner optimizes welfare and minimizes uncertainty (at the stochastic steady state) as much as possible. That is to say, the second-order uncertainty term of welfare at the steady state should be the least among all the regimes. However, it turns out that the second-order term of welfare at the steady state under the strict domestic inflation regime (-0.247) is more desirable than the uncertainty constant term reported under the Ramsey planner (-0.266). So, I wonder how could I explain and/or solve this issue.
[Although this recursive Ramsey approach penalizes for any past/present commitment deviation/s, I still believe welfare should be optimal --and not suboptimal, as it’s the case–. Moreover, the planner under this regime yields the best stabilization policy for the economy (i.e., all real macro variables allocations are optimally assigned and have lower volatilities). Even welfare volatility is the lowest under this regime. So, it is curious why the uncertainty constant term is higher under the Ramsey policy].

Conditional welfare is calculated as briefly detailed in image “Welfare.png” file (click here)

In terms of codes, I calculate the respective steady states as

weo = M_.params(strmatch(‘weSS’,M_.param_names,‘exact’))+0.5*oo_.dr.ghs2(oo_.dr.inv_order_var(strmatch(‘we’,M_.endo_names,‘exact’))) % Welfare level under this specific monetary policy regime.

The value for the parameter \beta = 0.99163. But even if I try to multiply the uncertainty constant term by the parameter \beta, I still cannot get a higher value for welfare under the Ramsey planner (in comparison to the rest of the regimes).

Note that this Recursive Ramsey approach (á la Marcet and Marimon, Recursive Contracts | The Econometric Society) is different from the one attained under the Timeless Perspective Approach (à la Woodford).

The *.mod file can be found in this folder (click here).

Any help on this issue is more than welcome.

  1. Have you tried whether you get something similar with Dynare’s builtin Ramsey routine?
  2. How do you deal with the steady state of the Ramsey multipliers that should show up for conditional welfare? Is it clear that this steady state is unique and you are selecting the right one?

Dear Prof. Pfeifer,

Thank you very much for your reply. As of your questions, I was checking my calculations and I obtained a welfare ranking as it is expected. I let the Ramsey planner choose other parameters that I left fixed at the beginning (alp, nu and chi). However, I have some doubts that are based upon your questions.

  1. I’ll keep trying to do that option.
    2.1. According to the derivation I follow from Faia and Monacelli (2008) I do not see how Lagrangian multipliers could affect the conditional welfare as specified in Faia and Monacelli (2007) Redirecting
    2.2. How can I be sure that the steady state is unique? Should I use a solver like fsolve or fminsearch?

Thank you,

2.1 Sometimes there are lagged multipliers showing up as state variables. Their values would obviously matter for conditional welfare.
2.2 How did you find the current steady state?

2.1. Yes. There are lagged multipliers that track past commitments and penalize deviations. They are a consequence of the saddle-point functional equation framework that is used to solve the problem.
2.2. I found the current steady state following Faia (2009) . It is the steady state under the recursive Ramsey framework.

Thank you for your reply, Prof. Pfeifer.

  1. But to which value do you set these multipliers when doing conditional welfare?
  2. What I am saying is that the steady state of the nonlinear Ramsey problem mentioned in Faia (2009) may not be unique. You impose that there may not a different steady state than the one you selected with your hardcoded values.
  3. Are you computing the welfare analytically or with simulations. Also, we don’t know what the effect of pruning is on such computations.
  1. Multiplier values are set to values that satisfy the steady state first-order conditions of the Ramsey planner and to those of the competitive version of the model (the resource constraint and the proportion of home-intermediate goods to total home-produced goods).
  2. OK. But, what if the steady state I found satisfies the restrictions I mention in 1? Would this mean that is the only steady state? How could I find a different steady state to one I get? How could I test it?
  3. I compute welfare analytically. What you say about pruning is a good point. Would the effects of pruning differ in every model ranked based on welfare measurements?
  4. I guess that the own structure of the recursive Ramsey (solved as a saddle-point functional equation with current and lagged multipliers) as the nonlinearities in the model, and the second-order approximation solution (even more with the pruning option) would affect the welfare computation to some extent (specificaly to the second-order constant term). I guess that these considerations could add more uncertainty and be reflected in a (probably) bigger second-order constant term.
  5. What would be your opinion/suggestion to this approach?