I'm following Rob Hyndman's forecasting otext to practice on some financial data for fun and I am having difficulties in trying to properly deal with large shocks similar to the 2008 recession.
My data is as follows:
library(forecast)
stock <- c(60,150,149,66,28,59,75,148,11,188,113,313,340,362,321,360,334,338,424,377,399,365,
433,471,378,335,332,264,291,247,352,267,376,258,295,349,335,230,261,339,256,405,377,
392,372,272,462,395,399,487,627,607,462,573,775,776,923,764,883,831,792,860,849,223,
177,99,53,121,102,103,44,134,217,116,167,221,90,288,305,290,292,345,384,302,348,292,
374,489,448,520,424,447,451,472,481,463,446,470,387,538,381,353,259,374,418,331,354,
418,416,348,309,353,279,341,291,255,278,302,182,256,277,299,269,276,310,368,263,329,
211,249,318,293,278,265,221,260,194,260,282,250,231,131,188,154,186,279,318,369,353,
322,349,301,366,364,455,450)
stock_price <- data.frame(price = stock)
stock_ts <- ts(stock_price, start=c(1994, 1), end=c(2006,12), frequency=12)
stock_ts_train <- window(stock_ts, start=1994, 2006-.01)
fit.holt.exp_dp <- holt(stock_ts_train, damped = TRUE, exponential = TRUE)
plot(fit.holt.exp_dp)
lines(stock_ts, lty=2)
I can somewhat make out a cycle that occurs every 6 years with no observable seasonality, but this damped exponential smoothing method is forecasting a flatted trend line. My issue is that the prediction intervals seem to be too large, mainly due to the drop in 1999, and need a way to curb that influence. One simple method I was pondering was to impute the data during this large climb and drop by using a moving average and run the model that way.
I'd really appreciate any thoughts or guidance!
Thanks