MetaTrader 5 herunterladen

Kommunikation zwischen EAs und Indis und Panelen

Einloggen oder registrieren, um einen Kommentar zu schreiben
Otto Pauser
1220
Otto Pauser  

Hallo Community,

des öfteren ist schon die Frage gestellt worden wie EAs und Indikatoren Daten austauschen können.

Auch eine Steuerung mittels Panelen=Dialogen (irrwitzigerweise mit Platten ins deutsche übersetzt) wäre oft hilfreich.

Die 'Globalen Variablen', Dateien, 'Named Pipes' etc. bieten sich an.

Doch es gibt eine einfache und sehr schnelle Möglichkeit, die ich durch intensives Studium der EasyAndFastGUI-Library gefunden habe.

Diese möchte ich euch nicht vorenthalten. Hier ein simples Beispiel zweier Indikatoren. Einer sendet, der ander empfängt.

Der Sender: sendet alle 10sec einen ChartEvent

#property indicator_chart_window
#property indicator_plots 0

#define ON_DATACHANGE 100

int OnInit()
{
   EventSetTimer(10);
   return(INIT_SUCCEEDED);
}

void OnTimer()
{
   EventChartCustom(0,ON_DATACHANGE,1,0,"Message from Sender");
}

int OnCalculate(const int rates_total, const int prev_calculated, const int begin, const double& price[]) 
{
   return(rates_total);
}

void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam)
{
   if(id==CHARTEVENT_CUSTOM+ON_DATACHANGE)
      if(lparam==1)
         return;  // It's me, do not process;
}

Der Lauscher:

#property indicator_chart_window
#property indicator_plots 0

#define ON_DATACHANGE 100

int OnCalculate(const int rates_total, const int prev_calculated, const int begin, const double& price[]) 
{
   return(rates_total);
}

void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam)
{
   if(id==CHARTEVENT_CUSTOM+ON_DATACHANGE)
      if(lparam==1)
         Alert(sparam);
}

wenn's gefällt und jemand brauchen kann, freue ich mich über einen Daumen hinauf, aber das geht ja hier nicht.

Grüße Otto

Lars Rompe
1648
Lars Rompe  
Otto Pauser:

...

wenn's gefällt und jemand brauchen kann, freue ich mich über einen Daumen hinauf, aber das geht ja hier nicht.

Grüße Otto


👍👍👍

Otto Pauser
1220
Otto Pauser  
Oh, Danke für gleich drei Daumen!!!
Einloggen oder registrieren, um einen Kommentar zu schreiben