Beyond GARCH 2

Sequel of Beyond GARCH vignette, but using Statistical models for modeling the volatility.

# Default model for volatility (Ridge regression for volatility)
(obj_ridge <- ahead::mlarchf(fpp2::goog200, h=20L, B=500L, ml=FALSE, stat_model=forecast::thetaf))
##     Point Forecast    Lo 95    Hi 95
## 201       531.6781 515.9462 549.1205
## 202       533.0816 514.8536 553.5037
## 203       532.6193 515.9887 548.2460
## 204       533.7420 516.3917 554.3595
## 205       534.9838 518.2596 553.7987
## 206       535.2240 518.6857 552.6793
## 207       536.3900 517.2995 556.3940
## 208       536.3005 517.2302 556.5636
## 209       537.7482 518.7568 560.1598
## 210       537.7290 517.6515 560.4755
## 211       538.9910 521.7541 556.8249
## 212       538.5065 519.5283 558.5677
## 213       541.2633 523.8535 559.8935
## 214       540.8230 521.6955 560.7016
## 215       541.2158 522.4111 561.6579
## 216       542.1566 522.0221 561.5088
## 217       542.7218 526.1156 560.2016
## 218       543.8381 525.6462 561.0201
## 219       545.1088 526.5010 566.0781
## 220       544.6710 526.5336 563.5139
plot(obj_ridge)

(obj_ridge <- ahead::mlarchf(fpp2::goog200, h=20L, B=500L, ml=FALSE, stat_model=forecast::meanf))
##     Point Forecast    Lo 95    Hi 95
## 201       531.5274 515.1990 550.1385
## 202       533.0160 517.1643 558.4122
## 203       532.5246 515.4809 551.8160
## 204       534.0112 516.0165 557.5118
## 205       535.4654 515.6201 555.6680
## 206       534.5464 518.6740 552.8266
## 207       536.9528 520.5061 558.8188
## 208       536.5219 518.7725 556.1968
## 209       537.7985 524.8627 558.0201
## 210       538.1458 523.2602 556.1728
## 211       539.7916 521.6574 561.1817
## 212       541.0167 524.7802 563.7920
## 213       541.7738 525.0307 564.6866
## 214       540.9387 524.1060 556.3103
## 215       542.7264 525.6748 567.3747
## 216       541.6514 524.1349 559.5632
## 217       543.7488 524.4040 561.5746
## 218       544.7264 523.4574 567.2404
## 219       544.5427 526.8515 562.4853
## 220       544.8571 526.8204 563.6317
plot(obj_ridge)

(obj_ridge <- ahead::mlarchf(fpp2::goog200, h=20L, B=500L, ml=FALSE, stat_model=forecast::auto.arima))
##     Point Forecast    Lo 95    Hi 95
## 201       531.4601 509.2722 551.9122
## 202       532.4984 515.8360 556.1565
## 203       533.8656 515.2662 552.7390
## 204       534.3699 516.5572 557.3492
## 205       535.2622 518.8550 556.7435
## 206       535.4603 515.5603 559.0651
## 207       535.9791 518.8885 554.9316
## 208       536.5122 519.4704 554.0179
## 209       536.6375 518.7352 556.1876
## 210       537.4909 517.8427 558.4607
## 211       538.4520 520.7512 560.6126
## 212       539.3087 523.3922 558.8684
## 213       540.1231 519.6824 560.8264
## 214       541.1155 525.0029 563.0953
## 215       541.0255 525.1112 556.5043
## 216       542.4126 523.6261 566.3458
## 217       543.3927 524.0724 561.7434
## 218       543.1276 524.5693 561.2853
## 219       544.4231 525.9289 560.4367
## 220       548.6838 530.0695 568.7356
plot(obj_ridge)

(obj_ridge <- ahead::mlarchf(fpp2::goog200, h=20L, B=500L, ml=FALSE, stat_model=forecast::ets))
##     Point Forecast    Lo 95    Hi 95
## 201       532.4262 514.9824 556.6927
## 202       531.9082 513.5433 550.0907
## 203       532.0421 515.0023 552.9211
## 204       534.1547 515.3734 558.2291
## 205       535.1013 517.4050 555.4380
## 206       536.7876 521.0530 568.8033
## 207       536.1876 515.4194 559.2601
## 208       536.9244 520.0761 559.0717
## 209       537.1269 517.4463 556.1604
## 210       539.4534 521.7191 566.7206
## 211       540.4337 523.4747 562.2039
## 212       540.1314 520.7078 562.4331
## 213       540.3708 520.7935 562.8207
## 214       540.4017 522.5304 558.0021
## 215       541.7151 525.9163 559.4798
## 216       542.5333 525.2868 562.8027
## 217       545.0402 529.0173 572.6355
## 218       543.7660 525.9127 565.4288
## 219       544.0699 523.5098 560.2593
## 220       546.1859 528.3808 571.1760
plot(obj_ridge)