Diskussion zum Artikel "LifeHack für Händler: Fast-Food aus Indikatoren" - Seite 11

 
fxsaber:

Ihre Agenten (bei denen es einen 21-Sekunden-Test gibt) würden also verboten werden?

Wenn ich mit JA antworte, werden Sie dann nach den Kriterien für ein Verbot fragen? Lassen wir es dabei bewenden, OK?

 
fxsaber:

Es gibt keine Gewissheit, dass ein Benutzer diesen Prozess generell beschleunigen kann. Offensichtlich wird der Overhead für die Berechnung der Hash-Funktion verwendet.

Eine Variante einer solchen Indikator-Hash-Funktion in allgemeiner Form wurde hier veröffentlicht


Nachteilig:

  • Ihre Variante verlässt sich darauf, dass der Handshake auf den Chart bezogen wird, richtig? Haben Sie versucht, den EA im Tester laufen zu lassen? Funktioniert er ? Wieviel langsamer ?
  • Die im Code gezeigte Funktion vergewaltigt auch das Terminal bei jedem Tick - das Handle eines bereits erstellten Indikators anzufordern ist nicht besser als ein Aufruf im Stil von "dieser Indikator wird benötigt - suchen Sie nach seinem Handle und erstellen Sie eine neue Instanz, wenn Sie es noch nicht haben".
 
Rashid Umarov:

Benachteiligungen:

  • Ihre Variante liegt auf ansprechend für hend zum Chart, richtig? Haben Sie versucht, den EA in einem Testprogramm laufen zu lassen? Funktioniert er ? Wie viel langsamer ?
  • Die im Code gezeigte Funktion vergewaltigt auch das Terminal bei jedem Tick - das Handle eines bereits erstellten Indikators anzufordern ist nicht besser als ein Aufruf im Stil von "dieser Indikator wird benötigt - suche sein Handle und erstelle eine neue Instanz, wenn er noch nicht existiert".

Sie haben nicht gelesen

Forum über Handel, automatisierte Handelssysteme und das Testen von Handelsstrategien.

Diskussion des Artikels "LifeHack für Trader: Fastfood aus Indikatoren kochen"

fxsaber, 2018.01.26 09:22 Uhr.

Ja, das ist eine Frontalmethode, die sich voll und ganz rechtfertigte, da es auf Genauigkeit ankam und überhaupt keine Leistung benötigt wurde. Die Aufgabe bestand darin, die störende Cleverness von MT5 auszuschalten.

Und andere haben es natürlich nicht versucht, weil...

Forum zum Thema Trading, automatisierte Handelssysteme und Testen von Handelsstrategien

Diskussion zum Artikel "LifeHack für Trader: Fastfood aus Indikatoren kochen"

fxsaber, 2018.01.26 09:02 Uhr.

Es ging zwar nicht um Performance, aber es war klar, dass ein Array von MqlParam-Werten in den Input einer beliebigen Hash-Funktion gefüttert werden muss. Und das kann nicht schnell arbeiten unter Berücksichtigung der Tatsache, dass es eine langsame String-Feld.

Daher ist das Schreiben eines universellen Indikators schnelle Hash-Funktion viel schneller als das, was in MT5 gebaut ist eine offene Aufgabe. Aber ich bin kategorisch gegen den Aufruf von Indikatoren von irgendwo. Das ist, warum ich nicht einmal wollen, um die Frage zu studieren.


Und ich stimme fast mit Vasilys Hypothese überein.

Forum über Handel, automatisierte Handelssysteme und das Testen von Handelsstrategien.

Diskussion über den Artikel "LifeHack für Trader: Fastfood aus Indikatoren kochen".

Vasiliy Sokolov, 2018.01.26 09:14

Es gibt keine Resonanz, um Ihre Hash-Funktion in OOP-Wrapper zu machen, da diese Funktion bereits hinter den Kulissen von MT5 implementiert ist und schnell arbeitet.

Was darauf hindeutet, dass es bereits schwierig ist, mit der System-Hash-Funktion auf der Benutzerebene aufzuholen, und es wird fast unmöglich sein, sie um einen bedeutenden Betrag zu überholen.


Ich sehe keinen Sinn darin, in diesem Fall etwas zu erfinden.

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien.

Diskussion zum Artikel "LifeHack für Trader: Fastfood aus Indikatoren kochen"

fxsaber, 2018.01.26 09:27 Uhr.

Bars und Indikatoren in Form von Zeichnungen bringe ich auf den Bildschirm. Aber bei EAs ist es fast schon absurd.

Die Leute testen EAs an echten Ticks, während sie sich aus irgendeinem Grund nicht an Ticks, sondern an Balken orientieren. Und es wäre in Ordnung, wenn die Balken für jeden Preistyp (Bid, Ask, Flipper) erstellt würden, aber das ist nicht der Fall.

Es ist eine Art Masochismus, wenn Menschen freiwillig zu historischen Daten wechseln, was einen schrecklichen Informationsverlust bedeutet. Und auf diesem Fragment wird versucht, etwas auszuhecken, einschließlich der Verwendung von Methoden des maschinellen Lernens.


Jetzt ist die einzige Verwendung von Indikatoren ein Spionagemodus in einem Prüfgerät. Aber sobald es Dienste mit

void OnTick( const string &Symb );
Indikatoren für Expert Advisors gibt, werden sie jede Relevanz verlieren.
Анализ результатов тестов и оптимизации в тестере стратегий MetaTrader 5
Анализ результатов тестов и оптимизации в тестере стратегий MetaTrader 5
  • 2018.01.27
  • www.mql5.com
Рассмотрим результаты тестов на одном и нескольких символах. Тесты будем проводить в режиме Все тики...
 

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Analyse der Test- und Optimierungsergebnisse im MetaTrader 5 Strategietester

fxsaber, 28.01.2018 12:25 Uhr.

  1. Im Einzelsymbolmodus arbeitet "spy" 2,5 mal langsamer als reines OnTick. D.h. der leere Indikator (der auf PERIOD_W1 aufbaut, um die Balkenhistorie auf ein Minimum zu reduzieren) hat einen riesigen Overhead im Tester!
Indikatoren sind böse!
 
fxsaber:
Indikatoren sind böse!
fxsaber:

Du hast es nicht gelesen


Und ich stimme fast mit der Hypothese von Vasily überein


Ich sehe keinen Sinn darin, in diesem Fall etwas zu erfinden


Jetzt ist der einzige Nutzen von Indikatoren ein Spionagemodus im Tester. Aber sobald Dienste mit

Also werden Indikatoren für Expert Advisors jede Relevanz verlieren.

Ich habe es gelesen, aber beschlossen, nur explizit die Probleme mit Ihrem Ansatz zu nennen. Denn du warst es, der Vladimir mangelndes Caching etc. vorgeworfen hat.

Die Behauptungen gegenüber Vladimir bezogen sich genau auf die "Ineffizienz" des vorgestellten Ansatzes. Ihre Variante löst dieses Problem nicht.

 
Rashid Umarov:

Ich habe ihn gelesen, aber beschlossen, die Probleme mit Ihrem Ansatz einfach explizit zu benennen. Denn Sie waren es, der Vladimir mangelndes Caching etc. vorwarf.

Die Vorwürfe an Vladimir bezogen sich genau auf die "Ineffizienz" des vorgestellten Ansatzes. Ihre Variante löst dieses Problem nicht.

Standardindikatoren (das sind die einzigen, die in dem Artikel behandelt werden) werden auf elementare Weise zwischengespeichert! Denn alle Eingabeparameter sind bekannt.

Es ist schwierig, eine universelle Hash-Funktion zu schreiben. Aber das ist in diesem Artikel nicht erforderlich. Er befasst sich mit dem einfachsten Fall. Und selbst für diesen gibt es keine Hash-Funktion.

 
Meine Ergebnisse aus dem Artikel

3.3 Vergleichen wir die Ausführungsgeschwindigkeit von MACD-basierten Expert Advisors

Der Vergleich wird sich auf Folgendes beziehen:

  • "MACD Sample.mq5" - Expert Advisor aus der Standardlieferung mit korrektem Zugriff auf Indikatoren
  • "MACD Sample One value at a time.mq5" - Analogon von "MACD Sample.mq5", bei dem wir jeweils einen Wert von den Indikatoren erhalten.
  • "MACD Sample 4 to 5 MQL4 style.mq5" - MQL4 Expert Advisor umgeschrieben auf MQL5 mit minimalen Änderungen und mit Zugang zu Indikatoren im MQL4 Stil.

Die Tests wurden auf USDJPY,M30 vom 2017.02.01 bis 2018.01.16 auf dem MetaQuotes-Demo-Server durchgeführt. Nach jedem Test (sei es der Wechsel des Expert Advisors oder der Wechsel des Tick-Generierungsmodus) wurde das Terminal neu gebootet. Computerkonfiguration:

Ich habe die Gewinnspalte hinzugefügt , die Zeit der Tests wurde vorsichtshalber aus dem zweiten Durchgang genommen. Gelbe Hervorhebungen (Formatierung) wie im Artikel belassen, da ich die Tabelle kopiert habe, ich wollte einfach keine neue erstellen.


Berater Jeder Tick basiert auf echten Ticks Alle Ticks OHLC


Gewinn, $Test-Zeit Abschlüsse Abschlüsse Gewinn
Testzeit Abschlüsse Gewinn
Abschlüsse Testzeit Abschlüsse Abschlüsse
1 MACD Muster.mq5 -467.74
0:00:29.937 122 244 -476.690:00:22.110 122 -754.10
244 0:00:01.015 119 238
2 MACD-Beispiel Ein Wert nach dem anderen.mq5 -467.740:00:30.110 122 244 -476.69
0:00:23.797 122 -754.10244 0:00:01.141 119 238
3 MACD Probe 4 bis 5 MQL4 style.mq5 -428.04
0:00:57.156 122 244 -449.90
0:00:42.078 122 -740.48
244 0:00:02.062 119 238

Bestätigt, dass der Gewinn für den dritten EA anders ist. Ich habe den Grund dafür nicht herausgefunden.



 

Ich fand einen möglichen Grund für den Nettogewinn Mismatch - der Expert Advisor "MACD Sample 4 to 5 MQL4 style.mq5" hat Fehler in der Stop-Modifikation.

Da der Code von der MQL4-Version übernommen wurde, ist es möglich, dass dies ein Legacy-Fehler ist.

 
Rashid Umarov:

Ich fand einen möglichen Grund für den Nettogewinn Mismatch - der Expert Advisor "MACD Sample 4 bis 5 MQL4 style.mq5" hat Fehler in der Stop-Modifikation.

Da der Code von der MQL4-Version übernommen wurde, ist es möglich, dass dies ein Legacy-Fehler ist.

Dies ist nicht das Problem - dieser Fehler tritt auf, wenn das neue StopLoss-Niveau nicht vom aktuellen abweicht

 
Rashid Umarov:
Meine Ergebnisse gemäß dem Artikel

Bestätigt, dass der Gewinn für den dritten EA anders ist. Ich habe den Grund dafür nicht herausgefunden.

Andrey F. Zelinsky fand heraus, dass sich die MACD Sample-Logik zwischen den Versionen MQL4 und MQL5 unterscheidet. Der Unterschied liegt in der Berechnung der TP- und SL-Niveaus.