Restricted parameter in OSR

Hi all,
I have a question about the optimal simple rule command osr. I was wondering if there was a way how to incorporate the restriction that rho is between 0 and 1 in the standard Taylor rules of the form:
r_t = rhor_{t-1} + (1-rho)(phi1pi_t + phi2y_t)

I tried to do the optimal simple rule analysis but am getting parameters rho bigger than 1 for almost any weights of the loss function.

Thanks in advance for any suggestions.


This is currently not possible. However, implementing constrained OSR is on our todolist (therefore it should be included in some future release), see:

You can use a non-linear (logistic) transformation to bound rho, i.e. use 1/(1+exp(-rho)) instead of rho and back out the original parameter by inverting this transformation.


Basic functionality is now available, see

Dear Dr. Pfeifer,

I am trying to run a constrained OSR, transforming the coefficients in the Taylor rule so that they are contrained to be positive. So I basically apply the logistic transformation you suggested in one of the above posts. The problem is that, all else equal, the OSR routine gives me different solutions even when the unconstrained optimum is already positive. I am setting tolf at 1e-20 to avoid numerical approximation problems. Do you know why that might be happening? Thank you, Fabia

How exactly do you impose the transformation?

Originally, the Taylor rule is:
R^4=(R(-1)^4)^rho_R*(R_ss^4*(pie_4_ahead(+3)/pietarget)^gamma_pie*( (gdp/steady_state(gdp)) )^gamma_y)^(1-rho_R)((b_E+b_B_c+b_B_h)/(b_E_ss+b_B_c_ss+b_B_h_ss))^gamma_cred(pie_C^4/pie_C(-1)^4)^gamma_dpie*exp(eps_R);

I create a new parameter, gamma_y_bounded, and its value is obtained in the steady_state_model block as: gamma_y_bounded= 1/(1+exp(-gamma_y));

In the osr_params command, I use either gamma_y or gamma_y_bounded, in addition to the other parameters I’m interested in.


Then this sounds like there are several local maxima. Have you checked the values of the objective function?