Estimate impulse response functions

var_irf(
  var,
  horizon = 10,
  CI = c(0.1, 0.9),
  bootstrap.type = "auto",
  bootstrap.num = 100,
  bootstrap.parallel = FALSE,
  bootstrap.cores = -1
)

Arguments

var

VAR output

horizon

int: number of periods

CI

numeric vector: c(lower ci bound, upper ci bound)

bootstrap.type

string: bootstrapping technique to use ('auto', 'standard', or 'wild'); if auto then wild is used for IV or IV-short, else standard is used

bootstrap.num

int: number of bootstraps

bootstrap.parallel

boolean: create IRF draws in parallel

bootstrap.cores

int: number of cores to use in parallel processing; -1 detects and uses half the available cores

Value

data.frame with columns target, shock, horizon, response.lower, response, response.upper

See also

Examples

# \donttest{ # simple time series AA = c(1:100) + rnorm(100) BB = c(1:100) + rnorm(100) CC = AA + BB + rnorm(100) date = seq.Date(from = as.Date('2000-01-01'), by = 'month', length.out = 100) Data = data.frame(date = date, AA, BB, CC) # estimate VAR var = sovereign::VAR( data = Data, horizon = 10, freq = 'month', lag.ic = 'BIC', lag.max = 4)
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
# impulse response functions var.irf = sovereign::var_irf(var) # forecast error variance decomposition var.fevd = sovereign::var_fevd(var) # historical shock decomposition var.hd = sovereign::var_hd(var) # }