Forecasting: regression model with ARIMA errors

Hello, everyone,

I would like to create a forecast with my regression model using ARIMA Errors. I am therefore seeking for a method to forecast 52 steps ahead.

In a first step I am defining a model from training data:

xreg2 <- as.matrix(external_data_train[,c("F3","F6","F12", "F16", "F28", "F31", "F33", "F39", "F42")])
arima_reg_ext <- auto.arima(train,
                                d = NA,
                                D = NA, 
                                stationary = FALSE, 
                                seasonal = TRUE,
                                ic = c("aicc", "aic", "bic"),
                                stepwise = TRUE,
                                trace = TRUE, ## AM ENDE MIT FALSE BERECHNEN!
                                approximation = FALSE, 
                                method = NULL,  
                                test = "kpss", ##"adf" testen 
                                seasonal.test = c("seas", "ocsb", "hegy", "ch"), 
                                allowdrift = TRUE, 
                                allowmean = TRUE, 
                                lambda = "auto", 
                                biasadj = TRUE)
# Best model: Regression with ARIMA(0,1,0)            errors

Plotting the results gives the following Graphs (blue= training data & red=arima_reg_ext model)

Just as a sidenote: This is already worse than just using ARIMA without regression.

Anyway that model actually fits quiet well. I therefore will use this model to Forecast one year (52 weeks) in advance:

# defining the regression data in advance (a lot of dummy variables are used)
xreg3 <- as.matrix(alldata.complete_test[,c("F3","F6","F12", "F16", "F28", "F31", "F33", "F39", "F42")])
fcast<- forecast::forecast(arima_reg_ext, xreg=xreg3, h=52)

I receive following warning:

# Warning:
In forecast.forecast_ARIMA(arima_reg_ext, xreg = xreg3, h = 52) :
  Upper prediction intervals are not finite.

And if I plot the values, the forecast is incredibly bad.

par(mfrow = c(1,1))
plot(test, col="blue")
lines(fcast$mean, col="red")

Did I do anything wrong and can someone please help me to solve the error message, please?

Best regards

This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.