support

All About Futures Rollover in Investor/RT

IMPORTANT

The IQFeed Continuous Contracts begin tracking the upcoming contract two-three days prior to Rollover however, the historical data is not premium adjusted until rollover. The solution is that during this time of the quarter (2-3 days prior to roll) use the non-continuous contract. For example, during this time period, instead of using @ES# as your symbol or DTNMA symbol alias, use @ESMYY. Once the actual roll date has occurred, you can return to using the Continuous contract.

If you are using a DTN IQFeed or eSignal and tracking a continuous contract, rollover is not required. Continuous contracts for DTN IQFeed end with a # such as @ES#. Continuous contracts for eSignal end with #F such as ES #F. However, if you are using a symbol which contains the month (letter) and year (number) such as ESM0, @ESM0, ES M0, or @ESM10, you will need to go through the rollover process.

What is Posting (Post History)? Do end-of-day (EOD) users need to post?

"Posting" is the process of recording the current daily prices (seen in the quotepage) into the daily database as the current daily bar. Posting Time is specified in the Session Preferences and is generally setup to occur a minute or two after the session closes. This process is not really needed in the end-of-day case. If you're just downloading your daily data after the session closes, you really have no need to "post".

When exporting RTL objects, can I specify a standard comment so I will not be prompted?

See Setup: Preferences: Import/Export.

Here you can specify whether you wish to be prompted for a comment or not. If you elect NOT be to prompted, you have the further option of specifying "no comment" or a fixed comment of your choosing, e.g. "This RTL object compliments of Charles Dow".

The comment exported with the RTL object is displayed to the recipient when someone imports your scan, signal, or custom indicator.

About Interactive Brokers Historical Data

Interactive Brokers historical backfill services can be unreliable but they do work. The problem with IB backfills is that IB is occasionally non-responsive to a download/backfill request. Additional requests have to be queued, awaiting the backfill in progress to complete. When IB is non responsive, the queue of awaiting requests essentially waits and waits and nothing appears to be happening at all. The DTN MA historical service is fast, accurate, highly responsive.

Can I import ticker symbols of pairs or spreads into Investor/RT from a text or csv file?

Yes. The file may be either a comma- or tab-separated text or csv file. The first line of the file is important and will tell Investor/RT that the following lines should be considered pairs or spreads (custom instruments). The first line should look like this:

/TYPE PAIR

The first line may also be used to tell Investor/RT that you would like to use division on the pairs instead of subtraction. The line above will default to subtraction, however, the line below:

How do I implement a stop and/or target in a trading system?

Assuming you have a system that goes both long (with BUY action) and short (with SELLSHORT action). And let's also assume we want to implement both a stop and a target on both the long and short trades. Let's also assume that we want the target to be 50 cents and the stop to be 25 cents.

In RTL, the token ENTRY gives us the entry price of any position. This token makes implementing stops and targets relatively simple.

How do I implement a trailing stop in a trading system?

Assuming you have a system that goes both long (with BUY action) and short (with SELLSHORT action). And let's also assume we want to implement a trailing stop on both the long and short trades.

Create the following two signals:

Set_Long_Trail_Stop
IF(POS_STATE = POS_LONG) THEN (SET(STOP, HI - 1))

Set_Short_Trail_Stop
IF(POS_STATE = POS_SHORT) THEN (SET(STOP, LO + 1))

Identifying Symbol Groups in QuotePages

We'll need to create a scan that we'll use to set a T# variable (we'll just use T#1 in our case) to the name of the quotepage (or something close to that name). We'll assume for this example that you have 3 quotepages with names of "GroupA", "GroupB", and "GroupC". The syntax of our scan will be as follows: SET(T#1, GroupA)

Pages