I'm currently using Limit Orders as entry for my strategy. I've found out that backtesting tends to be a bit inaccurate (limit orders can still be partially filled at highs/lows in real time trading whereas backtested results shows no trades).
It would be best if there's a Market if Touched Order (MIT) available so that I can pay 1-2 ticks slippage for a more guaranteed/accurate backtested results. Would MC consider MIT in their next version?
TS and MC8.8 China (yes I trade Chinese products) both have this function. Even Interactive Brokers offers this as well.
Alternatively, would someone point me in the right direction as how to encode MIT orders in my strategy instead of waiting for features to be voted?
Many thanks.
Market if Touched order
- JoshM
- Posts: 2195
- Joined: 20 May 2011
- Location: The Netherlands
- Has thanked: 1544 times
- Been thanked: 1565 times
- Contact:
Re: Market if Touched order
You could do so with market orders coupled with Intra-bar order generation, like this untested snippet:Alternatively, would someone point me in the right direction as how to encode MIT orders in my strategy instead of waiting for features to be voted?
Code: Select all
[IntraBarOrderGeneration = true];
Variables:
mitTriggerPrice(100);
if (Close >= mitTriggerPrice) then
Buy 1 contract next bar at market;
* This approach is always running at least one tick behind the price action (with more volatile market the slippage will be more, obviously),
* And you might have a worse position in the order queue. IB, for example, keeps MIT orders on their system before submitting them, so I suspect it's FIFO based, and since you're running at least 1 tick behind, the MIT orders on IB servers quite probably beat you to it.
You could, by the way, also use a stop limit order with a wide range between the stop and limit order. Then it should act like a MIT order, but might be fare better in terms of order queue/execution speed (depending on how your broker & MultiCharts deal with the stop-limit order, of course).
-
- Posts: 223
- Joined: 16 Oct 2011
- Has thanked: 66 times
- Been thanked: 20 times
Re: Market if Touched order
MIT and Iceberg orders would be extremely helpful, they have been suggested before.
Please start a new poll/request and I would vote for it!
Please start a new poll/request and I would vote for it!
Re: Market if Touched order
I'll try the 1st approach that you provided me. Many thanks!You could do so with market orders coupled with Intra-bar order generation, like this untested snippet:
This does have a few disadvantages though, including:Code: Select all
[IntraBarOrderGeneration = true];
Variables:
mitTriggerPrice(100);
if (Close >= mitTriggerPrice) then
Buy 1 contract next bar at market;
* This approach is always running at least one tick behind the price action (with more volatile market the slippage will be more, obviously),
* And you might have a worse position in the order queue. IB, for example, keeps MIT orders on their system before submitting them, so I suspect it's FIFO based, and since you're running at least 1 tick behind, the MIT orders on IB servers quite probably beat you to it.
You could, by the way, also use a stop limit order with a wide range between the stop and limit order. Then it should act like a MIT order, but might be fare better in terms of order queue/execution speed (depending on how your broker & MultiCharts deal with the stop-limit order, of course).
Eh how do I start a new request?MIT and Iceberg orders would be extremely helpful, they have been suggested before.
Please start a new poll/request and I would vote for it!
- Henry MultiСharts
- Posts: 9165
- Joined: 25 Aug 2011
- Has thanked: 1264 times
- Been thanked: 2957 times
Re: Market if Touched order
Such requests already exist. You can vote for them here:Eh how do I start a new request?
https://www.multicharts.com/pm/viewissu ... no=MC-1115
https://www.multicharts.com/pm/viewissu ... e_no=MC-40