Difficulty with auto.arima function results

I am new to R and the ARIMA model and I am attemping to forecast 1440 values into the future using a base of roughly 5000 numbers. It is data extracted roughly every minute from a machine log(performance values). The intend to forecast 1 day into the future, which explains the 1440 values(as they are minutes).

Here is my result using the following commands: datats<-c(data); arima<-auto.arima(datats); fcast<-forecast(arima, h=1440);

The prediction begins at the flat line on the right hand side.

Forecast method: ARIMA(0,1,1)

Model Information: Series: datats ARIMA(0,1,1)

Coefficients: ma1 -0.9373 s.e. 0.0071

sigma^2 estimated as 86737: log likelihood=-21221.46 AIC=42446.93 AICc=42446.93 BIC=42458.93

Error measures: ME RMSE MAE MPE MAPE MASE Training set 0.6506441 294.4619 196.7211 -59.85254 85.45473 0.7637028 ACF1 Training set 0.01519673

Dataset here: http://pastebin.com/92ssDExn

Is the issue too little past values? To many values to be predicted?

Any information or advice would be extremely welcomed, any other information required will be provided.

• You're perhaps thinking a forecast should look like a simulation. – Scortchi Feb 3 '14 at 11:14
• With lag 1 you're not going to see anything interesting in the forecast beyond a few steps: it simply goes to an average. If you want to see any kind of structure in the forecast for 1440 steps, you'll have to have more lags, say 100. Check out Yule Walker equations. With 100 lags and 5K observation you'll run into other issues though. – Aksakal Feb 7 '16 at 17:39

With MA(1) model next forecast is based on one lag error term and after that best forecast is simply series long-term mean.

I bet that your model has so high frequency that this modeling technique cannot model possible seasonality in it by seasonal lag operator polynomials.

• On further research it would appear that the fourier() function would be applical here, but I'm not sure on to apply it to my example. – user3265403 Feb 3 '14 at 11:47
• On that note would it be wise to make another question specificly regarding how to fit the fourier() function that is part of the forecast package to my data? – user3265403 Feb 3 '14 at 12:36

This is the data you supplied to support your question:

datats<-scan(text=x<-readClipboard(), sep=",")
plot(f1<-forecast(m1<-auto.arima(datats),h=1440))


It will help if you label the axis or tell us to what part of the dataset the auto.arima function was applied to. Also, note the following

The prediction begins at the flat line on the right hand side.)

The prediction from the chosen model is one and the same value repeated for as many time periods as your forecast horizon is, i.e. h=1440.

Forecast method: ARIMA(0,1,1)

Some research are very careful to distinguish between the method and the model. Your model is what you stated and the corresponding optimal method would be called simple exponential smoothing. This means that SES forecast is optimal (in the MSE sense) for the data generated by an ARIMA(0,1,1) model. Another model for which SES forecast is optimal, is in the title of this plot:

plot(f2<-forecast(m2<-ets(datats,additive.only=TRUE),h=1440))


Why do you think your forecast is a problem?

Consider ARIMA with regression errors by passing dummy variables. Lets say if you have monthly data, then include 11 dummy variables and pass these in xreg argument of auto.arima function. This tends to perform better than the standard auto.arima model.