Help > Continuous Contracts
User-defined continuations, (UDC) are constructed price time series for futures. Futures are forward contracts offered on basis of commodities, stocks, indexes, currencies or assets. All futures have a fixed expiration date. Therefore, the history length of futures is limited and ends on the day of expiration. For analysis and testing of trading systems this poses a problem since the available data for each contract is too small.
The solution to this problem is continuous contracts, which include the concatenated price data of expired contracts. You can use continuous contracts for
- long-term analysis of future markets
- searching seasonal trends in future markets
- trading system tests over longer histories
Tradesignal offers several ways to set up continuous contracts. Depending on your data provider, you have the choice between several adjustment and adaptation functions. This way, you can add your own creations to the continuous contracts offered by your data provider. The result and all its included calculations is saved as a symbol, which allows further handling and analysis.
Set up a User-Defined Continuation
 |
User-Defined Continuation Wizard |
Since a user-defined continuation (UDC) acts like a normal symbol, it is set up via the context menu of a symbol list.
- Select New Symbol in the context menu of a symbol list.
- Choose the option User-defined continuation.
The user-defined continuation wizard opens.
Note that depending on your data provider, some of the following options and adaptation methods might not be available (grayed out).
Setting up an UCD is done in four steps.
Contract Selection
 |
Contract Selection |
Future Root Code - Enter a Future Root Code, for example "S" for soybeans.
Starting Contract Year - Enter the starting year for the futures.
Next Contract to Select - If no special specifications have to be met for the contracts, select an entry from the list. However, for several reasons, some contracts are not handled the same way at all times of the year and therefore should be exempted from the history. There are several ways to exempt contracts:
- Exclude the contracts based on a periodic scheme, such as selecting "every third nearest to the expiring" for usage only.
- Exclude the contracts of one or more defined months. For this option, select or deselect the check boxes in front of the months' names. You can also click the All button for all months, or the Quarters buttons to select contracts from March, June, September and December.
Rollover Method
 |
Rollover Method |
Here you can define the rollover method. You can either use fixed intervals or let the market define the rollover moment. For the latter, conditions based on open interest and trading volume are available.
Rollover Trigger
Rollover strictly on the expiration day of the contract - The history of the new contract is connected to the history of the expiring contract on the expiration date.
Rollover strictly on a specific day of the expiration month of the contract - For this method, you can define on which day of the expiration month the rollover will take place.
Rollover a number of days before the expiration day of the contract - For this method, you can define a number of days before the expiration day on which the rollover will take place.
Rollover a number of days before the expiration month of the contract - For this method, you can define a number of days before the expiration month on which the rollover will take place.
Rollover when Open Interest of the next contract exceeds the current contract - The rollover date is controlled by the market. When the open interest of the next contract exceeds that of the current contract, the rollover takes place.
Rollover when Volume of the next contract exceeds the current contract - The rollover date is controlled by the market. When the trading volume of the next contract exceeds that of the current contract, the rollover takes place.
Rollover when Open Interest OR Volume of the next contract exceeds the current contract - This is a hybrid of the two previous methods. The rollover takes place when either the open interest or the trading volume of the new contract exceeds that of the current contract. The rollover date is controlled by the market.
Rollover when Open Interest AND Volume of the next contract exceeds the current contract - This is a hybrid of the two previous methods. The rollover takes place when both the open interest and the trading volume of the new contract exceed that of the current contract. The rollover date is controlled by the market.
Rollover Trigger Options
 |
Rollover Trigger |
The volume or open interest conditions can be tracked for several days.
Trading days before expiry - Set the number of days for tracking. Select all (*) or the number of days (0-31) from the list.
Consecutive trigger occurrences - Select the number of triggers that have to be set off (1-4).
Rollover - Advanced Options
For some methods, the
Advanced button is available. It opens another dialog in which you can set rollover intraday details for trading periods shorter than a day.
Use data only from the expiring contract - On the expiration date, only contract data of the expiring contract are taken into account for the calculation.
Use data only from the continuing contract - On the expiration date, only contract data of the new contract are taken into account for the calculation.
Combine data from both contracts into a single candle - The data of both contracts is used to calculate a combined value.
Include non-trading days in all interval calculations - Select this option to include non-trading days into the calculation for intervals of the rollover triggers.
Force rollover to occur at the following time - For trading periods shorter than a day, you can set the time. Enter the hours and minutes in the respective fields.
Data Adjustment
 |
Data Adjustment |
User-defined contracts are constructed by mathematical concatenation of price histories of single contracts. This is done to avoid the so-called rollover gaps, price differences between the expiring and the new contracts. However, this may result in side effects like extreme price divergence in past histories of continuous contracts as compared to the originally traded contracts. Choose the data adjustment method depending on your preferences or to avoid certain side effects.
Data Adjustment Method
No Adjustment - The data of the contracts is simply concatenated without further adjustments. This results in a large price gap at each rollover date. However, the advantage is that even histories in the distant past still show the real traded prices.
Backward Adjustment - The history of the expiring contract is adjusted to the price of the next contract, i.e. either raised or lowered. For each additionally concatenated contract, the complete past history is adjusted this way. Therefore, the resulting data for the distant past is very different from the actually traded prices. It is also possibly to receive negative (nonsensical) values in the process.
Forward Adjustment - The history of the new contract is adjusted to the price of the expiring contract.
Proportional Adjustment - For this, the complete history is calculated anew. All past prices are multiplied with the ratio of the input fields (see below). This way, no negative values can result since the values are multiplied instead of subtracted.
Fields with which to calculate the adjustment
Select which fields the chosen adjustment method should be based on.
Closing price of both contracts - The calculation is based on the closing prices.
Open of new contract; Close of expiring contract - The calculation is based on the close of the expiring and the open of the new contract.
Opening price of both contracts - The calculation is based on the opening prices.
Average price of both contracts - The calculation is based on an average, namely (Highest High + Lowest Low / 2) of both contracts.
Advanced Options for the Adaptation
For some settings, an additional dialog is available under
Advanced.... Here you can define which contract data should be used for calculating the price difference.
The bar after the rollover day Same day as the rollover daySummary
In the summary you can see an overview of your settings. You can also select the option
Create a New chart using this UDC when the wizard finishes.
Manage Continuous Contracts
Via the context menu of the contract symbol you can reach all other functions for the contract:
- You can use continuous contracts in the documents Chart, Market Profile, Watchlist, Scanner and Portfolio.
- You can copy, rename or delete contracts.
- You can open the user-defined continuation wizard to edit the adjustment and calculation methods. To do so, select Edit Continuation Symbol in the context menu.
Example: Creating a Continuous Contract for Futures
- In the toolbox, click on Symbol Lists.
- Click on New Symbol to open the Symbol wizard.
- Select user-defined continuation and click on Next. The user-defined continuation (UDC) wizard opens.
In the UDC wizard:
- For Future Root Code, enter a symbol/shortcut, e.g. "S" for soybeans. (Futures are not automatically available for all account types. Contact Tradesignal for an upgrade, if necessary.)
- From the list of contract series, select the top entry so that all available contracts will be taken into account.
- Click on Quarters to select the four months in which quarters end.
- Click on Next.
- As trigger for the concatenation, select Rollover when volume of the next contract exceeds the current contract.
- Click on Next.
- Select Proportional Adjustment and closing prices of both contracts as fields for the calculation.
- Click on Next.
- Check the Create a new chart using this UDC when the wizard finishes option and click on Done.
- Enter a name for the contract.
The continuous contract now appears as symbol in the symbol list.
Links
Literature
- Fundamental Analysis - Jack D. Schwager