Ability to place trades at chosen prices

Share your ideas how the software could be improved
Message
Author
User avatar
Tantalus
Posts: 302
Joined: Fri Mar 23, 2007 3:51 pm
Contact:

Ability to place trades at chosen prices

#1 Postby Tantalus » Tue Jan 03, 2012 11:14 am

In the current system, when a trade is placed it opens at the Bid or Ask of the current tick (the programmer can't specify the price they want to trade at). This makes sense most of the time and it's a good way to simulate real-time trading. However, there are times when it would help to be able to specify the opening (and closing) price of a trade.

For instance, when lower resolution data is used, such as D1 data, each bar is modeled as just four ticks. Each tick can be hundreds of pips away from the previous tick, so if a signal is given during that tick, the trade will be entered after the tick's price movement, which can create huge (and highly unrealistic) slippage. If the programmer could calculate the price at the time the signal was generated (crossing an MA, etc.) and instruct FT2 to enter the trade at that specific price, such slippage could be avoided.

Of course, if one uses M1 data, as recommended, this is not an issue, but there are times when M1 data may not be available, as when importing long-term stock and commodity data. Also, running a 20 year simulation on M1 data takes hours, whereas using H1 or D1 data greatly speeds up the process because there are far fewer ticks to process.

I know that forcing FT2 to trade at a specific price and modeling price using D1 data will introduce some errors, but they would be much smaller than the errors created by ticks that are hundreds of pips apart using the current method.

Here are the kinds of functions I would like to see:

In addition to
SendInstantOrder('USDCAD', op_Buy, 0.2, 1.2200, 1.2425, OrderHandle)

You could also have
SendSpecificOrder('USDCAD', op_Buy, 0.2, 1.2300, 1.2200, 1.2425, OrderHandle)

Which just adds a new parameter EntryPrice (here 1.2300) along with the stop loss and take profit prices.

Also, we would have a new CloseOrder() function:

CloseSpecificOrder(OrderHandle:integer, ClosePrice:double): boolean

Please consider these enhancements. I believe they would greatly improve the functionality of FT2 as a serious scientific modeling tool.
Tantalus Research - Developing 21st Century Trading Systems.

FT Support
Posts: 905
Joined: Sat Jul 11, 2009 10:54 am

#2 Postby FT Support » Wed Jan 11, 2012 11:37 am

Hmm, i do not think that this will be used by many developers... and it this seems to be a bit complex task for us
Check our other product here:
http://www.forexcopier.com

User avatar
Tantalus
Posts: 302
Joined: Fri Mar 23, 2007 3:51 pm
Contact:

#3 Postby Tantalus » Wed Jan 11, 2012 11:56 am

Well, this suggestion was really just an idea for a workaround of the problem that the point-by-point tick generation method was removed from FT. Presumably this was done to create more demand for the tick data service that appeared at the same time.

The problem is that it's very useful to be able to use a variety of data sources, many of which are not available in high resolution (timeframes lower than D1). For a strategy which trades on a daily basis, this data would be fine, but since FT creates only four ticks for the entire day it would be impossible to simulate trades that would occur based on stop or limit orders, because the price leaps over the order points and the order gets placed where the ticks are, not where the stop or limit orders were set.

With point-by-point tick generation, D1 data could be used this way with much greater accuracy, because every price point that was available during that trading day is also available to the FT strategy.

Another way to achieve this is to use automatic trades (Stop and limit orders, SL and TP) in FT just like you would in real life, but unfortunately the FT API doesn't share trade execution with the strategy when automatic orders are used, so the strategy can't make the crucial decisions necessary without knowing when a trade opens or closes. This is the reason for my other feature request.

One way or another, I am looking for a way to use a wide variety of data sources, which used to be much easier with point-by-point tick generation. By throwing away this valuable feature (it was already there, so you can't complain that it would take too much effort to program it) in order to force people to pay for your data service, you have made your product much less useful.
Tantalus Research - Developing 21st Century Trading Systems.


Return to “New Feature Suggestions”

Who is online

Users browsing this forum: No registered users and 15 guests