Why Futures Calendar Spreads May Resist Simple HFT Anomaly Signals
Summary
The document questions whether a nearby-versus-next-month futures spread is a stable mean-reverting series suitable for high-frequency arbitrage. It challenges the assumption that the spread should track an interest-rate benchmark, explaining that futures relationships depend on contract-specific supply, demand, financing, and inventory conditions. A rolling one-minute mean and standard-deviation threshold is raised as a possible anomaly detector, but the answers do not validate it.
The discussion says roll-market trading helps keep contracts aligned and may limit opportunities based on speed alone. It also distinguishes true arbitrage, which would involve simultaneous offsetting trades, from a speculative bet on reversion. The practical advice is to gather real contract data and test the hypothesis; opportunities may be small and costly to capture. The replies are qualitative and market-dependent, offering no robust detection method or evidence from a backtest.
Key ideas
- Calendar spreads may reflect supply, demand, financing, and inventory rather than a stable interest-rate relationship.
- A rolling mean and standard-deviation threshold is proposed as a question, not established as a reliable detector.
- Roll-market activity can keep contract prices aligned and constrain speed-based opportunities.
- A bet on spread reversion is not risk-free arbitrage unless the offsetting trades can be executed together.
- The spread hypothesis requires testing on data from the specific futures market.
Tags
Full text
# How to detect price anomalies in HFT? # How to detect price anomalies in HFT? Let's say I'm developing an HFT application and seeking arbitrage in futures markets between MAY contract(M) and JUNE contract(J). In this strategy, my spread is `J-M`. I did not check with real data but I think this is a mean-reverting series... This spread should be around the interest rate, right? In some short periods of time, anomalies occur and the spread gets greater than the interest rate. My question is, how can I detect these anomalies. Does it work: `|spread(t) - mean(spreads in 1 minute)| > stddev(spreads in 1 minute)` ? Is there a more robust solution? ## Answer by ThatDataGuy (score 1) https://quant.stackexchange.com/a/54141 Many futures markets do not have stable intra-expiry relationships as they are related to the supply and demand dynamics of the underlying. It really depends on which contract. As LazyCat commented, get some data and test your hypothesis. I suspect that the answer will be, that there might be an arbitrage opportunity, but its so small, and the effort required to obtain it so large, that it isn't worth it. It's hardly an original idea. ## Answer by JoshK (score 0) https://quant.stackexchange.com/a/58628 First of all, the futures contracts are kept in sync via the roll market. Traders put orders in for the roll to buy or sell it. That keeps the contracts in sync with each-other. So by being very, very fast, you will not find any small opportunities as the roll market forces the far contract to stay in-line. So that eliminates the HFT angle. Now the other side, thinking that you can arbitrage the spread. Now, the word arbitrage implies that you will buy and sell simultaneously. Obviously you aren't going to do that. Instead you are hoping that there's some sort of reversion to the process. But, this is a process driven by the real funding and inventory needs of the street. You will have a hard time finding pure cyclicality. You will very rarely see any futures spread that trades at the implied LIBOR rate! Instead you are seeing the supply and demand for financing the spot.
Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.