Differences between revisions 4 and 5
Revision 4 as of 2009-03-26 14:57:12
Size: 2834
Comment: The preprocessor does not like "inf" as a variable name ! (problem with INF_CONSTANT).
Revision 5 as of 2009-03-27 09:20:39
Size: 2840
Comment: Typo correction
Deletions are marked like this. Additions are marked like this.
Line 29: Line 29:
inf = alpha * inflation(-1) + (1-alpha) * inflation(+1) + kappa*y + inf_; inflation = alpha * inflation(-1) + (1-alpha) * inflation(+1) + kappa*y + inf_;

Optimal Policy

Dynare can compute Ramsey policy and optimal simple rules

Ramsey policy

computes the first order approximation of the policy that maximizes the policy maker objective function submitted to the constraints provided by the equilibrium path of the economy.

Ramsey policy replaces OLR in Dynare version 3:

Example:

var y inflation r;
varexo y_ inf_;

parameters delta sigma alpha kappa gammarr gammax0 gammac0 rbar lambda1 lambda2;

delta =  0.44;
kappa =  0.18;
alpha =  0.48;
sigma = -0.06;
lambda1 = 0.5;
lambda2 = 0.1;

model(linear);
y  = delta * y(-1) + (1-delta) * y(+1) + sigma *(r - inflation(+1)) + y_; 
inflation  =   alpha * inflation(-1) + (1-alpha) * inflation(+1) + kappa*y + inf_;
end;

shocks;
var y_;
stderr 0.63;
var inf_;
stderr 0.4;
end;

planner_objective inflation^2 + lambda1*y^2 + lambda2*r^2;

ramsey_policy;

Notes:

  • There must be less equations than endogenous variables. The difference is the number of instrument to be chosen optimally.
  • For this reason, you can't use steady or check before ramsey_policy

  • Pure Ramsey policy or optimal policy in a timeless perspective depends on the initial values of the Lagrange multipliers, but the recursive equations are the same.
  • ramsey_policy isn't limited to linear models or quadratic objective functions.

Optimal simple rule

With optimal simple rule (OSR), Dynare searches numerically the best value for the coefficients of some prespecifed policy rule.

Example:

var y inflation r;
varexo y_ inf_;

parameters delta sigma alpha kappa gammarr gammax0 gammac0 gamma_y_ gamma_inf_;

delta =  0.44;
kappa =  0.18;
alpha =  0.48;
sigma = -0.06;


model(linear);
y  = delta * y(-1)  + (1-delta)*y(+1)+sigma *(r - inflation(+1)) + y_; 
inf  =   alpha * inflation(-1) + (1-alpha) * inflation(+1) + kappa*y + inf_;
r = gammax0*y(-1)+gammac0*inflation(-1)+gamma_y_*y_+gamma_inf_*inf_;
end;

shocks;
var y_;
stderr 0.63;
var inf_;
stderr 0.4;
end;


optim_weights;
inf 1;
y 1;
end;

osr_params gammax0 gammac0 gamma_y_ gamma_inf_;

gammarr = 0;
gammax0 = 0.2;
gammac0 = 1.5;
gamma_y_ = 8;
gamma_inf_ = 3;

osr;

Notes:

  • There must be as many equations as endogenous variables
  • Currently, the only objective function is a weighted sum of the variances of some variables of the model
  • The fragment

   gammarr = 0;
   gammax0 = 0.2;
   gammac0 = 1.5;
   gamma_y_ = 8;
   gamma_inf_ = 3;
  • provides numerical initialization for the optimization.

Warning

Don't call your files osr.mod or osr1.mod because it conflicts with internal Dynare names.

DynareWiki: OptimalPolicy (last edited 2010-11-29 10:37:06 by SébastienVillemot)