Times are UTC.
active_until is the boundary through which the listed dated future remains active for the QFEX symbol. Query the API at execution time instead of hardcoding this page because the published calendar can change.Published calendar
CL-USD
COPPER-USD
NATGAS-USD
US100-USD
US500-USD
Roll behavior
US100-USD and US500-USD switch to the next listed contract after the prior contract’s active_until boundary.
For CL-USD, COPPER-USD, and NATGAS-USD, the oracle blends the front and next contracts over the final five CME business-day boundaries before active_until. Weekends and configured CME holidays do not advance the blend.
Each business-day boundary lands at 17:30 America/New_York, the same wall-clock time as active_until. In the published calendar above that time appears as 21:30 UTC while US Eastern is on daylight time and 22:30 UTC while it is on standard time. The blend advances by exactly one row of the table below at each of these daily boundaries, so the changeover to 100% next contract completes at the active_until timestamp itself.
The first step off 100% front therefore occurs at the 17:30 ET boundary five CME business days before
active_until, and each subsequent business day shifts another 20% until the next contract is fully active.
Query the live calendar
With the QFEX CLI:qfex_symbol, future_symbol, active_until, and expiration. If time is omitted, the endpoint uses the current UTC time.