MT4 iMAOnArray und iBandsOnArray Auswirkungen der Anzahl der Elemente auf die Berechnungen - Seite 4

 
Sergey Efimenko:
Und diese Bibliothek berechnet korrekt, wenn wir die Berechnung nicht für das gesamte Array, sondern nur für den letzten Teil (aktuelle Werte) angeben? Außerdem ist dies nur die Hälfte des Problems, aber was ist mit iBandsOnArray?

Es gibt einen "begin"-Parameter, versuchen Sie, ihn zu begrenzen.

Es gab eine Zeit, in der die FunktioniMAOnArray sehr langsam war. Ich hatte einen Code, der etwa drei Stunden lang mitiMAOnArrayoptimiert wurde, aber dann wurde diese Funktion träge und die Optimierung dauerte etwa 30 Stunden.

Ich weiß es nicht, vielleicht wurde es jetzt behoben. Als ich jedoch den IndikatorMovingAverages.mqh erstellte, wurde derselbe Code in etwa anderthalb Stunden berechnet, d. h. die Zeit wurde um die Hälftereduziert.

Zu iBandsOnArray kann ichnichts sagen, da ich eine solche einbindbare Datei mit der gleichen Aufgabe in mql4 nicht gesehen habe.

 
Mit iBandsOnArray ist der Indikator beim Starten langsam. Geändert in iStdDevOnArray, startet es sofort.
 
Alexey Viktorov:

Hier ist es.

Ja, nun... Junge, geh spazieren.
 
Dmitry Fedoseev:
Mit iBandsOnArray ist der Indikator beim Starten langsam. Geändert in iStdDevOnArray, es startet sofort.
Aber im Testgerät hinkt es sowohl beiiBandsOnArray als auch bei iStdDevOnArray.
 
Dmitry Fedoseev:
Außer, dass in der Tester es mitbeiden iBandsOnArray und iStdDevOnArray hinkt.
Ich dachte immer, Sie seien ein guter Programmierer. Alles, was Sie wirklich tun können, ist, die Finger zu spreizen und zu argumentieren. Verstehst du denn gar nichts, deshalb bist du so wütend?
 
Alexey Viktorov:

Hier ist es.

Und nun vergleiche das Ergebnis deines Codes mit dem Original im LWMA- oder SMMA-Glättungsmodus und erhalte unterschiedliche Werte, da diese beiden Glättungsarten ihre eigenen vorherigen Werte in ihren Berechnungen verwenden und bei Verwendung von nur N Periodenelementen jedes Mal diese Daten verloren gehen, außerdem benötige ich schließlich unterschiedliche Berechnungsperioden für iBands und iMA, so dass ich es zweimal kopieren muss. Und das Ausgangsfeld für die Berechnung wird genauso verwendet. Die Logik Ihrer Argumentation ist mir klar, aber sie ist falsch, denn indem Sie die Länge des Arrays reduzieren, aber gleichzeitig jede Kopie durchführen und alle Elemente neu berechnen, erhöhen Sie schließlich die Gesamtzeit der Indikatorberechnung während der Optimierung oder der Arbeit mit mehreren Versionen des Indikators für verschiedene TFs. In meinem Fall verlangsamt es nur die erste Berechnung, danach wird nur noch 1 neues Element berechnet. Das Problem liegt in der Implementierung dieser Funktionen in MQL. Selbstgeschriebene Versionen funktionieren besser und schneller. Schlussfolgerungen.
 
Dmitry Fedoseev:
Ja, nun... Junge, geh spazieren.
Das ist kein Junge, das ist ein sehr reifer Mann. Obwohl die Angewohnheit, jeden mit "Sie" anzusprechen, ihm nicht gerecht wird, imho :)
 
Sergey Efimenko:
Dies ist kein Junge, sondern ein sehr reifer Mann. Obwohl die Angewohnheit, jeden mit "Sie" anzusprechen, ihn nicht gerade respektabel macht, imho :)
Inwiefern sehr reif? Ein Mann im Ruhestand in seinem Alter?
 
Sergey Efimenko:
Vergleichen Sie nun das Ergebnis Ihres Codes mit dem Original im LWMA- oder SMMA-Glättungsmodus und erhalten Sie unterschiedliche Werte, da diese beiden Glättungsarten ihre eigenen vorherigen Werte in ihren Berechnungen verwenden und bei Verwendung von nur N Periodenelementen jedes Mal diese Daten verloren gehen, außerdem benötige ich unterschiedliche Berechnungsperioden für iBands und iMA, sodass ich sie zweimal kopieren muss. Und das Ausgangsfeld für die Berechnung wird genauso verwendet. Die Logik Ihrer Argumentation ist mir klar, aber sie ist falsch, denn indem Sie die Länge des Arrays reduzieren, aber gleichzeitig jede Kopie durchführen und alle Elemente neu berechnen, erhöhen Sie schließlich die Gesamtzeit der Indikatorberechnung während der Optimierung oder der Arbeit mit mehreren Versionen des Indikators für verschiedene TFs. In meinem Fall verlangsamt es nur die erste Berechnung, danach wird nur noch 1 neues Element berechnet. Das Problem liegt in der Implementierung dieser Funktionen in MQL. Selbstgeschriebene Versionen funktionieren besser und schneller. Bitte ziehen Sie Ihre eigenen Schlussfolgerungen.
Auch wenn MODE_SMA derselbe ist, sollte ich ihn trotzdem nicht verwenden.
 
Alexey Viktorov:
Ich dachte immer, Sie seien ein guter Programmierer. Die Wahrheit ist, dass man nur die Finger ausstrecken und kämpfen kann. Du bekommst nichts, weil du so wütend bist?
Nun, träumen Sie weiter.