I got a few e-Mails asking similiar questions, so I thought I post my answers here
- Can I use FT in simulation mode while trading real using another frontend.
Yes you can. You just have to make sure, that you have IB API 8.61 (the current IB API release version) installed on your computer
- Does that impair the use of the other frontend? In no way the sim mode of FT should influence my real trading.Maybe I should trade anothert symbol in FT?
No. Sim trading in FT will send no orders to your IB TWS
- As datafeed I use Esignal. As I understand the backtest module can use playbackfiles of esignal. Does it works this way:
I playback the esignal tickfiles and I see a zlr signal long (woodies cci) and I take a long in FT with a certain strategy.At the end the file is stored in FT with the entering trade signals.
No, not at the moment.
Right now there are 2 ways to get tradesignals from ESignal to FT
1. Manual
You write an ESignal Playbackfile in ESignal and save it on your harddisk.
Now you take your chart, go over the chart and make a note at what time your ZLR's occurred.
You open the ESignal Playback file with Notepad (The files are stored in the \program files\ESignal\Downloads folder)
You goto the Tick at which you got your Signal and add a Sell or Buy at the end of the line
Here is an excerpt of an ESignal Playbackfile. Say a Sell signal occurred at 000200, which is 2min after midnight EST.
You add Sell at the end of the line T,051005,000202,1.1965,1,
; Symbol=6E #F
; Date=10/05/05-10/18/05
T,051005,000013,1.1965,1,
T,051005,000122,1.1966,1,
T,051005,000132,1.1965,1,
T,051005,000132,1.1965,1,
T,051005,000135,1.1965,1,
T,051005,000135,1.1965,1,
T,051005,000143,1.1965,3,
T,051005,000143,1.1965,3,
T,051005,000152,1.1965,2,
; Date=10/05/05-10/18/05
T,051005,000013,1.1965,1,
T,051005,000122,1.1966,1,
T,051005,000132,1.1965,1,
T,051005,000132,1.1965,1,
T,051005,000135,1.1965,1,
T,051005,000135,1.1965,1,
T,051005,000143,1.1965,3,
T,051005,000143,1.1965,3,
T,051005,000152,1.1965,2,
T,051005,000202,1.1965,1, Sell
T,051005,000203,1.1965,1,
T,051005,000256,1.1966,2,
T,051005,000256,1.1966,1,
T,051005,000300,1.1965,3,
T,051005,000407,1.1966,1,
T,051005,000431,1.1966,1,
T,051005,000446,1.1967,1,
T,051005,000203,1.1965,1,
T,051005,000256,1.1966,2,
T,051005,000256,1.1966,1,
T,051005,000300,1.1965,3,
T,051005,000407,1.1966,1,
T,051005,000431,1.1966,1,
T,051005,000446,1.1967,1,
Do that for every signal you got in your charts and when done, save the file.
Now you can Backtest this file as often as you like in FT without using ESignal or having it open.
Assuming you have something between 5 and 20 signals a day, I think the manual method is practicable and does not warrant the development of an automatic strategy
2. Automatic
ESignal and FT can be linked, so that a Playback running in ESignal can be traded in FT using the “CustomFT.efs” study supplied with every copy of FT and to be found in the \program files\futures-trader folder
The same datalink can also transmit Tradesignals.
For this to work, you will need to add code to your charts, so automatic tradesignals are generated and display on the chart eg. in the form of arrows.
Then you would have to "enhance" the custom study "SendPricedataFT.efs", so the tradesignal is transmitted at the time you get it on the chart.
Here is a copy of the SendPricedataFT study
/*********************************
www.futures-trader.net (c) Copyright 2004
*********************************/
var myDLL = new DLL("ESignalToFT.DLL");
www.futures-trader.net (c) Copyright 2004
*********************************/
var myDLL = new DLL("ESignalToFT.DLL");
function preMain() {
setPriceStudy(true);
setStudyTitle("FT-Dataconnection");
setShowCursorLabel(false);
myDLL.addFunction("ConnectFT", DLL.DOUBLE, DLL.STDCALL, "ConnectToFT", DLL.STRING, DLL.INT, DLL.DOUBLE, DLL.DOUBLE, DLL.DOUBLE, DLL.DOUBLE, DLL.DOUBLE, DLL.DOUBLE, DLL.DOUBLE);
}
setPriceStudy(true);
setStudyTitle("FT-Dataconnection");
setShowCursorLabel(false);
myDLL.addFunction("ConnectFT", DLL.DOUBLE, DLL.STDCALL, "ConnectToFT", DLL.STRING, DLL.INT, DLL.DOUBLE, DLL.DOUBLE, DLL.DOUBLE, DLL.DOUBLE, DLL.DOUBLE, DLL.DOUBLE, DLL.DOUBLE);
}
var nNull = 0;
var sdatastring= "";
var sdatastring= "";
function main() {
sdatastring="PD: ";
var FT = myDLL.call( "ConnectFT", sdatastring, 1, nNull,nNull,nNull,nNull,nNull,nNull,nNull );
return;
}
What this study originally does is sending Data to FT to be displayed in the Tower (open the study in the ESignal efs-Editor to see my comments, how you can do this)
var FT = myDLL.call( "ConnectFT", sdatastring, 1, nNull,nNull,nNull,nNull,nNull,nNull,nNull );
return;
}
What this study originally does is sending Data to FT to be displayed in the Tower (open the study in the ESignal efs-Editor to see my comments, how you can do this)
But if you send a string like this to FT:
sdatastring="PD: AB #F: Alert: BUY"
or
sdatastring="PD: AB #F: Alert: SELL"
then FT will interpret this as Tradesignal to be taken in the currently running playback and at the same time the tradesignal will be executed in the backtest module.
Unfortunatly I can't give you an ESignal template doing this, as ESignal is not my main charting program (I just use the feed).
I could only help you setting up this automatic backtesting of your tradesignals in Ensign.
3. Monitor FT trades
I will consider your proposal to monitor trades taken in FT during a playback in the Backtest module and look to implement it in one of the next versions of FT.
- It will take some time before I have mastered all the possibilities of FT.
You might join the #FuturesTrader group in IRC: Othernet, where I will be able to give you immediate answers, when I'm online (Usually during european trading hours and the US morning until noon)