Expert Advisors: DDE - Server - Seite 8

 

endlich habe ich es geschafft!!!!!

für die nächsten, die kommen und es nicht hinbekommen, mein Problem wurde gelöst, indem ich einfach alles in logischer Reihenfolge geöffnet habe.

zuerst den dde server, dann meta trader 5, den roboter in das gewünschte paar setzen, alle meta trader 5 dlls autorisieren, und erst dann excel öffnen.

mein Fehler war, dass ich excel geöffnet ließ, bevor ich alle anderen Programme öffnete... hier ist der Tipp.

 
Kann mir jemand sagen, wie ich mit DDE das Nettovolumen in Excel abrufen kann?
Ich kann den Servernamen und die Uhrzeit live abrufen, möchte aber das Nettovolumen live in Excel übertragen.
 

Ein sehr nützliches und einfach zu bedienendes Tool, um MT5-Daten nach Excel zu übertragen. Hier ist ein Code, mit dem man mehrere Datentypen von mehreren Assets gleichzeitig abrufen kann

void OnTimer()
{
  // Abrufen des aktuellen Geld- und Briefkurses, des Höchst- und Tiefstkurses sowie des letzten Volumens für das Symbol des Charts
  double bidPrice = 0.0;
  double askPrice = 0.0;
  double highPrice = 0.0;
  double lowPrice = 0.0;
  double lastVolume = 0.0;
  string symbol = _Symbol; // Ruft das Symbol des Diagramms ab, an das der EA angehängt ist
 
  if(SymbolInfoDouble(symbol, SYMBOL_BID, bidPrice) &&
     SymbolInfoDouble(symbol, SYMBOL_ASK, askPrice) &&
     SymbolInfoDouble(symbol, SYMBOL_HIGH, highPrice) &&
     SymbolInfoDouble(symbol, SYMBOL_LOW, lowPrice) &&
     SymbolInfoDouble(symbol, SYMBOL_VOLUME_REAL, lastVolume))
  {
    // Eindeutige DDE-Themen für jedes Symbol
    string bidTopic = symbol + "_BID";
    string askTopic = symbol + "_ASK";
    string highTopic = symbol + "_HIGH";
    string lowTopic = symbol + "_LOW";
    string volumeTopic = symbol + "_VOLUME";
 
    // DDE-Elemente für jeden Datenpunkt mit Symbolname prüfen und hinzufügen
    if(!CheckItem("PRICE", bidTopic)) AddItem("PRICE", bidTopic);
    if(!CheckItem("PRICE", askTopic)) AddItem("PRICE", askTopic);
    if(!CheckItem("PRICE", highTopic)) AddItem("PRICE", highTopic);
    if(!CheckItem("PRICE", lowTopic)) AddItem("PRICE", lowTopic);
    if(!CheckItem("PRICE", volumeTopic)) AddItem("PRICE", volumeTopic);
 
    // DDE-Elemente mit den Daten setzen
    SetItem("PRICE", bidTopic, DoubleToString(bidPrice, _Digits));
    SetItem("PRICE", askTopic, DoubleToString(askPrice, _Digits));
    SetItem("PRICE", highTopic, DoubleToString(highPrice, _Digits));
    SetItem("PRICE", lowTopic, DoubleToString(lowPrice, _Digits));
    SetItem("PRICE", volumeTopic, DoubleToString(lastVolume, 0)); // Volumen ist normalerweise eine ganze Zahl
  }
  else
  {
    // Behandlung des Fehlers, wenn eine Preisinformation nicht abgerufen werden kann
    Alert("Error retrieving price information for " + symbol);
  }
}
 
// Rest des bestehenden Codes ...
 
Beispiel für laufende Preise im Jahr 2035
Beispiel nPriceop=2001 für Kauflimit
trade.PositionOpen(_Symbol, ORDER_TYPE_BUY_LIMIT, 0.1, nOPPrice, 0, 0, "Commentyup"); Ich verwende die trade.mqh Bibliothek auf MT5..... und für buy und sell läuft die Ausführung normal.. aber es gibt keine offenen Positionen für buylimit und selllimit.... gibt es hier jemanden, der mir helfen kann?
 

I have reprogrammed it so that I receive live tick (bid and ask) data directly in excel/libreoffice. Exactly the same as with MT4. No difference at all. Thanks for that!

 
Hallo, funktioniert das auch mit Google Sheets anstelle von Excel?
 
@adamko40 #: Hallo, funktioniert das auch mit Google Sheets anstelle von Excel?
Google Sheets ist eine Webanwendung. Es verwendet kein DDE.