Skip to contents
data <- dat_p2_exo$data
exo_mat <- dat_p2_exo$exo_mat

Residual bootstrap

system.time(
  rb <- RBootVARExoOLS(
    data = data,
    exo_mat = exo_mat,
    p = 2,
    B = 5000L
  )
)
#>    user  system elapsed 
#>   0.902   0.399   0.659
rb$est
#>           [,1]        [,2]       [,3]         [,4]         [,5]        [,6]
#> [1,] 1.1645442  0.35802166 0.03734862 0.0002366562  0.106855984 -0.02817869
#> [2,] 0.6746508  0.01936447 0.47104112 0.0408110984  0.042905903  0.20401723
#> [3,] 1.1333405 -0.01203039 0.03843933 0.5917764198 -0.002727068 -0.03541278
#>             [,7]        [,8]          [,9]        [,10]
#> [1,] -0.01532613  0.53449366 -0.0300834881  0.049418742
#> [2,] -0.01147251 -0.01486178  0.5239645393 -0.009915481
#> [3,]  0.29966676  0.01649533 -0.0009656348  0.418817274

Confidence Intervals

BootCI(rb)
#> $ll
#>           [,1]        [,2]       [,3]        [,4]         [,5]        [,6]
#> [1,] 0.8061537  0.30429789 -0.0162773 -0.05488401  0.052347521 -0.08134771
#> [2,] 0.3038916 -0.03516976  0.4173502 -0.01331327 -0.009919122  0.14847131
#> [3,] 0.7575254 -0.06665384 -0.0146747  0.53602522 -0.057635504 -0.08894547
#>             [,7]        [,8]        [,9]       [,10]
#> [1,] -0.06958521  0.47285084 -0.09175439 -0.01754922
#> [2,] -0.06597832 -0.07899913  0.45949697 -0.07497912
#> [3,]  0.24597899 -0.04551502 -0.06516815  0.35063868
#> 
#> $ul
#>          [,1]       [,2]       [,3]       [,4]       [,5]       [,6]       [,7]
#> [1,] 1.533284 0.41511628 0.08987763 0.05549245 0.15992419 0.02440078 0.03797246
#> [2,] 1.049598 0.07424265 0.52694125 0.09477779 0.09725450 0.25700211 0.04301034
#> [3,] 1.511836 0.04290514 0.09283828 0.64736248 0.05231296 0.01874213 0.35416018
#>            [,8]       [,9]      [,10]
#> [1,] 0.59755623 0.03352203 0.11323024
#> [2,] 0.04856768 0.58634379 0.05761158
#> [3,] 0.07720625 0.06178412 0.48463274

Standard Errors

BootSE(rb)
#>           [,1]       [,2]       [,3]       [,4]       [,5]       [,6]
#> [1,] 0.1899002 0.02828822 0.02739483 0.02795965 0.02763577 0.02748793
#> [2,] 0.1920405 0.02807034 0.02805847 0.02759376 0.02749599 0.02786318
#> [3,] 0.1915017 0.02782644 0.02776910 0.02862253 0.02770058 0.02760922
#>            [,7]       [,8]       [,9]      [,10]
#> [1,] 0.02760877 0.03207984 0.03254120 0.03304607
#> [2,] 0.02781540 0.03230481 0.03184359 0.03368794
#> [3,] 0.02819177 0.03198098 0.03246780 0.03392554
system.time(
  rb <- RBootVARExoLasso(
    data = data,
    exo_mat = exo_mat,
    p = 2,
    B = 5000L,
    n_lambdas = 100,
    crit = "ebic",
    max_iter = 1000,
    tol = 1e-5
  )
)
#>     user   system  elapsed 
#> 1640.419  516.425 1084.605
rb$est
#>           [,1]      [,2]      [,3]      [,4]       [,5]      [,6]      [,7]
#> [1,] 1.1645442 0.3223107 0.0000000 0.0000000 0.07127916 0.0000000 0.0000000
#> [2,] 0.6746508 0.0000000 0.4448539 0.0000000 0.00000000 0.1720849 0.0000000
#> [3,] 1.1333405 0.0000000 0.0000000 0.5682471 0.00000000 0.0000000 0.2731365
#>          [,8]      [,9]     [,10]
#> [1,] 0.465707 0.0000000 0.0000000
#> [2,] 0.000000 0.4490572 0.0000000
#> [3,] 0.000000 0.0000000 0.3112725

Confidence Intervals

BootCI(rb)
#> $ll
#>           [,1]     [,2]      [,3]      [,4]       [,5]      [,6]      [,7]
#> [1,] 0.7961103 0.297375 0.0000000 0.0000000 0.06576462 0.0000000 0.0000000
#> [2,] 0.9329965 0.000000 0.4083041 0.0000000 0.00000000 0.1579462 0.0000000
#> [3,] 1.2651847 0.000000 0.0000000 0.5258466 0.00000000 0.0000000 0.2527561
#>           [,8]     [,9]     [,10]
#> [1,] 0.4296774 0.000000 0.0000000
#> [2,] 0.0000000 0.412162 0.0000000
#> [3,] 0.0000000 0.000000 0.2880466
#> 
#> $ul
#>          [,1]      [,2]      [,3]      [,4]       [,5]      [,6]      [,7]
#> [1,] 1.524423 0.3235663 0.0000000 0.0000000 0.07155685 0.0000000 0.0000000
#> [2,] 1.670456 0.0000000 0.4408508 0.0000000 0.00000000 0.1705364 0.0000000
#> [3,] 2.012884 0.0000000 0.0000000 0.5565334 0.00000000 0.0000000 0.2675062
#>           [,8]      [,9]    [,10]
#> [1,] 0.4675213 0.0000000 0.000000
#> [2,] 0.0000000 0.4450163 0.000000
#> [3,] 0.0000000 0.0000000 0.304856

Standard Errors

BootSE(rb)
#>           [,1]        [,2]        [,3]        [,4]        [,5]        [,6]
#> [1,] 0.1873452 0.006650806 0.000000000 0.000000000 0.001470829 0.000000000
#> [2,] 0.1874381 0.000000000 0.008382272 0.000000000 0.000000000 0.003242555
#> [3,] 0.1919660 0.000000000 0.000000000 0.007915599 0.000000000 0.000000000
#>             [,7]        [,8]        [,9]       [,10]
#> [1,] 0.000000000 0.009609755 0.000000000 0.000000000
#> [2,] 0.000000000 0.000000000 0.008461474 0.000000000
#> [3,] 0.003804752 0.000000000 0.000000000 0.004335981