10

I ran the auto.arima()command in R on a set of data and it chose the appropriate model to be ARIMA(0,1,0).

I know ARIMA(0,0,0) is just white noise, but what does ARIMA(0,1,0) mean?

Richard Hardy
  • 67,272
EconJohn
  • 882

3 Answers3

15

ARIMA(0,1,0) is random walk.

It is a cumulative sum of an i.i.d. process which itself is known as ARIMA(0,0,0).

Richard Hardy
  • 67,272
  • 5
    a bit short as an answer – g3o2 Oct 27 '17 at 19:00
  • 1
    @g3o2, the real answer is in the first line. To make it artificially longer, I have added the second line. (OK, this is a joke. The second line gives the definition of a random walk.) I gave the name and the definition, and that was sufficient for the OP. I do believe in the virtue of brevity. There is plenty of information online on random walk, and the purpose of Cross Validated is not to duplicate it. – Richard Hardy Oct 27 '17 at 19:44
  • "Brevity is acceptable, but fuller explanations are better." (quoted from CV help) – g3o2 Oct 29 '17 at 16:06
  • @g3o2, thank you. I think my answer is full already (even the first line is a full answer), so there is no tradeoff between completeness and brevity anymore. But I appreciate the tip and I will see if I can add something that is still relevant without expanding into unrelated topics. – Richard Hardy Oct 29 '17 at 17:15
  • @g3o2, From a highly-upvoted answer on Meta: If it answers the question in a self-contained way, I don't think an answer's length particularly matters. For very short answers, it would be nice if the answerer provided a bit of "bonus" information (background, support for their answer, etc), but I think this extra effort should be more of a social norm than a hard and fast rule. I will try my best at that bonus information :) – Richard Hardy Oct 29 '17 at 17:30
  • @RichardHardy Is there a change I can make to test1 = arima(as.ts(df$x), order = c(0,1,0)) to add a drift constant? – Remy Mar 22 '19 at 21:39
  • @Remy, have you tried Arima from the forecast package with option include.drift=TRUE or include.constant=TRUE? – Richard Hardy Mar 23 '19 at 13:54
  • @RichardHardy Thanks, it worked! – Remy Mar 23 '19 at 19:38
8

An ARIMA(0, 1, 0) series, when differenced once, becomes an ARMA(0, 0), which is random, uncorrelated, noise.

If $X_1, X_2, X_3, \ldots$ are the random variables in the series, this means that

$$X_{i+1} - X_{i} = \epsilon_{i + 1}$$

where $\epsilon_1, \epsilon_2, \ldots$ is a sequence of centered, uncorrelated random variables.

Rearranging

$$ X_{i+1} = X_i + \epsilon_i $$

reveals that we have a random walk.

Matthew Drury
  • 35,629
1

You can simulate it in R quite easily:

plot(arima.sim(model = list(order=c(0,1,0)),n=1000))

The result obtained is: ARIMA of order c(0,1,0) We observe that this plot is reminiscent of a Random Walk of order 1.