Code:
for (int i = OrdersTotal()-1; i >= 0; i--) {
int candle_marketorder;
bool res;
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber) {
if (OrderType() == OP_BUY) {
candle_marketorder = iBarShift(NULL, 0, OrderOpenTime());
for (int j = OrdersTotal()-1; j >= 0; j--) {
if (OrderSelect(j, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber) {
if (OrderType() == OP_SELLSTOP) {
if (candle_marketorder == iBarShift(NULL, 0, OrderOpenTime())) {
res = OrderDelete(OrderTicket());
break;
}
}
}
}
}
continue;
}
if (OrderType() == OP_SELL) {
candle_marketorder = iBarShift(NULL, 0, OrderOpenTime());
for (int j = OrdersTotal()-1; j >= 0; j--) {
if (OrderSelect(j, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber) {
if (OrderType() == OP_BUYSTOP) {
if (candle_marketorder == iBarShift(NULL, 0, OrderOpenTime())) {
res = OrderDelete(OrderTicket());
break;
}
}
}
}
}
}
}
}
}
Ich habe den Code jetzt nicht getestet, bin aber froher Hoffnung.
traderdoc