Impulse Response Function - Negative Shocks on R
Here is a simple example that should work:

library(vars)
data("Canada")
var.2c=VAR(Canada,p=2,type="const")
# 1 SD impulse reponse function
irf.rw.e=irf(var.2c,impulse="rw",response=c("e"))
# gamma is the number of standard deviations for the irf
gamma=-0.25
irf.rw.e_gamma = irf.rw.e
n=length(irf.rw.e_gamma$irf$rw)
for(i in 1:n){
    irf.rw.e_gamma$irf$rw[i]   = irf.rw.e_gamma$irf$rw[i]*gamma
    irf.rw.e_gamma$Lower$rw[i] = irf.rw.e_gamma$Lower$rw[i]*gamma
    irf.rw.e_gamma$Upper$rw[i] = irf.rw.e_gamma$Upper$rw[i]*gamma
} 
plot(irf.rw.e)
plot(irf.rw.e_gamma)


Source