Diskussion zum Artikel "Backpropagation von Neuronalen Netze mit MQL5-Matrizen" - Seite 3

 

Um mit Netting-Konten arbeiten zu können, muss die Funktion ClosePosition um eine explizite Symbolangabe ergänzt werden:

 bool ClosePosition()
{
    // eine leere Struktur definieren
   MqlTradeRequest request = {};
   ...
   // Füllen Sie die erforderlichen Felder aus
   request.action = TRADE_ACTION_DEAL;
   request.position = PositionGetInteger(POSITION_TICKET);
   request.symbol = _Symbol;
   const ENUM_ORDER_TYPE type = (ENUM_ORDER_TYPE)(PositionGetInteger(POSITION_TYPE) ^ 1);
   request.type = type;
   request.price = SymbolInfoDouble(_Symbol, type == ORDER_TYPE_BUY ? SYMBOL_ASK : SYMBOL_BID);
   request.volume = PositionGetDouble(POSITION_VOLUME);
   ...
     
   // Senden der Anfrage
   ...
}
 

Forum über Handel, automatisierte Handelssysteme und das Testen von Handelsstrategien

Diskussion des Artikels "Backpropagation neuronaler Netze auf MQL5-Matrizen"

Stanislav Korotky, 2024.04.16 17:34

Um mit Netting-Konten zu arbeiten, müssen Sie das Symbol explizit in der ClosePosition-Funktion angeben:

 bool ClosePosition()
{
    // leere Struktur definieren
   MqlTradeRequest request = {};
   ...
   // Pflichtfelder ausfüllen
   request.action = TRADE_ACTION_DEAL;
   request.position = PositionGetInteger(POSITION_TICKET);
   request.symbol = _Symbol;
   const ENUM_ORDER_TYPE type = (ENUM_ORDER_TYPE)(PositionGetInteger(POSITION_TYPE) ^ 1);
   request.type = type;
   request.price = SymbolInfoDouble(_Symbol, type == ORDER_TYPE_BUY ? SYMBOL_ASK : SYMBOL_BID);
   request.volume = PositionGetDouble(POSITION_VOLUME);
   ...
     
   // Senden der Anfrage
   ...
}

 

Ein sehr lesenswerter Artikel.

Ich danke Ihnen!

 

Vielen Dank, ein sehr guter Artikel!

Aus irgendeinem Grund hatte ich ihn übersehen.