Previous Next

GTrade.MoveStopLoss()

Bewegt alle StopLoss der offenen Positionen auf einem bestimmten Symbol.

Die StopLoss werden dabei nur bewegt, wenn sich:

   1. der gegebene Wert vom bestehenden Wert des StopLoss unterscheidet

   2. der StopLoss sich in Profit-Richtung, nicht in Gegenrichtung bewegt

int  GTrade.MoveStopLoss(
   double  stopLoss,      // Neuer gewünschter Wert der StopLoss
   string  symbol = NULL  // Symbol
   );

Parameter

stopLoss

[in]  Neuer gewünschter Wert der StopLoss.

symbol

[in]  Das Symbol auf dem geändert werden sollen.

Rückgabewert

Gibt die Anzahl der bewegten StopLoss zurück.


Hinweis

Der Funktionsaufruf kann ohne weitere Vorprüfung stattfinden.


Beispiel:

//--- Einbinden der Glib Klassen
#include <Glib.mqh>

//--- Erzeugung eines Zeigers zu einem leeren Klassenobjektes
GTrade *trade;
GBar *bar;


int OnInit ()
{
   //--- Die Klasse dem leerem Klassenobjekt zuweisen
   trade = gTrade();
   bar = gBar();

   //--- Die Daten der Klasse initialisieren
   trade.Init();

   return(INIT_SUCCEEDED);
}

void OnDeinit (const int reason)
{
   //--- Bei beenden Speicher freigeben
   delete trade;
   delete bar;
}


void OnTick ()
{
   //--- Wenn letzte Kerze über dem High der vorletzten Kerze schließt
   if ( bar.Close(1) >= bar.High(2) )
   {
      //--- Schiebe StopLoss aller offenen Positionen auf Low der letzten Kerze
      trade.MoveStopLoss( bar.Low(1) );
   }
}


Sehen Sie auch

GTrade.MoveStopLossWithComment, GTrade.OpenStopLoss, GTrade.OpenStopLossWithComment