AMMDocumentationWebsite ↗
how to · 6 min read

Select futures contracts and manage continuous rolls

Review expiry, price mode, roll ownership and Chicago-time automation before changing a futures position.

Reviewed 2026-10-24 · Windows & macOS

On this page

Choose the actual contract#

Futures have dated contracts. A root such as ES names a product; ESZ6 identifies a particular month; ES_CONT is a roll-managed continuous series. Select the intended Rithmic or CQG source, exchange, root and month in the shared futures picker. Inspect description, expiration, point value, tick size/value and whole-contract quantity rules. Catalogue presence alone does not establish account permission or stored history.

The picker can list contracts even when a roll recommendation cannot be fetched. Treat a missing recommendation as unavailable guidance, not proof that the current month is safe indefinitely. Instrument Manager displays continuous status, active contract and roll date, and provides contract metadata and roll-table access.

A dated-contract chart retains that contract identity. A continuous chart keeps the stable ROOT_CONT identity while its executable broker/data symbol follows the active dated contract. Verify both identities before placing an order. Index futures, micro futures, crude oil and gold can have different point values, listing months, settlement and notice risks.

Inspect roll dates and adjustment#

The roll table shows current/next contract, rule date, effective roll date, pricing offset, last-trade date and available first-notice/provider-active dates. AMM uses a product-specific fixed rule by default, with supported volume/open-interest alternatives for historical construction. A roll date is not the same as expiration or first notice.

Continuous series are built from stored dated-contract minute/daily data. Difference or ratio back-adjustment can smooth the displayed history; the newest segment remains in current contract prices. Offsets need overlapping source observations around the pricing day. Missing source data, invalid adjustment or unsupported non-positive adjusted prices must be resolved rather than silently assumed away.

User roll-date/offset overrides are explicit per provider/contract. A roll that has happened cannot be moved forward to reactivate the old contract. An offset repair can change the historical series revision, so rerun affected research and refresh charts deliberately. A pending offset before its pricing day is complete is not a fabricated zero.

Choose the research price mode#

Continuous research forms offer Prices and Auto roll. Record both with results:

Price mode Economic interpretation
Point-in-time (live-equivalent) Uses the traded contract's raw prices for indicators, fills, stops, costs and P&L; position rolls have two real modeled legs
Adjusted series (NinjaTrader-style) Uses the stored adjusted series, carries positions across series rolls and has no roll trades/costs

A visually smooth adjusted-series result is not a live-equivalent execution result. Compare like modes when reviewing another platform. With point-in-time auto roll off, a research position can remain on its old contract until it closes, an algorithm requests a roll or the last safe day rule closes it without reopening. Live sessions warn about last safe day; they do not automatically close a position there merely because research does.

Understand live ownership#

A continuous session checks for a due roll. If it owns no old-contract position or working orders, it can switch in place to the active contract. If it owns exposure, the roll remains pending and its actions continue using the old contract so a close cannot accidentally open next month's position.

Ownership means that session's allocations/fills and tracked working orders. It is not the account's entire net position. Another strategy or external platform's holding must not be rolled by this session. A manual chart after restart does not automatically adopt its old account-view holding as a newly owned position. Read the warning and account history when that distinction matters.

During a switch, manual actions can be temporarily refused. Indicators and historical chart state are re-seeded into the new price frame; a history revision change requires chart-history refresh. Algorithms receive the roll callback. Orders priced during the old/new switch can need explicit resubmission in the new price frame; do not assume a held limit's old price remains valid.

Roll an owned position manually#

When a continuous session reports an owned pending position, use Roll Position. The roll_position action closes exactly that session's signed old-contract quantity, waits for confirmation, switches the route and reopens the same signed quantity in the new contract. Those are actual market orders with costs and slippage, not a bookkeeping rename.

Review market open, broker connection, recovery state and working orders first. Unrelated working orders block the roll; AMM does not silently cancel/reprice them. Shared account-wide protection can require manual removal/resizing before rolling only one session's part. Stops/targets transfer only under the venue's supported protection contract and the resulting report. A shifted level through market, missing quote or unsupported attach path can leave a level unset or require later action. Inspect the final protection result.

If a close/reopen is unconfirmed, check the exact account and engine order history. A failed response does not mean nothing traded. Do not repeat Roll Position blindly while the position state is unknown.

Configure automatic roll deliberately#

Open Settings › Futures rolls to inspect the platform default and execution time per family: EquityIndex, Energy, Metals, InterestRate, Currency and Grains. Times use America/Chicago, including DST; 09:00 CT is not a permanently fixed UTC hour. A time from 17:00 belongs to the session opening the previous evening. Closed-market scheduling defers to the next open.

The platform default is Off. Session launch/manual chart settings offer Platform default, On or Off. An algorithm's explicit AutoRoll choice overrides its session request. Manual continuous positions can set a higher-priority per-position On/Off/Platform choice through the position menu or roll banner. Read the status's effective value and source, then its scheduled execution UTC time.

Auto roll uses the same owned-position close/switch/reopen flow. A refusal with no changed exposure can retry once after one minute. A second failure, or uncertain close/reopen, stops automation for that roll and warns for manual inspection. Turning On is permission for future actual roll orders under that configuration; verify the environment before saving.

Review the ledger and data gaps#

Results show price mode, effective auto roll, rolls, roll cost and last-safe-day warnings. Trade and broker-history rows mark roll legs and group related legs. Rolled positions count as one trade describes grouped performance statistics; the underlying close/reopen fills remain visible and economically distinct.

Check every source contract needed by the requested range. Expired contracts can be unavailable from the live provider; CQG continuation segments can supply some expired history with explicit identities. A continuous chart cannot conceal a missing old-contract window. Review known gaps, schedule holidays/maintenance and the exact adjustment sources before interpreting a long backtest. See Historical data, Instruments and groups, Rithmic and CQG.

Application screenshotOpen original ↗