> For the complete documentation index, see [llms.txt](https://docs.motivewave.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.motivewave.com/user-guide/charts-1/continuous-contracts-and-rollover.md).

# Continuous Contracts and Rollover

## Continuous Contracts <a href="#continuous-contracts" id="continuous-contracts"></a>

Continuous contracts may be constructed by MotiveWave using historical data from expired contracts. This feature is particularly useful for brokers/data services that do not have a continuous contract option (such as CQG, Rithmic, etc). The amount of historical data depends on the futures contracts and data available on the MotiveWave back fill server.

By default, continuous contract calculation is enabled. This can be configured globally in the global **Settings d**ialog (***Configure > Settings > Historical Data > General***)

<figure><img src="/files/iZItek1Gn9IwpxINDBwm" alt=""><figcaption></figcaption></figure>

The following options are available for configuring continuous contracts:

**Symbol**

**Default**  – Individual symbols will use their own Roll and Back Adjust methods.

**Allow Contract Specific Defaults** –  Enable this option to customize settings for specific symbols. If this is disabled, the selected options from the Roll Method and Back Adjust Method sections below will be applied to all symbols.&#x20;

**Roll Method**

The roll method determines how the dates for rolling from one contract to the previous contract are calculated.

* **None** – If this is chosen, then continuous contracts are disabled by default and only the historical data for the selected futures contract is displayed
* **Volume** – The option will choose the roll date based on the daily volume for each futures contract. The roll date is chosen when the daily volume for the preceding contract exceeds that of the current contract.
* **Other methods** – These options are for date-based rollover and are assigned specifically as the default rollover option for most major futures contracts.

**Back Adjust Method**

The back adjust method determines how to adjust the historical data between each contract. The following options are available:

* **Unadjusted** – This option will leave the historical data unchanged. **Note**: Gaps will appear where the data rolls over to the next contract.
* **Difference Adjusted –** Adjusts the data for the preceding contract using the difference between the daily opening prices on the roll date. **Note**: this difference is cumulative for each contract. For example, the third futures contract will be adjusted using the difference of roll date 1 + difference of roll date 2.
* **Cumulative Difference Adjusted –** This is the same as the Difference Adjusted method except it adjusts all contracts going back in time. This is the method you may want to use to **eliminate all gaps** from rollover.
* **Ratio Adjusted** – Adjusts the preceding contract using the ratio calculated from the daily opening prices on the roll date (ie OPEN(i)/OPEN(i-1)). Older contracts will be adjusted by multiplying the ratio by the adjustment ratio from the next roll over date

Continuous contracts settings may also be configured for each instrument (overriding the options in General Settings dialog) from the **Edit Instrument** dialog (right click on a chart and choose Edit Instrument).

<figure><img src="/files/ur8Lg4eT9XkMC6uLPxZS" alt=""><figcaption></figcaption></figure>

### Custom Continuous Contracts <a href="#roll-futures-contract" id="roll-futures-contract"></a>

You can also create internal custom continuous contracts by going to the ***File menu > New > Continuous Future***:&#x20;

<figure><img src="/files/tpozWG8ic5Ea7ga5sifs" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/c09A99vZpP1YRT0vcy8H" alt=""><figcaption></figcaption></figure>

## Rollover <a href="#roll-futures-contract" id="roll-futures-contract"></a>

This option is useful when the front contract for a futures contract changes. This feature will copy existing analysis files and optionally adjust the prices to the front contract. Open charts, watchlists and Depth of Market panels can also be updated to the new contract.

This can be configured globally in the **Settings** dialog (***Configure > Settings > Chart > Chart > Roll***)

<figure><img src="/files/l0U8LHTuocNZBlVKuMi5" alt=""><figcaption></figcaption></figure>

The default options for rolling to the next contract are as follows:

* **Roll Method** – Defaults roll method
  * **Unadjusted** – No price adjust is made
  * **Last Close** – Determine price difference between the close prices of the old contract and the new contract then copy and adjust all chart components based on that price difference from the old chart to the new symbol chart&#x20;
  * **Specific Amount** – Enter a specific amount for the price adjustment
* **Roll All Charts/DOMs/Time Sales** – Updates the symbol for any open charts, Depth of Market panels or Time & Sales panels
* **Roll Watch Lists** – Looks for all occurrences of the symbol in watch lists (or quote sheets) and replaces them with the new symbol.
* **Roll Instrument Settings** – Will roll the historical instrument settings and options under the **Advanced** tab (see **Edit Instrument** dialog).

To roll a specific futures contract, right click on the chart and choose **Rollover** :

<figure><img src="/files/0BrPPQYKfnNXKBSUkOqK" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/k1lzVgFKp3r22MB5zFze" alt=""><figcaption></figcaption></figure>

The dialog in the screen shot above presents the options for rolling to the next contract:

* **Instrument** – This field will default to the next contract. If you want to skip a contract (or migrate to a similar instrument), you can click on the dropdown list to search the instrument.
* **Adjust Method** – Use this field to adjust the prices for each of the components in the analysis. This has the following options:
  * **Unadjusted** – No price adjust is made
  * **Last Close** – Determine price difference between the close prices of the old contract and the new contract then copy and adjust all chart components based on that price difference from the old chart to the new symbol chart
  * **Specific Amount** – Enter a specific amount for the price adjustment
* **Roll Untitled Only** – Roll the Untitled Analyses only
* **Roll All Charts/DOMs/Time Sales** – Updates the symbol for any open charts, Depth of Market panels or Time & Sales panels
* **Roll All Watch Lists** – Looks for all occurrences of the symbol in watch lists (or quote sheets) and replaces them with the new symbol.
* **Roll Instrument Settings** – Will roll the historical instrument settings and options under the Advanced tab (see Edit Instrument dialog).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.motivewave.com/user-guide/charts-1/continuous-contracts-and-rollover.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
