Hello there
I was looking in the forum on how to find the optimal parameters of a simple monetary policy rule for a nonlinear model (complete welfare analysis), I found the code that professor Pfeifer shared a long time ago to implement csminwel, however, I tried to implement it in recent versions of dynare and it throws me an error. I identified that the problem is due to the changes that were implemented since dynare 4.6 , because if I use the code in version 4.5.6 I don’t have any problem. I changed a line to make it consistent with recent versions, but the error persists, could someone please take a look at it to see what else I need to update? The part of the code that goes in the mod file is:
stoch_simul(order=2, irf=0);
options_.noprint=1;
x_start=[1.5, 0.5, 0.05, 0.75]';
%define parameters to be optimized and their upper and lower bound
x_opt_name={‘phi_pi’,1,3
‘phi_y’,0, 3
‘phi_ds’,0,3
‘phi_r’, 0, 1
};
options_.nofunctions=1;
options_.nograph=1;
options_.verbosity=0;
%set noprint option to suppress error messages within optimizer
options_.noprint=1;
options_.TeX=0;
% set csminwel options
H0 = 1e-2*eye(length(x_start)); %Initial Hessian
crit = 1e-8; %Tolerance
nit = 1000; %Number of iterations
[fhat,x_opt_hat] = csminwel(@welfare_objective,x_start,H0,[],crit,nit,x_opt_name);
and I attach the .m file (the error i get is: Not enough input arguments.)
Thanks in advance
conditional_welfare_objective.m (1.2 KB)
welfare_objective.m (1.2 KB)