Diskussion zum Artikel "Wie man den Berechnungsblock eines Indikators in den Code eines Expert Advisors überträgt" - Seite 3
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Ich habe beschlossen, Indicator.mqh, die für mich modifiziert wurde, mit anderen zu teilen. Vielleicht spart es jemandem Zeit, wenn er den Indikator in eine Klasse übersetzt.
Der neue Artikel Implementierung von Indikatorberechnungen in den Code eines Expert Advisors wurde veröffentlicht:
Autor: Dmitriy Gizlyk
Ein Blick in die Vergangenheit.
In der Tat ein sehr interessanter Artikel! Solides und nettes Konzept... aber ich fürchte, es gibt einen Fehler in der verteilten Software, und es ist nicht gut, Fehler zu hinterlassen.
Methode GetData. Verteilter Code ist:
Korrigierter Code sollte sein:
Array-Index beginnt bei 0 und letztes Element hat Index (m_data_len - 1) statt m_data_len, nicht wahr?
rf, Abschnitt Arbeiten mit benutzerdefinierten Indikatoren von https://www.mql5.com/de/articles/261
Vielen Dank für diesen Artikel! Ich studiere ihn, um von instabilen konventionellen Indikatoren wegzukommen.
Aber es ist wichtig für mich, Indikatoren auf einem Diagramm visualisieren zu können. Hat es jemand implementiert?
Der Artikel How to transfer the calculation part of any indicator into the Expert Advisor code wurde veröffentlicht:
Autor: Dmitriy Gizlyk
Warum muss man überhaupt Berechnungen aus einem Indikator in einen Expert Advisor übertragen?
Viele Leute verwenden Indikatoren ganz ohne EA.
Sie können die Berechnungen einfach in Stufen aufteilen.
Zum Beispiel so:
Warum muss ich Berechnungen aus einem Indikator in einen Expert Advisor übertragen?
Viele Leute verwenden Indikatoren, ohne einen Expert Advisor zu haben.
Sie können die Berechnungen einfach in Stufen unterteilen.
Zum Beispiel so:
Aufgrund der Tatsache, dass der reguläre Mechanismus der Indikatoren arbeitet durch einen Stumpf, zum Beispiel: https://www.mql5.com/ru/forum/372612 und dies ist aufgrund ihrer Umsetzung.
Mit der zunehmenden Komplexität der Indikatoren, mein Expert Advisor "verzettelt". Im Tester habe ich viele andere Fehler in der Arbeit der Indikatoren gefangen, aber ich habe sie nicht beschrieben, weil es nutzlos ist.
Ich habe Ihre Idee nicht verstanden.
Da der reguläre Indikatormechanismus über den Stumpf funktioniert, z.B.: https://www.mql5.com/ru/forum/372612 und dies ist auf ihre Umsetzung zurückzuführen.
Mit der zunehmenden Komplexität der Indikatoren hat sich mein Expert Advisor "verzettelt". Im Tester habe ich viele andere Fehler in der Arbeit der Indikatoren gefunden, aber ich habe sie nicht beschrieben, weil es nutzlos ist.
Ich habe Ihre Idee nicht verstanden.
Zunächst einmal ist Ihr Code nicht ganz korrekt.
Ich würde ihn so schreiben:
Da die Funktionen in Indikatoren mit minimalen Verzögerungen ausgeführt werden sollen, werden komplexe Prozesse (Laden der Historie, komplexe Berechnungen usw.)
in mehrere Teile aufgeteilt werden, die zum
OnCalculateNullwert (return(0) ), d.h. der Indikator befindet sich in der Anfangsphase, bis wir alle notwendigen Aktionen mit minimalen Verzögerungen in jeder Phase durchführen.
В архитектуре MetaTrader 5 организован асинхронный доступ к значениям индикаторов. Иными словами, при получении хэндла индикатора он прикрепляется к графику. Далее этот индикатор производит свои расчеты вне потока советника. Они взаимодействуют лишь на этапе передачи данных, аналогично получению данных тайм-серий. Поэтому и время на выполнение этих операций сопоставимо.Sie sagen also, dass es im wirklichen Leben schneller sein wird?! -Denn in Wirklichkeit wird es so sein. Experte in einer Spur, Indikator in einer anderen (und vielleicht sogar auf verschiedenen Kernen). Nur wenn man es in die serielle Verarbeitung steckt, wird es langsamer - aber das ist nur eine künstliche Einschränkung durch den Strategietester.