- Man sieht es im Konto
- Im EA: für MQL4 oder MQL5?
- In MQL4 gibt Funktion OrderSend die Tickenummer zurück (>0, o=manual) oder -1 (=> Fehlersuche)
- In MQL5 muss man MqlTradeResult der Funktio OrderSend analysieren
- In MQL5 gibt weitere mehrere Möglichkeiten: OnTrade(), OnTradeTransaction().

- www.mql5.com
Wie kann ich ausgeben ob ein trade gemacht wurde also mein ea macht den trade
trade.Sell(Volumen,NULL,Ask,Stoploss,0,NULL);
Und dann möchte ich als return zurück kriegen ob die order erfolgreich war.
void Buy() { //--- 1. example of buying at the current symbol if(!trade.Buy(0.1)) { //--- failure message Print("Buy() method failed. Return code=",trade.ResultRetcode(), ". Code description: ",trade.ResultRetcodeDescription()); } else { Print("Buy() method executed successfully. Return code=",trade.ResultRetcode(), " (",trade.ResultRetcodeDescription(),")"); } //--- }
Das könnte passen
Gruß
Ich. In mir nicht sicher, aber ich glaube wenn du einen trade über die ctrade machst, dann kommt immer der retcode wenns schief läuft
wenn alles in ordnung ist kommt nichts
Bin mir auch nicht sicher was du meinst.
Der Rückgabetyp von Buy() ist in der Definition Trade.mqh als Bool ausgeführt.
Du musst alles Codes selber auswerten.
Auszug Trade.mqh:
//--- additions methods bool Buy(const double volume,const string symbol=NULL,double price=0.0,const double sl=0.0,const double tp=0.0,const string comment=""); bool Sell(const double volume,const string symbol=NULL,double price=0.0,const double sl=0.0,const double tp=0.0,const string comment=""); bool BuyLimit(const double volume,const double price,const string symbol=NULL,const double sl=0.0,const double tp=0.0, const ENUM_ORDER_TYPE_TIME type_time=ORDER_TIME_GTC,const datetime expiration=0,const string comment=""); bool BuyStop(const double volume,const double price,const string symbol=NULL,const double sl=0.0,const double tp=0.0, const ENUM_ORDER_TYPE_TIME type_time=ORDER_TIME_GTC,const datetime expiration=0,const string comment=""); bool SellLimit(const double volume,const double price,const string symbol=NULL,const double sl=0.0,const double tp=0.0, const ENUM_ORDER_TYPE_TIME type_time=ORDER_TIME_GTC,const datetime expiration=0,const string comment=""); bool SellStop(const double volume,const double price,const string symbol=NULL,const double sl=0.0,const double tp=0.0, const ENUM_ORDER_TYPE_TIME type_time=ORDER_TIME_GTC,const datetime expiration=0,const string comment="");
?
- Man sieht es im Konto
- Im EA: für MQL4 oder MQL5?
- In MQL4 gibt Funktion OrderSend die Tickenummer zurück (>0, o=manual) oder -1 (=> Fehlersuche)
- In MQL5 muss man MqlTradeResult der Funktio OrderSend analysieren
- In MQL5 gibt weitere mehrere Möglichkeiten: OnTrade(), OnTradeTransaction().
Danke ich habe es mit der order send function gelöst jetzt muss ich nur noch einen traillingstop der sich auf jede dritte candle setzt programmieren
Das könnte passen
Gruß
So habe ich es gemacht nur anstatt trade.Buy OrderSend verwendet.
Danke für die Hilfe

- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wie kann ich ausgeben ob ein trade gemacht wurde also mein ea macht den trade
trade.Sell(Volumen,NULL,Ask,Stoploss,0,NULL);
Und dann möchte ich als return zurück kriegen ob die order erfolgreich war.