Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1940

 
Hallo zusammen. Können Sie mir bitte sagen, wie der Indikatoraufruf in mql4 funktioniert? Ich ändere die Periode für CCI in der Schleife, aber wenn die Anzahl der Iterationen mehr als 205 beträgt, beginnt CCI, Nullen zu zeichnen, und zwar in einem anderen Puffer. Wenn num=204, dann kann die Periode sogar 500 sein, aber wenn num=205, dann kann die maximale Periode 207 sein, und dann wird sie Null enthalten. Das Diagramm enthält mehrere tausend Balken. Wenn wir die Periode in der Schleife nicht ändern, ist natürlich alles in Ordnung. Was könnte der Grund dafür sein? Ich habe ständig Probleme mit Aufrufen mehrerer Indikatoren. Bitte beraten Sie mich, wie ich damit umgehen kann, vielleicht lesen Sie einige Artikel?
   if(rates_total>prev_calculated)
   {
      int num=205;
      period =2;   

         for(int i=0; i<=num; i++)
         {
            cci[i] = iCCI(NULL,0,period,PRICE_CLOSE,i);   
            period++;
         }
      ////////////
      period=208;

      for(int i=0; i<100; i++)
      {
         CCI[i] = iCCI(NULL,0,period,PRICE_CLOSE,i);
      }
    
   }
Wenn num=300, beträgt die Höchstdauer 66
Dateien:
iCCI.mq4  10 kb
 
Von Zeit zu Zeit versuche ich, den Indikator auszuführen, und er funktioniert, aber das Terminal bleibt hängen.
 
Sagen Sie mir wenigstens, in welche Richtung ich graben soll, wie man sagt?
 
Aleksandr Kononov #:
Sagen Sie mir wenigstens, in welche Richtung ich graben soll, wie man sagt?

und wozu machen Sie diese Art von Forschung? Ist das praktisch sinnvoll? Oder nur aus Interesse?

 
Aleksandr Kononov #:
Sagen Sie mir wenigstens, in welche Richtung ich graben soll, wie man sagt?

.

 
Es handelt sich nicht um eine Studie, sondern um ein praktisches Problem. Es ist nur so, dass in diesem Beispiel das Wichtigste weggenommen wurde und übrig geblieben ist. Ich bin ständig mit diesem Problem konfrontiert und habe es satt, es nach dem Bauchgefühl zu lösen. Ich möchte erklären, warum uns der Speicher ausgeht, und dann habe ich dieses Problem, wenn Indikatoraufruffunktionen mehr als einmal verwendet werden. Wenn Sie sie anrufen, ohne den Zeitraum zu ändern, ist alles in Ordnung. Aber wenn ich den Zeitraum ändere, bekomme ich Probleme.
 
Aleksandr Kononov Indikatoraufruffunktionen mehr als einmal verwendet werden. Wenn Sie sie anrufen, ohne den Zeitraum zu ändern, ist alles in Ordnung. Aber wenn ich den Zeitraum ändere, bekomme ich Probleme.

Es ist eine Sache, 200 Balken eines Indikators zu berechnen. Es ist eine andere Sache, einen Balken für 200 Indikatoren zu berechnen... Es ist nicht klar, woher die Notwendigkeit kommt, 200 Indikatoren zu laden... es ist möglich, dass es eine Grenze für solche "Experimente" gibt, so dass Ihnen der Speicher ausgeht...

 
Die Frage, wo man sich bewerben soll, ist eine Frage der Fantasie. Viele Orte
 
Gibt es eine Möglichkeit, den Speicher zu überprüfen? Wie wird es konsumiert oder was sonst?
 
Aleksandr Kononov #:
Wo man sie anwendet, ist eine Frage der Phantasie. An vielen Orten.

der aufgehängte Code kann nirgendwo angewendet werden... Sie müssen die Aufgaben festlegen, die erledigt werden können... Und es ist einfacher, den Code zu vermasseln... Indikatoren müssen schnell arbeiten, es bleibt keine Zeit für überlange Berechnungen.

Grund der Beschwerde: