MetaTrader 5 herunterladen

MQL4 zu MQL5

Einloggen oder registrieren, um einen Kommentar zu schreiben
Arthur Singer
165
Arthur Singer  

Hallo,

ich versuche einen MQL4 Code in MQL5 umzuwandeln. Das klappt bislang sehr gut, allerdings komme ich an einer Stelle nicht mehr weiter. Ich kenne mich mit MQL4 nicht wirklich aus und habe auch schon im Internet nachgeschaut, wie man das machen könnte, hab allerdings nichts gefunden.

if(iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,0,1)>iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,1)
   && iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,1)<zoneBUY)

Diesen Teil will ich von MQL4 zu MQL5 ändern. Könnte mir da jemand helfen, ich wäre sehr dankbar.

Mit freundlichen Grüßen

Carl Schreiber
Moderator
8485
Carl Schreiber  
  1. Nimm das Beispiel  MQL5\Experts\Examples\Movin Average.mq5 und schau Dir an wir dort der iMA() (= sma) behandelt wird, so musst Du iStochastic() verwenden!
  2. Aber in der Referenz (Kursor auf iStochastic und F1 drücken!!) gibt es auch ein Code-Beispiel!!
Viel Erfolg!
Arthur Singer
165
Arthur Singer  

Vielen Dank für die Antwort. Die Sache ist die, dass ich weis, wie man mit Indikatoren umgeht. Aber ich weis nicht, ob ich zum Abgleichen mit > und < CopyBuffer verwenden soll, also ich habs so gemacht, bin mir aber nicht sicher.

 

int Stochastic;
double Stochastic_Werte1[];
double Stochastic_Werte2[];

int OnInit()
{
   int Stochastic=iStochastic(_Symbol,_Period,per_K,per_D,slow,MODE_LWMA,STO_CLOSECLOSE);
   
   return(INIT_SUCCEEDED);
}
void OnDeinit(const int reason)
{
   IndicatorRelease(Stochastic);
}
void OnTick()
{
   if(CopyBuffer(Stochastic,0,1,10,Stochastic_Werte1)<0)
   {
      Print("CopyBuffer error =",GetLastError());
      ResetLastError();
      return;
   }
   if(CopyBuffer(Stochastic,1,1,10,Stochastic_Werte2)<0)
   {
      Print("CopyBuffer error =",GetLastError());
      ResetLastError();
      return;
   }
   
   if(Stochastic_Werte1[0]>Stochastic_Werte2[0] && Stochastic_Werte2[0]<zoneBUY)
}
Carl Schreiber
Moderator
8485
Carl Schreiber  
Arthur Singer:

Vielen Dank für die Antwort. Die Sache ist die, dass ich weis, wie man mit Indikatoren umgeht. Aber ich weis nicht, ob ich zum Abgleichen mit > und < CopyBuffer verwenden soll, also ich habs so gemacht, bin mir aber nicht sicher.

 

Überprüfe es in dem Du Dir die Werte mit Comment() anzeigen lässt. Dazu installierst Du auch den Indikator und vergleichst die Werte.
Arthur Singer
165
Arthur Singer  
Ok, ich werde mal so schauen, danke :)
Einloggen oder registrieren, um einen Kommentar zu schreiben