# Forecasting in R without auto.arima()

I am trying to forecast data regarding vehicle registrations year-wise using auto.arima in R. However, one of my variables (which is data for 3-wheeler registrations) gives me the same forecast: I used auto.arima for it too but the process generated was an ARIMA(0,0,0) process due to which the forecast values were the same throughout. For another similar variable, I got an ARIMA(0,1,0) process and my point forecasts were the same. So my question is, is there any other method of forecasting single variables without using the auto.arima function? Your responses and help will be much appreciated, thanking you all in anticipation!!

• What's wrong with a constant forecast? Would you take a nonconstant one even if its accuracy were lower? – Richard Hardy Dec 27 '20 at 15:36
• Simple models in exponential smoothing, which never change, can be the most accurate forecast. – user54285 Dec 28 '20 at 0:17
• @RichardHardy, nope, absolutely not. But the previous values of the variable weren't constant and in that case, getting a constant forecast for it just seems a bit odd.. hence I'm a bit sceptical of using these forecasts. – Akshaya Balaji Dec 28 '20 at 18:16
• @user54285, which never change? – Akshaya Balaji Dec 28 '20 at 18:18
• If the data generating process is a random walk or white noise, previous observations will not be constant, yet an optimal (under symmetric loss) point forecast is a constant. – Richard Hardy Dec 28 '20 at 18:23

## 1 Answer

What's wrong with a constant forecast? Would you take a nonconstant one even if its accuracy were lower? You responded, no, and I concur. Perhaps your data generating process (DGP) is best approximated by ARIMA(0,1,0) or ARIMA(0,0,0) among the class of models considered, ARIMA(p,d,q). If the DGP is a random walk, i.e. ARIMA(0,1,0), or white noise, i.e. ARIMA(0,0,0), previous observations will not be constant, yet an optimal (under symmetric loss) point forecast will be a constant.

If you were worried about possibly obtaining negative forecasts, you could refer to the thread "How to achieve strictly positive forecasts?". The core idea there is to set lambda=0 when fitting a model with auto.arima: fit <- auto.arima(x, lambda=0); forecast(fit). But your series values and their forecasts appear quite far away from zero, so this is probably not a problem.

If you wanted integer forecasts, Weiss "Integer‐Valued Autoregressive Moving‐Average (INARMA) Models" (2018) could be of interest. But again, this is probably more relevant when the numbers are small, which is not the case in your example.

• A simple model in exponential smoothing will be exactly the same in all future months. Basically a straight line. But in my experience its often right. The best predictor of the future is the most recent point (a simple model is not the most recent value, I think its a weighted average of recent points although I am not sure). – user54285 Dec 29 '20 at 16:40
• Thanks, @Richard. Will go with these forecasts itself:) – Akshaya Balaji Jan 2 at 13:50
• @user54285, thank you! – Akshaya Balaji Jan 2 at 13:51