Expert Advisors: DDE - Server - Seite 6

 
Cen Chen:
Hallo Bruder, haben Sie eine MT4-Version von diesem. der MT4 DDE funktioniert nicht. Aber der, den ich für FX benutze, hat keinen MT5-Server. Danke für die Bereitstellung eines Codes, wenn Sie einen haben. Ich möchte meinen Nettowert und die Währungsgewinne/-verluste meiner Positionen ermitteln.
https://www.metatrader4.com/zh/trading-platform/help/service/dde
Export of Quotes - Tools - MetaTrader 4帮助
Export of Quotes - Tools - MetaTrader 4帮助
  • www.metatrader4.com
Source data serving as a basis for the entire analytical work of the terminal user are those about security price changes. This information is...
 

Die Methode von oben kann nicht den Nettowert und den Währungsgewinn und -verlust ermitteln, sondern nur die hohen Eröffnungs- und niedrigen Schlusskurse.

Hier ist eine Methode durch die RTD-Brücke Methode, interessiert zu lesen http://www.fxchs.com/productdetails.aspx?pcid=2&pid=63

 

THOMASILVA :


Bitte besuchen Sie die brasilianischen Kommentare


https://www.mql5.com/en/forum/33344

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

Expert Advisors: MT5 DDE - Server

Tom Sasson , 2020.06.28 09:52

Sorry für die späte Antwort, es war natürlich möglich.

Ich sagte "war", weil ich dieses Tool seit 3 Jahren nicht mehr benutzt habe und es nicht unter Windows 10 ausprobiert habe, also können Sie experimentieren und berichten.

@Tom Sasson


Hallo THOMASILVA,

Folgen Sie diesen Schritten ...


Starten Sie den DDE-Server.

Starten Sie mt5 und kompilieren Sie dde_example.mq5.

Öffnen Sie das Diagramm des gewünschten Assets in mt5 und ziehen Sie die dde_example.ex5 (Ergebnis der Kompilierung).

Sie sehen die Elemente auf dem Server-Display.


... Ich kann immer noch keine Werte im MT4DDE-Fenster anzeigen lassen, obwohl der Beispiel-EA läuft.

Haben Sie vielleicht einen Tipp für MT5 oder die Windows-Konfiguration oder andere Aspekte, die den Prozess beeinflussen könnten?

(z.B. für MT4 DDE ist es erforderlich, den DDE-Server zuzulassen, aber diese Checkbox ist nicht in MT5)

Vielen Dank im Voraus!

Porque a Hospedagem Virtual no MetaTrader 4 e no MetaTrader 5 são Melhores que os VPS Usuais
Porque a Hospedagem Virtual no MetaTrader 4 e no MetaTrader 5 são Melhores que os VPS Usuais
  • www.mql5.com
A rede de hospedagem virtual em nuvem foi desenvolvida especialmente para o MetaTrader 4 e o MetaTrader 5, possuindo todas as vantagens de uma solução nativa. Obtenha os benefícios de nossa oferta gratuita por 24 horas - teste um servidor virtual agora mesmo.
 

Ich habe den Code ein wenig geändert, um die wichtigsten Werte zu drucken: Current, Open, Close, Low of the Day und High of the Day.


void OnInit()
  {
    EventSetTimer(1);

   return;
  }

void OnTimer()

  {
//--- Füllen eines Arrays MA[] mit aktuellen Werten von iMA
//--- Kopieren von 100 Elementen


// Artikel prüfen & hinzufügen DDE
   if(!CheckItem(_Symbol,"Atual")) 
     {
      if(!AddItem(_Symbol,"Atual")) return; 
     } 
     
   if(!CheckItem(_Symbol,"Abertura")) AddItem(_Symbol,"Abertura");
   if(!CheckItem(_Symbol,"Fechamento")) AddItem(_Symbol,"Fechamento");
   if(!CheckItem(_Symbol,"Minimum")) AddItem(_Symbol,"Minimum");
   if(!CheckItem(_Symbol,"Maximum")) AddItem(_Symbol,"Maximum");


// Artikelwert einstellen DDE 
   //HCL-Kerzen
   SetItem(_Symbol,"Atual",SymbolInfoDouble(_Symbol,SYMBOL_LAST));
   SetItem(_Symbol,"Abertura",SymbolInfoDouble(_Symbol,SYMBOL_SESSION_OPEN));
   SetItem(_Symbol,"Fechamento",SymbolInfoDouble(_Symbol,SYMBOL_SESSION_CLOSE));
   SetItem(_Symbol,"Minimum",SymbolInfoDouble(_Symbol,SYMBOL_LASTLOW));
   SetItem(_Symbol,"Maximum",SymbolInfoDouble(_Symbol,SYMBOL_LASTHIGH));
  }
 

Es ist nicht sehr ausgefeilt, aber funktionell, wenn Sie die DDE benötigen, um die Werte im internationalen Format zu melden (Tausender mit einem Punkt und Dezimalstellen mit einem Komma trennen).

Beispiel: Bei einem Angebot von 12 Reais und 13 Centavos wird mit dem nachstehenden Skript nicht 12,13, sondern 12,13 gemeldet. Ideal, um die Excel-Tabelle so zu belassen, wie sie bereits installiert ist.


void OnInit()
  {
    EventSetTimer(1);

   return;
  }

void OnTimer()

  {
//--- Füllen eines Arrays MA[] mit aktuellen Werten von iMA
//--- Kopieren von 100 Elementen


// Artikel prüfen & hinzufügen DDE
   if(!CheckItem(_Symbol,"Atual")) 
     {
      if(!AddItem(_Symbol,"Atual")) return; 
     } 
     
   if(!CheckItem(_Symbol,"Abertura")) AddItem(_Symbol,"Abertura");
   if(!CheckItem(_Symbol,"Fechamento")) AddItem(_Symbol,"Fechamento");
   if(!CheckItem(_Symbol,"Minimum")) AddItem(_Symbol,"Minimum");
   if(!CheckItem(_Symbol,"Maximum")) AddItem(_Symbol,"Maximum");


// Artikelwert einstellen DDE 
   //HCL-Kerzen
   string atual = SymbolInfoDouble(_Symbol,SYMBOL_LAST);
   string abertura = SymbolInfoDouble(_Symbol,SYMBOL_SESSION_OPEN);
   string fechamento = SymbolInfoDouble(_Symbol,SYMBOL_SESSION_CLOSE);
   string minima = SymbolInfoDouble(_Symbol,SYMBOL_LASTLOW);
   string maxima = SymbolInfoDouble(_Symbol,SYMBOL_LASTHIGH);
   
   StringReplace(atual,".",",");
   StringReplace(abertura,".",",");
   StringReplace(fechamento,".",",");
   StringReplace(minima,".",",");
   StringReplace(maxima,".",",");
   
   SetItem(_Symbol,"Atual",atual);
   SetItem(_Symbol,"Abertura",abertura);
   SetItem(_Symbol,"Fechamento",fechamento);
   SetItem(_Symbol,"Minimum",minima);
   SetItem(_Symbol,"Maximum",maxima);
  }
 

Ich kann keine Ticks platzieren, die einen Bindestrich haben, z. B. (OIL-XXX) OR BRENT-XXX Kann mir jemand sagen, wie ich die Ask- und Bid-Codes ändern kann, um diese Ticks zu erfassen?

 
Hallo Kollegen. Die Anwendung ist sehr interessant, besonders für Anfänger. Ich benutze es ausgiebig, um meine Strategien zu entwickeln und zu testen, zusammen mit den Möglichkeiten von Excell. Ich habe eine wichtige Frage. Vielleicht ist jemand erfahrener und weiß, wie man die umgekehrte Aktion durchführt: einige allgemeine Daten aus DDE in ein MQL-Programm einlesen? Ich wäre dankbar für ein einfaches Beispiel, das ich gerne studieren und in meinen Entwicklungen weiter verwenden würde.
 
Kann ich Geld-Brief-Kurse erhalten?
 
Luis Henrique Cavallari #:

Hier sind die Änderungen, die ich an dem unten stehenden Code vorgenommen habe.

Kann ich diesen Code verwenden, um das Feld "Preisvariation" über DDE von Meta Trader 5 nach Excel in Echtzeit zu exportieren?
 
Hallo, wie kann ich Daten von MT4 nach Excel übertragen?