Skip to content
All library documents

Rolling Corn Futures Contracts by Open Interest

Article Quant Q&A · Author: LuLuLu

Summary

The document describes a proposed method for turning expiring corn futures contracts into a continuous price or return series. It tracks the nearby and first-deferred contracts and suggests switching between them when open interest in the deferred contract becomes consistently greater, on the premise that this reflects liquidity moving to the next contract. The author asks how to implement the splice in Excel and whether the nearby contract should remain in use until near its last trading day.

The discussion presents a practical data-handling problem rather than a tested algorithm or completed implementation. It gives no comparison of roll rules, numerical results, or definitive answer about how long open-interest dominance should persist. A simple daily comparison could cause repeated switches if open interest crosses back and forth, and directly joining contract prices can create artificial jumps when the contracts trade at different levels. The proposed criterion therefore needs explicit persistence and return-calculation rules before it can support long-term analysis.

Key ideas

  • A continuous corn futures series can be assembled by selecting between nearby and first-deferred contracts.
  • The proposed roll signal is a sustained change in open-interest leadership.
  • Open interest is used as a proxy for where market participation is shifting.
  • The document poses implementation questions but does not specify or test a complete roll algorithm.
  • Price gaps between contracts and unstable daily signals require explicit handling.

Tags

Full text
# How to construct a continuous price time series out of futures raw data in Excel?


# How to construct a continuous price time series out of futures raw data in Excel?












My object of research is corn futures:

It is well known that corn futures expire 5 times per year: March, May, July, September and December. Due to their finite life that is limited by their maturity, these events are adversely influencing price time series and makes futures raw data unsuitable for long-term statistical analytics. To overcome this issue, historical raw futures contract data (date, price, open interest) has to be modified and rolled with the aim to create a continuous time series. Considering the existence of different methodologies to select roll dates before a contract’s expiration (see several internet sources and articles), I choose the approach to select roll dates for corn futures based on market movements of open interest.

Consequently, I used two separate individual future price time series to finally construct an artificial continuous return time series: the nearby contract, meaning the contract nearest expiry (= front month – corn C1 contract) and the first-deferred contract, meaning the next contract with the second-shortest time to expiry (= back month – corn C2 contract). To select the roll date, I plan to implemented an algorithm that depending of the level of open interest shifting from one contract to the other splices together the two successive contracts around the last trading day. According to the open interest criterion, the shift between the two series is carried out when the open interest value of the first-deferred contract is consistently greater than the nearby one. This indicated that market participants (liquidity) are leaving the nearby and trading the first-deferred contract. In order to construct a continuous price series, prices should be taken from the contract with consistently higher levels of open interest.

So far so good.

My question now:

- How to implement the algorithm switch from one to the other and to stick the contracts time series together practically?

- Do I understand right, that the nearby (C1) contract dominates the price time series and only around last trading day of the nearby with a decline in open interest I should switch to the first-deferred?

- How to implement that switch in Excel? Are there special constraints? Or is it “easily” done with an IF-Formular like “ IF OI is greater in the NB, use price of NB; if not take the first-def. price?

Please find below my excel sheet with the time series and all relevant data:

Thank you for your comments and help on that issue.

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.