For example, with this strategy:
The stop-loss order for the first entry is cancelled when the second entry occurs. Even when the stop-loss order doesn't change (same quantity, same price). I was (am) surprised by this behaviour and, judging from the response time, the MC engineers also assumed there was a problem/bug.
Code: Select all
[IntraBarOrderGeneration = TRUE]
if (MarketPosition(0) = 0) then
Buy ("EL #1") 1 contracts next bar at market;
if (MaxEntries(0) < 2) and barssinceentry(0) = 2 then
Buy ("EL #2") 1 contracts next bar at market;
if (MarketPosition(0) = 1) then begin
Sell ("XL SL #1") all contract from Entry("EL #1") next bar at entryprice-15 stop;
Sell ("XL SL #2") all contract from Entry("EL #2") next bar at entryprice-15 stop;
However, this behaviour is confirmed by MC Support as 'normal' and 'working as it should', since
This is unwanted for the following reasons:"(..) at the moment it is not possible to send the price order(limit/stop) simultaneously with a market one. Unfilled price orders are to be cancelled. If the number of sent price orders changes – unfilled price orders are to be cancelled."
- It leads to a loss in the order queue for the stop-loss orders with every additional entry. This heightens the possibility of additional slippage when the stop-loss order is executed.
- Certain exchanges, like Eurex, charge fees for cancellation of orders. This default behaviour of MultiCharts quickly ramps up those fees.