Wild bootstrap for IRFs of identified SVARs
Calculating confidence bands for impulse response functions via wild bootstrap techniques (Goncalves and Kilian, 2004).
wild.boot( x, design = "fixed", distr = "rademacher", n.ahead = 20, nboot = 500, nc = 1, dd = NULL, signrest = NULL, signcheck = TRUE, itermax = 300, steptol = 200, iter2 = 50, rademacher = "deprecated" )
x | 
 SVAR object of class "svars"  | 
design | 
 character. If design="fixed", a fixed design bootstrap is performed. If design="recursive", a recursive design bootstrap is performed.  | 
distr | 
 character. If distr="rademacher", the Rademacher distribution is used to generate the bootstrap samples. If distr="mammen", the Mammen distribution is used. If distr = "gaussian", the gaussian distribution is used.  | 
n.ahead | 
 Integer specifying the steps  | 
nboot | 
 Integer. Number of bootstrap iterations  | 
nc | 
 Integer. Number of processor cores  | 
dd | 
 Object of class 'indepTestDist'. A simulated independent sample of the same size as the data. roxIf not supplied, it will be calculated by the function  | 
signrest | 
 A list with vectors containing 1 and -1, e.g. c(1,-1,1), indicating a sign pattern of specific shocks to be tested with the help of the bootstrap samples.  | 
signcheck | 
 Boolean. Whether the sign pattern should be checked for each bootstrap iteration. Note that this procedure is computationally extremely demanding for high dimensional VARs, since the number of possible permutations of B is K!, where K is the number of variables in the VAR.  | 
itermax | 
 Integer. Maximum number of iterations for DEoptim  | 
steptol | 
 Integer. Tolerance for steps without improvement for DEoptim  | 
iter2 | 
 Integer. Number of iterations for the second optimization  | 
rademacher | 
 deprecated, use "design" instead.  | 
A list of class "sboot" with elements
true | 
 Point estimate of impulse response functions  | 
bootstrap | 
 List of length "nboot" holding bootstrap impulse response functions  | 
SE | 
 Bootstrapped standard errors of estimated covariance decomposition (only if "x" has method "Cramer von-Mises", or "Distance covariances")  | 
nboot | 
 Number of bootstrap iterations  | 
distr | 
 Character, whether the Gaussian, Rademacher or Mammen distribution is used in the bootstrap  | 
design | 
 character. Whether a fixed design or recursive design bootstrap is performed  | 
point_estimate | 
 Point estimate of covariance decomposition  | 
boot_mean | 
 Mean of bootstrapped covariance decompositions  | 
signrest | 
 Evaluated sign pattern  | 
sign_complete | 
 Frequency of appearance of the complete sign pattern in all bootstrapped covariance decompositions  | 
sign_part | 
 Frequency of bootstrapped covariance decompositions which conform the complete predetermined sign pattern. If signrest=NULL, the frequency of bootstrapped covariance decompositions that hold the same sign pattern as the point estimate is provided.  | 
sign_part | 
 Frequency of single shocks in all bootstrapped covariance decompositions which accord to a specific predetermined sign pattern  | 
cov_bs | 
 Covariance matrix of bootstrapped parameter in impact relations matrix  | 
method | 
 Used bootstrap method  | 
VAR | 
 Estimated input VAR object  | 
Goncalves, S., Kilian, L., 2004. Bootstrapping autoregressions with conditional heteroskedasticity of unknown form. Journal of Econometrics 123, 89-120.
Herwartz, H., 2017. Hodges Lehmann detection of structural shocks -
An analysis of macroeconomic dynamics in the Euro Area, Oxford Bulletin of Economics and Statistics
# data contains quarterly observations from 1965Q1 to 2008Q3 # x = output gap # pi = inflation # i = interest rates set.seed(23211) v1 <- vars::VAR(USA, lag.max = 10, ic = "AIC" ) x1 <- id.dc(v1) summary(x1) # impulse response analysis with confidence bands # Checking how often theory based impact relations appear signrest <- list(demand = c(1,1,1), supply = c(-1,1,1), money = c(-1,-1,1)) bb <- wild.boot(x1, nboot = 500, n.ahead = 30, nc = 1, signrest = signrest) summary(bb) # Plotting IRFs with confidance bands plot(bb, lowerq = 0.16, upperq = 0.84) # With different confidence levels plot(bb, lowerq = c(0.05, 0.1, 0.16), upperq = c(0.95, 0.9, 0.84)) # Halls percentile plot(bb, lowerq = 0.16, upperq = 0.84, percentile = 'hall') # Bonferroni bands plot(bb, lowerq = 0.16, upperq = 0.84, percentile = 'bonferroni')
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.