I'm currently having the hardest time to understand (S)ARIMA model. Here are some information about my data: enter image description here

  • My data goes up and down regularly and can take both negative and positive values.
  • Using Dickey-Fuller Test, the time series is shown to be stationary with p-value of 0.0000 and t-statistic of -7.1999. So, to my knowledge, differencing is not needed in this case.

Now I'm trying to determine the order using ACF and PACF plots. Grid search is unfortunately not feasible on my computer since the data is quite large (over 20.000 hourly data points). However, I got following results:

enter image description here enter image description here

There is something unusual from the results. In both plots, the correlations never go below the significant level. This means that every lag can be chosen as a order. Furthermore, it's often said that the seasonal order of SARIMA is equal to the ACF lag with the highest value, which in this case refers to lag 1. This does not quite make any sense since my data is hourly data.

Can anyone advise on these following questions:

  1. How to determine the order from these plots?
  2. Is this data set appropriate for (S)ARIMA model? If not, will transforming the data, e.g. log transformation or differencing, help?
  3. Is there any other time series model recommended for this dataset?
  • 1
    $\begingroup$ I'm not sure where "the seasonal order of SARIMA is equal to the ACF lag with highest value" is supposed to come from, it's clearly not the case. What you have there is not unusual and looks very plainly like an AR with a spike at lags 1 and probably 2, and spikes related to lag 24 which is just the daily seasonality. You may also have other types of seasonality (monthly, day in month, etc) but the daily seasonality is pretty clear here. Try fitting a (1,0,0)(1,0,0)24 and plot the ACF/PACF of the residuals. $\endgroup$ – Chris Haug Jun 3 '18 at 19:57
  • $\begingroup$ Hi @ChrisHaug, Thanks for the reply! "the seasonal order of SARIMA is equal to the ACF lag with highest value" refers to this following [tutorial] ("datasciencecentral.com/profiles/blogs/…) $\endgroup$ – Nick Jun 4 '18 at 0:28
  • $\begingroup$ That tutorial has a number of unusual and/or incorrect suggestions. The plots you have there are typical of seasonal ARMA and an analysis can be conducted with the classical Box-Jenkins methodology, at least as a start. $\endgroup$ – Chris Haug Jun 4 '18 at 12:28
  • $\begingroup$ Hi@ChrisHaug I tried to implement SARIMA (1,0,0)(1,0,0)24. However, the residuals do not resemble white noise. This suggest that a model with higher order might do a better forecasting job. But when i tried to fit SARIMA (2,0,0)(2,0,0)24, the python model crashed saying SVD does not converge. Can it be because the data is not stationary, despite the fact that it passed the Dickey Fuller Test? $\endgroup$ – Nick Jun 4 '18 at 14:19
  • $\begingroup$ Looking at the plots again, you probably do have a unit root (the PACF at lag 1 is very high, close to 1). ADF is sensitive to the choice of specification (no drift/drift/trend, and the number of lags included), as well as to the presence of structural breaks. You should be building the models iteratively: first add either an AR(1) or a first difference, then look at ACF/PACF of residuals, probably add another AR, look at residuals, add a seasonal AR or a seasonal difference, look at residuals, etc. $\endgroup$ – Chris Haug Jun 4 '18 at 14:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.