Einzelnen Beitrag anzeigen
  #8 (permalink)  
Alt 06.07.17
traderdoc traderdoc ist offline
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.735
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Nimm mal den Code, der funktioniert bestimmt:

Code:
if (BarsSinceEntry > 0 && TimeCurrent() > BarsSinceEntry + PeriodSeconds(PERIOD_CURRENT)) {
   for (int i = OrdersTotal()-1; i >= 0; i--) {
      if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
         if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber) {
            if (OrderType() == OP_BUYSTOP || OrderType() == OP_SELLSTOP) {
               bool res = OrderDelete(OrderTicket());
               if (res) BarsSinceEntry = 0;
               break;
            }
         }
      }
   }
}
Das setzt allerdings voraus, dass die Orders beim Senden mit einer MagicNumber versehen werden.
Die ist zwar nicht zwingend notwendig, sollte man sich aber angewöhnen, um die Eineindeutigkeit der Orderselektion zu gewährleisten. Damit könnten nun auch mehrere Charts desgleichen Währungspaares offen sein, wenn z.B. in verschiedenen TimeFrames gearbeitet werden soll und zu jedem TF eine andere MagicNumber vergeben wird. Das wäre zwar für den Tester zunächst irrelevant, aber der EA soll ja mal mindestens im Demo-Account laufen.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.