Automatic Identification of Model Using auto.arima() Function in R

Premium

auto.arima() Function

R also has a package called forecast, which contains many forecasting functions for time series and linear models. It also contains a very useful function called auto.arima, which returns the best ARIMA model according to either AIC, AICc or BIC value. The function conducts a search over possible models within the order constraints provided.

Let's try the auto.arima function on our time series.

1> fb\_fit\_auto <- auto.arima(fb\_ts)
2> fb\_fit\_auto
3Series: fb\_ts
4ARIMA(1,1,4) with drift
5Coefficients:
6          ar1     ma1      ma2      ma3      ma4   drift
7      -0.8405  0.8626  -0.0123  -0.1632  -0.1768  0.0800
8s.e.   0.1080  0.1111   0.0488   0.0509   0.0381  0.0478
9sigma^2 estimated as 2.581:  log likelihood=-1426.29
10AIC=2866.58   AICc=2866.73   BIC=2898.97
11>
12

The auto.arima function suggests the best fit model as ARIMA(1,1,4) with drift.

The following code creates the forecast for the FB stock prices using the suggested model:

1fb\_fit <- arima(fb\_ts, order = c(1, 1, 4))
2fb\_forecast <- predict(fb\_fit , n.ahead = 20)
3fb\_forecast\_values <- fb\_forecast$pred
4plot.ts(fb\_ts, xlim = c(0, 900), ylim = c(50,160))
5points(fb\_forecast\_values , type = "l", col = 2)
6