I’m looking to algorithmically execute future trades (e.g. ES) from analysis of spot index (e.g. ^SP500) using limit orders. This requires a reasonable approximation of where the future price should be relative to the spot index value.
The question is, how would you do it?
Currently, I’m am looking to algorithmically:
- Calculate the basis (spread between future price and spot index value) for each bar/period (e.g. 30mins) during cash hours.
- Construct a line of best fit for “recent” history of basis to approximate current basis level. While I am yet to define “recent”, it should be long enough to capture any contango / backwardation effect (attached).
- Form a distribution of spread values minus the best fit estimates to understand the variability of actual futures prices around best fit estimates.
- Use the index value adjusted by the derived basis estimate as the order limit price.
While high level, I believe this approach would provide a price with which to execute a limit order and the probability of being filled.
For clarity, I am not looking to arbitrage between index value and future price. I am simply looking to analyse the index and then execute a futures limit order based on the "price" action in the index. Two options I've considered and decided against are:
- Analyse the price action of the future (as opposed to the index) and execute orders appropriately.
- Analyse the price action of the index and execute market orders (as opposed to limit orders).
In this fashion, if it is an ill-conceived idea to estimate a price for use in a limit order, I am all ears.
Would you do it the same? Differently? What holes can you see?
Thanks
Shannon
Comment