I am confused why a positive sd. shock on variable “q” gives the impulse response of “q” with an immediately fall instead of immediately rise?

``````var pih x y ynat rnat r s pi p ph e ystar a pistar q ;
varexo q_ ;
parameters sigma rho tau alpha theta xi beta kappa omega phipi rhoa rhoy lambda gamma delta rhopih;

sigma = 1;
rho  = 0.0101;
tau   = 1;
alphas = 0.4;
theta = 0;
beta  = 0.99;
kappa = 0.3433;
omega = -0.1277;
xi    = 0;
phipi = 1.5;
rhoa = 0.66;
rhoy = 0.86;
gamma = 2.4 ;
delta = 1.6 ;
rhopih = 0.8;

model(linear);
x    = x(+1) - ( r - pih(+1) - rnat) ;
rnat = -sigma*tau*(1-rhoa)*a + alpha*sigma*(theta+xi)*(rhoy-1)*ystar;
pih  = beta * pih(+1)+ kappa*x;
ynat = tau*a + alpha*xi*ystar;
x    = y - ynat ;
q    = (1-alpha)*s;
q =  gamma*( pih ) + delta*x + q_;
y    = ystar +(sigma)^(-1)*s;
pi   = pih + alpha*(s-s(-1));
pi   = p - p(-1);
pih  = ph - ph(-1);
s    = s(-1) + e - e(-1) + pistar - pih;
pistar = 0;
a    = rhoa*a(-1) ;
ystar= rhoy*ystar(-1) ;
end;

shocks;
var q_ =0.52^2;
end;

stoch_simul(order=1, irf=20, noprint ) pih pi x r s e q;``````

Either you have a mistake or you the endogenous variables in your model respond in a way to counteract the initial shock. For example, in the standard New Keynesian model the nominal interest rate can move in either direction after a contractionary monetary policy shock. The only thing that is guaranteed is that the real interest rate increases.

Million of Thanks Jpfeifer!!
Actually in my model, 'q ’ is the real exchange rate I add as a monetary policy rule. The initial model employ ‘r’ interest rate instead of q in the monetary policy rule.
I am really worry whether it will work to add ‘q’ in this ad-hoc fashion. And now the interpretation is weird that the depreciation shock(positive shock) lower the interest rate.
All suggestions are welcomed.
Again thank you very much!!