# Understand order of time series

I am trying to build a time series model. I looked at the ACF/PACF and adf test of the series and thought that an ARMA(p,q) model will be suitable for the data. However when I run auto.arima(), it's showing the best model as ARMA(0,0). I am unable to understand how is this possible considering order 1 auto correlation to be 0.63. Attaching the acf/pacf plots . Appreciate any help on understanding the time series and suggestion on type of forecast model for this data. Thanks in advance

ADF Test :
Augmented Dickey-Fuller Test
Dickey-Fuller = -6.2373, Lag order = 13, p-value = 0.01
alternative hypothesis: stationary

> auto.arima(ConvPCT)
Series: ConvPCT
ARIMA(0,0,0) with non-zero mean

Coefficients:
intercept
0.0191

sigma^2 estimated as 0.0002188:  log likelihood=6467.12
AIC=-12932.24   AICc=-12932.23   BIC=-12920.74


if I run an ARMA(1,1) model, this is what I get

> Arima(ConvPCT,order=c(1,0,1))
Series: ConvPCT
ARIMA(1,0,1) with non-zero mean

Coefficients:
ar1      ma1  intercept
0.9633  -0.7048     0.0191
s.e.  0.0076   0.0235     0.0018

sigma^2 estimated as 0.0001133:  log likelihood=7227.76
AIC=-14447.52   AICc=-14447.5   BIC=-14424.53


Here are two links for the same data file filesave link and wikiupload link. For model building, we can consider instances > 6% as outliers

• What does the series itself look like? Is it even stationary? – Glen_b Jul 18 '15 at 8:05
• yes it's stationary as shown by adf test – Learner Jul 18 '15 at 8:16
• Dickey-Fuller = -6.2373, Lag order = 13, p-value = 0.01 alternative hypothesis: stationary – Learner Jul 18 '15 at 8:16
• I can't see what it looks like from that. Note that the null is "integrated" and the alternative is really "not integrated"; it's possible for series to be nonstationary in all manner of ways. – Glen_b Jul 18 '15 at 8:55
• I see what you mean. For ADF test the alternative hypothesis is : stationary. Since the p value is 1%, I rejected the null and accepted alternative (stationary). However the kpss test shows level stationary null hypothesis can be rejected. > kpss.test(ConvPCT[,'Y'],null="Level") KPSS Test for Level Stationarity data: ConvPCT[, "Y"] KPSS Level = 5.7193, Truncation lag parameter = 11, p-value = 0.01. Is there any way I can share the data? – Learner Jul 18 '15 at 9:44

Parametric statistical tests often have unstated assumptions. For example the ADF test assumes no deterministic structure is present i.e. outliers/level shifts/seasonal pulses/time trends. The test also assumes invariant parameters over time. The test also assumes invariant error variance over time which is suspect given the plot of the data. Plots of data are often insufficient to identify assumption violations but in this case it is unusally informative. There is more than a hint of non-constant variance in the observed Y BUT the critical issue/assumption regards the constancy of the error variance from a reasonable model. I took your data and used AUTOBOX (my tool of choice), a commercial piece of software that I have helped develop to automatically analyze data. As surmised not only where there numerous pulses found but three points in time where the series changed level ( 465(+) , 904 (-) and 1792 (-) . Additionally a significant error variance reduction was detected at periods 926 and 1850 suggesting three regimes.

Following is a graph of the actual/fit and forecast . The variance change points were . The final model includes the 3 level shifts , a score of pulses and an AR(1) coefficient. Here are some model details ... and .

In summary the basic tools of ARIMA model identification make a lot of assumptions. Validating those assumptions and empirically identifying remedial action (pulses/level shifts/error variance breakpoints) culminates in what appears a satisfactory model. Unfortunately textbooks (even free on-line ones ) and very basic web tools are often inadequate to deal with the complexities you face with this data set. These are really not complexities but opportunities ! . The lessons from Ecclesiastes come to mind regarding when I was a child , simple tools were useful but as a man I need to use more powerful tools.....such is the advancement of science. Thanks for sharing this rather daunting time series with the group as there are lots of lessons to be learned here.

EDIT TO RESPOND TO COMMENT 1 and 2 :

The data is daily thus the seasonality is 7 as you have 7 readings per week. The transformation that is applied to Y is a weight derived from the significant change in variance that was detected at period 926 and 1850. In this case due to reducing error variance the whole idea here is that more recent values are more believable (less variability) and thus should have more weight. Non-constant error variance does not necessarily suggest the need for a power transform or a Garch transform as evidence of deterministic change points in error variance can be readily dealt with GLS (Generalized Least Squares) which essentially applies variance-stabilizing weights to the data. The actual weights used here for period 1-925 was .6 and for periods 926-1849 a .89 and for periods 1850-2314 a 1.0. These are computed from the two F values (.448.and .789 respectively ) . For example .89 is the square root of .789 .

YET ANOTHER EDIT TO RESPOND TO THREE COMMENTS

1&2) As you said the off-diagonal elements of the var-cov reflect the ar(1) structure while the diaonal elements reflect the non-constant error variance. These diagonal elements wotld reflect three regimes based upon the two f tests . What I was doing in my summary was to illustrate that adjusting the 2314 values for "degree of belief" was functionally equivalent to GLS where the elements on the diagonal were based upon the weights developed by TSAY but never put into a GLS persepctive , which was my small contribution . Using AUTOBOX there is no need to form the variance-covariance matrix but if you are employing functional computing alternatives then you cam develop that from the F values required to make the co-variance matrix of the residuals idempotent..

3) yes level is a dummy variable (0 before 1 at point ant thereafter )

historical pulses DON'T affect forecasts

don't know what you mean "through impulse response "

AUTOBOX presents the Intervention Variables based upon there order of importance however there is an additional report which presents them chronologically. I have shown a partial list.

[1-.348B**1] is the AR component which is a denominator polynomial on the error process thus the -1

If you wish you can contact me off line and I will try and help further as it sounds like you are very interested in my findings. I can be reached at 215-394-8897 if you would like more help.

• Hi Dave, thanks a lot for the detailed explanation. I am currently trying to understand in more details about the points you mentioned in your comment. Could you please provide some details about how to does the x axis representation of the above plot relate to seasonality of 7? And which transformation is applied to the y axis? – Learner Jul 21 '15 at 8:50
• See my EDIT which responds to your comment . – IrishStat Jul 21 '15 at 10:31
• @Learner Is my answer clear. If not please feel free to contact me and I will try and verbally communicate with you (dialogue) – IrishStat Jul 22 '15 at 15:53
• Hi Dave, actually I have few queries and since your answers I had been doing research on how best I can implement your inputs using the available statistical software . It will be of great help if you could guide me in the following points. I have divided my comment into multiple comments as it's too long for the comment textbox – Learner Jul 22 '15 at 21:08
• I have come to the understanding that I will have to use an iterative method for parameter estimation. As of now I am considering the following approach: 1) Find out the level shifts using dummy variables 2) Fit a model using level dummy and AR(1) 3) Using the residuals of the above models identify pulses (I believe they are not seasonal) 4) Build model using both level and pulses and apply GLM to the residuals to find AR estimates However for the GLM model I need to estimate the covariance matrix and I am not sure how can I estimate the matrix. – Learner Jul 22 '15 at 21:09