Skip to content
Snippets Groups Projects
Commit f4fd9cf8 authored by Stéphane Adjemian's avatar Stéphane Adjemian
Browse files

Merge branch 'discretion' into 'master'

:bug: evaluate_planner_objective.m and discretionary policy: account for purely forward models

See merge request !2334
parents cb2739a9 0668025f
Branches
No related tags found
No related merge requests found
......@@ -113,5 +113,7 @@ T=H(dr.order_var,dr.order_var);
dr.ghu=G(dr.order_var,:);
if M_.maximum_endo_lag
Selection=M_.lead_lag_incidence(1,dr.order_var)>0;%select state variables
else
Selection=[];
end
dr.ghx=T(:,Selection);
......@@ -265,12 +265,14 @@ else
oo_.var(isnan(oo_.var)) = options_.huge_number;
Ey = oo_.mean;
Eyhat = Ey - ys(dr.order_var(nstatic+(1:nspred)));
Eyhatyhat = oo_.var(:);
Euu = M_.Sigma_e(:);
EU = U + Uy*gy*Eyhat + 0.5*(Uyygygy*Eyhatyhat + Uyygugu*Euu);
EU = U + 0.5*Uyygugu*Euu;
if M_.maximum_endo_lag
Eyhat = Ey - ys(dr.order_var(nstatic+(1:nspred)));
Eyhatyhat = oo_.var(:);
EU=EU + Uy*gy*Eyhat + 0.5*Uyygygy*Eyhatyhat;
end
EW = EU/(1-beta);
planner_objective_value.unconditional = EW;
......
......@@ -1069,6 +1069,7 @@ mod_and_m_tests = [
'discretionary_policy/dennis_1_estim.mod',
'discretionary_policy/dennis_1_estim_MoM.mod' ] },
{ 'test' : [ 'discretionary_policy/Gali_discretion.mod' ] },
{ 'test' : [ 'discretionary_policy/NK_discretion_forward.mod' ] },
{ 'test' : [ 'discretionary_policy/Gali_2015_chapter_3.mod',
'discretionary_policy/Gali_2015_chapter_3_nonlinear.mod' ] },
{ 'test' : [ 'histval_initval_file/ramst_data_generate.mod',
......
var pi x R;
varexo epsilon;
parameters beta kappa lambdax lambdaR sigma;
sigma = 1;
beta = 0.99;
kappa = 0.102;
lambdax = 0.1;
model(linear);
pi = beta*pi(+1)+kappa*x+epsilon;
x = x(+1)-(1/sigma)*(R-pi(+1));
end;
shocks;
var epsilon; stderr 0.01;
end;
planner_objective (pi^2 +lambdax*x^2);
discretionary_policy(instruments=(R),irf=20,planner_discount= beta);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment