10
$\begingroup$

I've created an Arima model based on past forex closing prices using auto arima, which has generated a (0,1,0) ARIMA model.

> auto.arima(ma5)
Series: ma5 
ARIMA(0,1,0)                    

sigma^2 estimated as 5.506e-07:  log likelihood=11111.42
AIC=-22220.83   AICc=-22220.83   BIC=-22215.27

I next tried to plot the forecasted values, but as you can see all predictions are constant. Anyone know what I'm doing wrong?

enter image description here

$\endgroup$
5
  • 5
    $\begingroup$ There's nothing wrong. The upcoming expected value from an ARIMA(0,1,0) process is equal to the last observed value. $\endgroup$ Commented Jan 30, 2015 at 12:20
  • $\begingroup$ @RichardHardy Is that only true for stationary series? (I am not a time series expert, but that seems logical to me). $\endgroup$
    – Peter Flom
    Commented Jan 30, 2015 at 12:38
  • 4
    $\begingroup$ ARIMA(0,1,0) is a non-stationary time series. It is just a random walk, i.e. a cumulative sum of innovations or shocks. Since the expected value of a new innovation is zero, the expected cumulative sum one period ahead is just the current value of the cumulative sum. Therefore, the forecast is equal to the last observed value. Meanwhile, a forecast for a stationary time series will almost never be equal to the last observation (although there may be some special cases). $\endgroup$ Commented Jan 30, 2015 at 12:55
  • 3
    $\begingroup$ Including a drift may capture some trending pattern. See argument include.drift in forecast::Arima and apply forecast on the fitted model. $\endgroup$
    – javlacalle
    Commented Jan 30, 2015 at 13:28
  • 1
    $\begingroup$ See here, here, here, here, & here. $\endgroup$
    – Scortchi
    Commented Jan 30, 2015 at 16:41

1 Answer 1

5
$\begingroup$

There's nothing wrong; that model indeed has constant forecasts -- your 'best' guess at any future value is the last one you observed, since the deviations from that are a sum of future 0-mean noise terms.

$I(1)$ model: $y_t=y_{t-1}+\varepsilon_t$

Predictions:

$E(y_{T+1|T})=E(y_{T|T})+E(\varepsilon_T)=y_{T}+0=y_{T}$

$E(y_{T+2|T})=E(y_{T+1|T})+E(\varepsilon_{T+1})=E(y_{T+1|T})+0=y_{T}$

and so on.

[As indicated in the answer here, the more complicated ARIMA(0,1,1) model also has constant forecasts.]

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.