Mit diesem Code-Schnipsel kannst du die Daten des letzten geschlossenen Trades abrufen, ohne dabei Schleifen verwenden zu müssen.
- Erstelle eine Variable, um die Startzeit des aktuellen Tages festzulegen. (Das ist nicht unbedingt notwendig.)
- Erstelle weitere Variablen, um Ausgaben für das Chart zu drucken und auch in anderen Code-Blöcken zu verwenden. (Das ist ebenfalls nicht unbedingt notwendig.)
- Wenn du diesen Code innerhalb der OnTick(); Funktion verwendest, werden die Ergebnisse für jeden Tick angezeigt. Du kannst es auch für einmal pro Kerze einstellen.
// Variablen string DayStart = "00:00"; // Startzeit des Tages double LastClosed_Profit; // Gewinn des letzten geschlossenen Trades string TradeSymbol, TradeType; // Initialisierung des EAs -------------------- int OnInit() { return(INIT_SUCCEEDED); } // Deinitialisierung des EAs ------------------- void OnDeinit(const int reason) { } // OnTick-Funktion -------------------------- void OnTick() { // Überprüfung des letzten geschlossenen Trades. CheckLastClosed(); } //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ void CheckLastClosed() { datetime HistoryTime = StringToTime(DayStart); // Historie vom Tagesbeginn bis zur aktuellen Zeit if(HistorySelect(HistoryTime,TimeCurrent())) { int Total = HistoryDealsTotal(); // Hole die Ticketnummer des letzten Deals und wähle sie für weitere Arbeiten aus. ulong Ticket = HistoryDealGetTicket(Total -1); // Hol dir, was du brauchst. LastClosed_Profit = NormalizeDouble(HistoryDealGetDouble(Ticket,DEAL_PROFIT),2); TradeSymbol = HistoryOrderGetString(Ticket,ORDER_SYMBOL); // Identifiziere einen Verkaufs-Trade. if(HistoryDealGetInteger(Ticket,DEAL_TYPE) == DEAL_TYPE_BUY) { TradeType = "Verkauf Trade"; } // Identifiziere einen Kauf-Trade if(HistoryDealGetInteger(Ticket,DEAL_TYPE) == DEAL_TYPE_SELL) { TradeType = "Kauf Trade"; } // Chart-Ausgabe. Comment("\n","Anzahl der Deals - : ", Total, "\n","Letztes Deal Ticket - : ", Ticket, "\n", "Letzter Geschlossener Gewinn -: ", LastClosed_Profit, "\n", "Letzter Trade war -: ", TradeType); } } //+------------------------------------------------------------------+ //+------------------------------------------------------------------+
Du kannst die gesamte Handelsgeschichte (von Beginn des Kontos) mit der HistorySelect(); Funktion auf folgende Weise abrufen:
// Gesamte Historie abrufen HistorySelect(0,TimeCurrent());
Kommentar 0