Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 783

 
Vitaly Muzichenko:

Ich danke Ihnen für Ihre Aufmerksamkeit.

Die allgemeine Ansicht des Indikators ist wie folgt, und wie man es ohneiEnvelopesOnArray undiBandsOnArray zu tun ist absolut unklar


Warum sollte es ohne sie gehen? Machen Sie Ihre eigene Berechnung auf der Grundlage der Pufferdaten. Aber die Berechnung sollte dann die gleiche Berechnung wiederholen wie die, die Sie verwerfen wollen.

 
Artyom Trishkin:

Warum nicht? Machen Sie Ihre eigene Berechnung auf der Grundlage der Pufferdaten. Aber die Berechnung muss dann die gleiche Berechnung wiederholen wie die, die Sie verwerfen wollen.

Niemand würde sie ablehnen, aber sie nehmen nur Handles, nicht beliebige Arrays wie in mql4

 
Alexey Viktorov:

Niemand würde sie ablehnen, aber sie akzeptieren nur Handles, nicht beliebige Arrays wie in mql4

Ich verstehe, ich bin verwirrt. Ich dachte, es handele sich um eine Frage zu mql4.
 
Artyom Trishkin:
Ich verstehe. Ich war verwirrt. Ich dachte, es wären etwa vier.

Die Frage bezieht sich auf die Übertragung auf fünf, und das Ziel ist, eine ähnliche Anzeige wie jetzt auf vier zu erhalten.

Hier ist ein vollständigerer Code, die Symbole werden im Indikator durch Drücken von Tasten auf dem Diagramm ersetzt, das heißt, Inite ist nicht genug

  for(int i=0; i<limit; i++) {
    Last[i] = Symbol1_Vol*Vol1*iClose(Symbol1_Name,0,iBarShift(Symbol1_Name,0,Time[i])) - 
              Symbol2_Vol*Vol2*iClose(Symbol2_Name,0,iBarShift(Symbol2_Name,0,Time[i]));
  }

 for(int i=0; i<limit; i++) {
    if(ButtonSt) { // кнопка выбора, отображать Bands, или Envelopes
     MA[i]=iMAOnArray(Last,0,Env_Period,0,MODE_SMA,i);
     LineUp[i]=iEnvelopesOnArray(Last,0,Env_Period,MODE_SMA,0,Env_Dev,MODE_UPPER,i);
     LineDn[i]=iEnvelopesOnArray(Last,0,Env_Period,MODE_SMA,0,Env_Dev,MODE_LOWER,i);
    } else {
     MA[i]=iMAOnArray(Last,0,BB_Period,0,MODE_SMA,i);
     LineUp[i]=iBandsOnArray(Last,0,BB_Period,BB_Dev,0,MODE_UPPER,i);
     LineDn[i]=iBandsOnArray(Last,0,BB_Period,BB_Dev,0,MODE_LOWER,i);
    }
  }

Wie lässt sich das auf Fünfer übertragen? Oder ist dies aufgrund mangelnder Funktionalität unmöglich?

 
Vitaly Muzichenko:

Die Frage bezieht sich auf die Übertragung auf fünf, und das Ziel ist, eine ähnliche Anzeige wie jetzt auf vier zu erhalten.

Hier ist ein vollständigerer Code, die Symbole werden im Indikator durch Drücken von Tasten auf dem Diagramm ersetzt, das heißt, Inite ist nicht genug

Wie lässt sich das auf Fünfer übertragen? Oder ist es aufgrund der fehlenden Funktionalität unmöglich?

Es ist also niemand gezwungen, den Griff in der ersten...

 
Alexey Viktorov:

Es ist also niemand gezwungen, den Griff in der ersten...

Das stört mich nicht)

Ich kann nicht herausfinden, wie ichiEnvelopesOnArrayundiBandsOnArray überhaupt ersetzen kann, da es nicht in Five steht, und ich habe keine Ahnung, wo ich anfangen soll. Ich brauche ein komplett identisches Mapping in MT5

 
Vitaly Muzichenko:

Das stört mich nicht)

Ich kann nicht herausfinden, wie ichiEnvelopesOnArrayundiBandsOnArray überhaupt ersetzen kann, da es nicht in Five steht, und ich habe keine Ahnung, wo ich anfangen soll. Ich benötige ein vollständig identisches Mapping in MT5

Denn es ist nicht das erste Mal, dass Sie es ignorieren.

Forum zum Thema Handel, automatisierte Handelssysteme & Strategietests

FAQ von Anfängern MQL5 MT5 MetaTrader 5

Alexey Viktorov, 2017.09.21 20:06

Es gibt MovingAverages.mqh in der Wurzel von include, aber ich habe nicht nach BB gesucht, vielleicht nicht. Am besten ist es jedoch, das Handle des Datenquellenindikators als Preis in die iMA-Funktion zu übernehmen.

Ich habe ein Beispiel mit nur geglätteten iMA

int haMa8, haFastMa, haMa21, haSlowMa;

int OnInit()
 {
   haMa8  = iMA(_Symbol, PERIOD_CURRENT, perFastMa, 0, metodFastMa, priceFastMa);
   haFastMa = iMA(_Symbol, PERIOD_CURRENT, perFastMa, 0, metodFastMa, haMa8);
   
   haMa21 = iMA(_Symbol, PERIOD_CURRENT, perSlowMa, 0, metodSlowMa, priceSlowMa);
   haSlowMa = iMA(_Symbol, PERIOD_CURRENT, perSlowMa, 0, metodSlowMa, haMa21);

//Продолжение догадаешься

Dasselbe gilt für BB.

Wenn die Quelle ein benutzerdefinierter Indikator ist, dann müssen Sie

  • Machen Sie es separat.
  • Erstellen Sie einen neuen Indikator.
  • Hängen Sie die erste als Ressource an.
  • Und nach Erhalt der Handle, um es in iMA und andere Funktionen einzufügen.

Was für ein Chaos...


 
Alexey Viktorov:

Denn es ist nicht das erste Mal, dass du ignorierst, was du geschrieben hast.

Es gibt MovingAverages.mqh in der Wurzel von include, aber ich habe nicht nach BB gesucht, vielleicht auch nicht.
Es gibt sie: \MQL5\Include\Indicators\Trend.mqh
 
Artyom Trishkin:
Ich hab's: \MQL5\Include\Indicators\Trend.mqh

Danke, jetzt habe ich es gefunden.

Ich musste iTEMA auf den benutzerdefinierten Indikator anwenden, aber ich habe nicht daran gedacht, dort nachzusehen... Ich habe es wie oben beschrieben gemacht, alles funktioniert ohne Probleme.

 

Bitte helfen Sie mir bei der Ausarbeitung einer Funktion.

Ich habe einen aktuellen TF und einen geschätzten TF, die Funktion sollte die Differenz zwischen den beiden TFs in allen Kombinationen zurückgeben, wenn die Messung in Balken war

Berechnung TF 15 15 15 60 60 60 240 240 240
Aktuelle TF 15 5 1 15 5 1 60 15 5
Differenz in Nbar 1 3 15 4 12 60 4 16 48

Wie kann man das richtig umsetzen?