Quantitative Finance Stack Exchange is a question and answer site for finance professionals and academics. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I used the daily returns of SPX Index, SPY US Equity, and SPA Index. I then calculate their standard deviation as hedging instruments with respect to SPX Index, i.e., (spx_ret - spy_ret) or (spx_ret - spa_ret). However, the results I obtained were strange:

SD (spx_ret - spy_ret) = 0.0012959
SD (spx_ret - spa_ret) = 0.0006794

How can an ETF have a larger tracking error? I thought Futures are almost like a "perfect hedge" and ETFs have huge tracking error due to management and rebalancing fees. Am I missing something in the calculation?

share|improve this question
1) isn't the ETF error larger (0.0012959 > 0.0006794)? 2) I would expect the ETF tracking error to be lower. It holds the actual index components and has fewer transactions than the futures index. The futures contracts must be rolled periodically, while the ETF only needs to transact for index constituent changes. – Joshua Ulrich Jul 16 '14 at 11:52
yes typo. etf error is larger – Mariska Jul 16 '14 at 23:40

It depends on your ETF. Some have synthetic exposure to the index sold by a sponsor (ie someone give them exactly the performance of the index) but this has a cost (a constant / deterministic drag on the NAV of your ETF which doesn't appear in your tracking error).

Futures on the other hand have basis, are sensitive to changes in implied dividends and short term rates, and rolling costs, so they only perfectly track your index if you look at them between 2 rolling dates.

share|improve this answer
how should I "adjust" the futures price for the factors you mentioned? – Mariska Jul 16 '14 at 23:41
You can't really adjust, those are traded instruments so whatever price they finish at is the "right" price. If you want to formalize it a little (assuming no dividends ie you're looking at an excess-return index), the value of your future is $\exp(-r(T-t))S_t$ with $T$ the expiry of the future (it's an arbitrage argument, you borrow money, buy the stocks etc.). If you want to be really precise, you also need to take into account the margining of the future (you post cash to the exchange which in turns gives you interest). – Matt B. Jul 17 '14 at 10:49
hwo about rolling costs? If I'm using the generic futures for backtesting, how should I handle the rolling costs? – Mariska Jul 18 '14 at 0:39
Agree, it depends on the ETF and actual asset class, in case of VIX futures vs VIX ETF (VXX) the ETF has a much larger tracking error. Case in point, VIX Index advanced 39% at some point while the ETF advanced less than 9%. The futures fared a little better. The high tracking error (to the index) is related to several VIX specific issues but this is an example where generally the ETF tracks worse than the futures. – Matt Wolf Jul 18 '14 at 6:08
@Mariska : your rolling costs are trading costs, so they can be a bit hard to compute but sometimes you have "rolling contracts", where you buy the new contract / sell the old one (or the opposite). In that case, you simply have a bid-offer (provided that you roll close to the expiry). The generic future in bloomberg has the bad tendency to drop around the rolling dates so you need to be extra careful on the backtest. – Matt B. Jul 18 '14 at 10:44

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.