Expert Advisors: DDE - Server - Seite 5

 
Hallo
ich habe eine Frage

Wie kann man den Kaufpreis eines bestimmten Währungspaares in Excel einfügen?

Dies zeigt nur den EMA 21

Ich brauche die Währung ask & bid

 
Posten prüfen & hinzufügen DDE
if(!CheckItem("A", "B"))
{
if(!AddItem("A", "B")) return;
}

if(!CheckItem("FIRMA", "Wert")) AddItem("UNTERNEHMEN", "Wert");
if(!CheckItem("ZEIT", "Wert")) AddItem("ZEIT", "Wert");
if(!CheckItem("BID", "EURUSD")) AddItem("BID", "EURUSD");


// Elementwert setzen DDE

SetItem("FIRMA", "Wert",(string)AccountInfoString(ACCOUNT_COMPANY));
SetItem("ZEIT", "Wert",(string)TimeCurrent());

>>>>>> SetItem("BID", "EURUSD",(string) ?????());<<<<<<

HALLO LEUTE, WENN ICH EURUSD GELD- ODER BRIEFKURS ANZEIGEN MÖCHTE, WIE KANN ICH DAS ÄNDERN?

DANKE

 
snowking87:

Bitte bearbeiten Sie Ihren Beitrag und verwenden Sie die Code-Taste (Alt+S), wenn Sie den Code einfügen.

Bitte bearbeiten Sie Ihren ursprünglichen Beitrag und fügen Sie den Code nicht einfach in einen neuen Beitrag ein.

Bitte verwenden Sie keine übermäßigen Großbuchstaben in Ihren Beiträgen. Dies wird als schreiend und sehr unhöflich angesehen.

 
maurorechi:

Guten Abend.


Nach viel Tüftelei habe ich es geschafft, das Problem zu lösen. Ich habe mich extra dafür auf der Website registriert.

Ändern Sie die gesamte Funktion OnTimer():

void OnTimer()

{

//--- Füllen eines Arrays MA[] mit aktuellen Werten von iMA

//--- Kopieren von 100 Elementen

// CopyBuffer(MA_handle,0,0,100,MA);

// ArraySetAsSeries(MA,true);

double EURUSD_ASK = SymbolInfoDouble("EURUSD",SYMBOL_ASK); // für eurusd (Beispiel)

double EURUSD_BID = SymbolInfoDouble("EURUSD",SYMBOL_BID);

double USDCHF_ASK = SymbolInfoDouble("USDCHF",SYMBOL_ASK);

double USDCHF_BID = SymbolInfoDouble("USDCHF",SYMBOL_BID);

// Element DDE prüfen & hinzufügen

// if(!CheckItem("EMA", "B"))

// {

// if(!AddItem("EMA", "B")) return;

// }


if(!CheckItem("UNTERNEHMEN", "Wert")) AddItem("UNTERNEHMEN", "Wert");

if(!CheckItem("ZEIT", "Wert")) AddItem("ZEIT", "Wert");

if(!CheckItem("EURUSD", "ASK")) AddItem("EURUSD", "ASK");

if(!CheckItem("EURUSD", "BID")) AddItem("EURUSD", "BID");

if(!CheckItem("USDCHF", "ASK")) AddItem("USDCHF", "ASK");

if(!CheckItem("USDCHF", "BID")) AddItem("USDCHF", "BID");

// Elementwert setzen DDE

SetItem("FIRMA", "Wert",(string)AccountInfoString(ACCOUNT_COMPANY));

SetItem("ZEIT", "Wert",(string)TimeCurrent());


// SetItem("EMA", "B", "EMA(21): "+DoubleToString(MA[0],6));

SetItem("EURUSD", "ASK",DoubleToString(EURUSD_ASK,5));

SetItem("EURUSD", "BID",DoubleToString(EURUSD_BID,5));

SetItem("USDCHF", "ASK",DoubleToString(USDCHF_ASK,5));

SetItem("USDCHF", "BID",DoubleToString(USDCHF_BID,5));

}

Der Rest ist derselbe wie oben beschrieben.


Ich hoffe, es hilft jemandem.

Hier sind die Änderungen, die ich an dem Code unten gemacht.

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,"B")) 
     {
      if(!AddItem(_Symbol,"B")) return; 
     }

   if(!CheckItem("COMPANY","Value")) AddItem("COMPANY","Value");
   if(!CheckItem("TIME","Value")) AddItem("TIME","Value");

// Artikelwert einstellen DDE 
   SetItem("COMPANY","Value",(string)AccountInfoString(ACCOUNT_COMPANY));
   SetItem("TIME","Value",(string)TimeCurrent());

   SetItem(_Symbol,"B",SymbolInfoDouble(_Symbol,SYMBOL_LAST));

  }
 
snowking87:
Artikel prüfen und hinzufügen DDE
if(!CheckItem("A", "B"))
{
if(!AddItem("A", "B")) return;
}

if(!CheckItem("FIRMA", "Wert")) AddItem("UNTERNEHMEN", "Wert");
if(!CheckItem("ZEIT", "Wert")) AddItem("ZEIT", "Wert");
if(!CheckItem("BID", "EURUSD")) AddItem("BID", "EURUSD");


// Elementwert setzen DDE

SetItem("FIRMA", "Wert",(string)AccountInfoString(ACCOUNT_COMPANY));
SetItem("ZEIT", "Wert",(string)TimeCurrent());

>>>>>> SetItem("BID", "EURUSD",(string) ?????());<<<<<<

HALLO JUNGS, WENN WOLLEN ZEIGEN EURUSD GELD-ODER BRIEFKURS, WIE MAN DIES ÄNDERN?

DANKE

if(!CheckItem("BID", "EURUSD")) AddItem("BID", "EURUSD");
if(!CheckItem("ASK", "EURUSD")) AddItem("ASK", "EURUSD");
SetItem("BID", "EURUSD",(double)SymbolInfoDouble(Symbol(),SYMBOL_BID));
SetItem("ASK", "EURUSD",(double)SymbolInfoDouble(Symbol(),SYMBOL_ASK));
 
Younes Deldar:
Hallo
ich habe eine Frage

Wie füge ich den Kaufpreis eines bestimmten Währungspaares in Excel ein?

Dies zeigt nur den EMA 21

Ich benötige die Kauf- und Verkaufswährung

if(!CheckItem("BID", "EURUSD")) AddItem("BID", "EURUSD");
if(!CheckItem("ASK", "EURUSD")) AddItem("ASK", "EURUSD");
SetItem("BID", "EURUSD",(double)SymbolInfoDouble(Symbol(),SYMBOL_BID));
SetItem("ASK", "EURUSD",(double)SymbolInfoDouble(Symbol(),SYMBOL_ASK));
 
IlyshikBTC:
if(!CheckItem("BID", "EURUSD")) AddItem("BID", "EURUSD");
if(!CheckItem("ASK", "EURUSD")) AddItem("ASK", "EURUSD");
SetItem("BID", "EURUSD",(double)SymbolInfoDouble(Symbol(),SYMBOL_BID));
SetItem("ASK", "EURUSD",(double)SymbolInfoDouble(Symbol(),SYMBOL_ASK));

Ich habe versucht, Ihren Code zu verwenden, aber ich erhalte nur den Ask/Bid des ersten Währungspaares in der Liste der Symbole in MT5, unabhängig von dem Währungssymbol, das ich im Code hinzufüge.

Zum Beispiel habe ich USDCAD als erstes Symbol in der MT5-Symbolliste. Ich schreibe den Code, den Sie mit EURUSD zur Verfügung gestellt haben, aber der Ask-Preis, den ich erhalte, ist der von USDCAD und nicht der von EURUSD. Wie lässt sich das beheben?

Haben Sie auch Vorschläge, wie ich den Briefkurs aller Währungspaare/Symbole mit Excel verbinden kann?

Vielen Dank!

IlyshikBTC
IlyshikBTC
  • 2021.03.04
  • www.mql5.com
Trader's profile
 

Ich habe ihn so modifiziert, dass er folgende Daten übernimmt: High, Close, Low (HCL) der vorherigen Kerze zur aktuellen; Upper und Lower Bollinger Band Werte (20,2) der vorherigen Kerze zur aktuellen; Stochastic und %D (10,3,3) der vorherigen Kerze zur aktuellen.


Der Code folgt:

double      BB_T[];      //Array für Indikator BB
double      BB_B[];
int         BB_handle;  //Handle für Indikator BB

double      STOCH[];    //Array für Indikator STOCH
double      PERCD[];
int         ST_handle; //Handle für Indikator STOCH

//-----------------------------------------------------------------------------

void OnInit()
  {
    EventSetTimer(1);
    
//--- Erstellung der Indikatoren BB und STOCH
   BB_handle=iBands(_Symbol,PERIOD_CURRENT,20,0,2,PRICE_CLOSE);
   ST_handle=iStochastic(_Symbol,PERIOD_CURRENT,10,3,3,MODE_SMA,STO_LOWHIGH);
   return;
  }

void OnTimer()

  {
//--- Füllen eines Arrays MA[] mit aktuellen Werten von iMA
//--- Kopieren von 100 Elementen
   //BB
   CopyBuffer(BB_handle,1,0,100,BB_T); //Upper
   ArraySetAsSeries(BB_T,true);

   CopyBuffer(BB_handle,2,0,100,BB_B); //Lower
   ArraySetAsSeries(BB_B,true);
   //Stochastik
   CopyBuffer(ST_handle,0,0,100,STOCH); //Stoch
   ArraySetAsSeries(STOCH,true);
   CopyBuffer(ST_handle,1,0,100,PERCD); //%D
   ArraySetAsSeries(PERCD,true);
// Artikel prüfen & hinzufügen DDE
   if(!CheckItem(_Symbol,"Maximum")) 
     {
      if(!AddItem(_Symbol,"Maximum")) return; 
     } 
   if(!CheckItem(_Symbol,"Minimum")) AddItem(_Symbol,"Minimum");
   if(!CheckItem(_Symbol,"Fechamento")) AddItem(_Symbol,"Fechamento");
   //
   if(!CheckItem(_Symbol,"BB_Top")) AddItem(_Symbol,"BB_Top");
   if(!CheckItem(_Symbol,"BB_Lower")) AddItem(_Symbol,"BB_Lower");
   //
   if(!CheckItem(_Symbol,"STOCH")) AddItem(_Symbol,"STOCH");
   if(!CheckItem(_Symbol,"%D")) AddItem(_Symbol,"%D");


// Artikelwert einstellen DDE 
   //HCL-Kerzen
   SetItem(_Symbol,"Maximum",iHigh(_Symbol,5,1));
   SetItem(_Symbol,"Minimum",iLow(_Symbol,5,1));
   SetItem(_Symbol,"Fechamento",iClose(_Symbol,5,1));
   //BB Oben und Unten
   SetItem(_Symbol,"BB_Top",DoubleToString(BB_T[1],2));
   SetItem(_Symbol,"BB_Lower",DoubleToString(BB_B[1],2));
   //Stochastisch und %D
   SetItem(_Symbol,"STOCH",DoubleToString(STOCH[1],2));
   SetItem(_Symbol,"%D",DoubleToString(PERCD[1],2));
  }


Der Rest ist derselbe

 
mzee_zaki:

Ich habe versucht, Ihren Code zu verwenden, aber ich erhalte nur den Ask/Bid des ersten Währungspaares in der Liste der Symbole in MT5, unabhängig von dem Währungssymbol, das ich im Code hinzufüge.

Zum Beispiel habe ich USDCAD als erstes Symbol in der MT5-Symbolliste. Ich schreibe den Code, den Sie mit EURUSD zur Verfügung gestellt haben, aber der Ask-Preis, den ich erhalte, ist der von USDCAD und nicht der von EURUSD. Wie lässt sich das beheben?

Haben Sie außerdem Vorschläge, wie ich den Briefkurs aller Währungspaare/Symbole mit Excel verbinden kann?

Vielen Dank!

Versuchen Sie zu ändern: Symbol() in _Symbol


Bitte besuchen Sie die brasilianischen Kommentare


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

Especialistas: Servidor DDE
Especialistas: Servidor DDE
  • 2014.01.15
  • www.mql5.com
Artigos, comentários da Biblioteca: Especialistas: Servidor DDE
 
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, dass Sie mir einen Code zur Verfügung stellen, wenn Sie einen haben. Ich möchte meinen Nettowert und die Währungsgewinne/-verluste meiner Positionen ermitteln.