Researching a return series on some currency pairs I grabbed 2 years worth of daily data and got to work trying to fit an ARIMA/GARCH model to it.
Fitting the (log) return series:
r = tick2ret(midPrice)
and then calculating the ACF and PACF
I get plots that look like:
Clearly the return series is mean reverting with it's mean hovering comfortably around zero.
About this time I usually say "a ha!" and spot the
q I need to fit an ARIMA model from the ACF and PACF. However, the only lag here that is significant (considering ~5% of the lags touching will be by chance) is lag 0. This occurs on both the ACF and PACF. This means my return series is discrete white noise! That can't be right at all.
Going further and performing the ljung-box test on the return series:
[h,p] = lbqtest(r,'Lags', 8);
h = 0 and
p = 0.7746 indicating we almost certainly have no autocorrelation up to lag 8.
I feel like something is going wrong here. My intuition would tell me if the return series is mean reverting you would certainly have autocorrelation up to some lag.
What could be going wrong here? I'm still new to MATLAB (coming from R) so it's possible I'm doing something wrong...but I don't think so...