Skip to main content

Contract rolls and expiry

What happens when a futures contract rolls, how to switch to the new one, and why your chart history stays intact.

Futures contracts expire. Each product has a series of them, and over time trading activity moves from one to the next. That handover is called a roll.

How the front month is decided

Hyperprop follows volume rather than the calendar. The contract with the most trading activity in a product is treated as the front month, and the platform updates automatically when that changes.

Volume is the honest measure, because activity often moves to the next contract days before the old one expires.

Switching when a roll happens

When the front month changes you will see a notification on the chart with a one-click option to switch to the new contract. Taking it moves you across without searching for the new symbol yourself.

Nothing forces you across. The old contract keeps working until it actually expires.

Your open positions are safe

A roll does not close anything. A contract that has rolled off keeps receiving live prices right up to its real expiry, precisely because open positions still need to be priced.

What a roll does not do is move your position to the new contract. If you want to be in the new one, you close the old and open the new yourself.

Chart history stays continuous

Charts splice history across contracts, so looking back on the front month does not stop at the point the current contract started trading. Each contract contributes the period when it was the leading one, stitched into a continuous series behind the current front month.

That is what lets you look back over a couple of years of a product without the chart running out.

When a contract expires

Once a contract has expired you cannot open new positions in it. Closing an existing position is still allowed, so you are never stuck holding something you cannot exit.

If an order in an older contract is refused, expiry is the likely reason. Switch to the current front month.

Did this answer your question?