I am quite new to time series analysis and I am currently working on improving a VAR model in R. The problem is that when I want to find out what number of lags is best (by using the criterions "AIC", "HQ", "SC" and "FPE"), all of the ICs are telling me to use lag=1. This is my code (I used "AIC" in this example, but all the others are suggesting the same):

> attach(data)
> diffa<-diff(V1)
> diffb<-diff(log(V2))
> adf.test(diffa)
> adf.test(diffb)
> ts.a<-ts(diffa)
> ts.b<-ts(diffb)
> ts.y<-ts.union(ts.a,ts.b)
> VAR.y<-VAR(ts.y,type="const",lag.max=10,ic="AIC")
> summary(VAR.y)

I already made sure the variables are stationary. Other papers on the topic I am working on are always stating that the criteria are telling them to use multiple lags. I use similar data and I am worried because even when using data from different countries, I always get a lag of 1. The data is similar but not the same, could it be that it is a lucky coincidence? Or did I miss anything? Should I check for anything else? As stated above, I am new to this and help is very much appreciated.

  • $\begingroup$ What kind of data is it? How long are your time series (how many observations)? What is the time series frequency (quarterly, monthly, ...)? Why do you expect a higher lag order? $\endgroup$ Commented May 5, 2017 at 11:30
  • $\begingroup$ It is data about spreads and (stock market) index returns. I want to take a closer look at their relationship by using a VAR model. There are 209 observations; weekly data collected over 4 years to be exact. The reason I expect a higher lag is that it made me suspicious that I get completely different results (always a lag of 1) than the people already analyzed similar topics. Plus, as mentioned, I am not too familiar with VAR yet, so I guessed that I might have missed out something. $\endgroup$
    – Kuma
    Commented May 5, 2017 at 12:17

1 Answer 1


The data is financial returns. You do not expect autoregressive dynamics (serial correlation within and across series) in financial returns. If there were some, you could predict the returns and have a free lunch -- too good to be true. Thus the optimal lag should be zero.

Since the procedure you are using does not consider the zero lag but rather only positive lags (1 through lag.max), it selects the closest one to zero, which is lag 1. If the procedure allowed for zero lag (which it ideally should), you would likely find zero lag as the recommended one.

  • $\begingroup$ On the one hand, you are right, there is no free lunch. On the other hand, couldn't it be due to market frictions that there is serial correlation? In addition: I want to find out whether the derivative market or the stock market takes a leading role. For that purpose (as far as I know), one can use VARs and Granger causality, right? $\endgroup$
    – Kuma
    Commented May 5, 2017 at 14:20
  • $\begingroup$ @Kuma, Serial correlation due to frictions could perhaps be there, especially if you are using some illiquid stocks rather than major ones or liquid indices. But even there the serial correlation should disappear in lower frequencies, such as weekly. You can of course try and see. But if the serial correlation is quite week, it will not help predict future values of the series, thus AIC will tell you zero lag is optimal. It is only when the serial correlation is strong enough to be useful for prediction that the optimal lag is nonzero according to AIC. $\endgroup$ Commented May 5, 2017 at 15:04
  • $\begingroup$ Yes I think that is true, I will of course check that. There has to be something in it, otherwise there would not be countless of papers examining this. Just to be sure: The code I posted above - in general - would be correct to estimate a VAR, am I right? $\endgroup$
    – Kuma
    Commented May 5, 2017 at 15:17
  • $\begingroup$ @Kuma, yes, more or less right. $\endgroup$ Commented May 5, 2017 at 15:28
  • $\begingroup$ oh okay, I am very glad to read that. Thank you for your help. I really appreciate it! $\endgroup$
    – Kuma
    Commented May 5, 2017 at 15:34

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.