Entwicklungspläne für den MetaTrader 5 Strategy Tester - Seite 17

 
fxsaber:

Ich verstehe das Drehbuch nicht. Warum sollte der Entwickler einen EA auf den Markt bringen, der ihn in einer bestimmten Situation im Visualizer aussetzt?

Dies ist manchmal notwendig, wenn Ihr Roboter Ihnen erlaubt, manuell zu handeln. Ich habe zum Beispiel einen EA-Modus. Der Roboter sagt, was zu tun ist, und der Benutzer muss die entsprechende Taste direkt auf der Karte drücken.

Und dann sollten Sie automatisch die Geschwindigkeit des Testers reduzieren. In diesem Modus kann der Roboter als Trainer arbeiten. Ich verwende dazu etwa 10 bis 15"Kommentar"-Befehle, die im richtigen Moment die Geschwindigkeit der Prüfung erheblich reduzieren :)

 
Aleksey Mavrin:
Petros Shatakhtsyan:

Verstanden, danke.

 

Verwenden Sie while, wenn Sie das Prüfgerät anhalten möchten.

Überprüfen Sie in der Schleife die Bedingung für die Wiederaufnahme der Arbeit.


Es ist sehr nützlich für jeden Roboter, beim Öffnen und Schließen von Positionen anzuhalten, um das Signal zu sehen.

 
Vladislav Andruschenko:

Verwenden Sie while, wenn Sie das Prüfgerät anhalten möchten.

Überprüfen Sie in der Schleife die Bedingung für die Wiederaufnahme der Arbeit.


Es ist sehr nützlich für jeden Roboter, beim Öffnen und Schließen von Positionen anzuhalten, um das Signal zu sehen.

Dieser Trick funktioniert im MT5 leider nicht - wenn Sie die Schleife verlassen, wird die Historie sofort um so viele Tage weitergescrollt, wie der Tester in dieser Zeit ohne Schleife durchlaufen hätte. Klingt seltsam und sieht auf einem Diagramm noch seltsamer aus, ich hoffe, Sie verstehen, worauf ich hinaus will))


Der Debug-Modus ist für das Testen von Strategien (nicht von Code) äußerst unpraktisch. In MT4 könnten Sie in den visuellen Tester scrolling +1 bar, +1 tick, etc., so viel wie Phantasie ist genug.



ZS: Ich habe verstanden, warum der Verlauf gescrollt wurde - es war wegen Sleep() in der Schleife. Ich habe ihn herausgenommen und alles war wieder normal!

 
Aleksey Mavrin:

Ich verstehe, was Sie meinen, das ist richtig. Es ist nur so, dass ich den Antrag in der Tiefe und in der Breite betrachte, wofür könnte er sein? Das Anhalten im visuellen Testmodus zum Zeitpunkt der Transaktion und die Anzeige einiger Informationen könnte auch für die Sichtbarkeit des Kunden nützlich sein. Und wenn es nur für die Entwicklung und Fehlersuche ist, dann ja, es ist überflüssig, die bestehende DebugBreak ist genug.

Und was hindert Sie daran, im Debug-Modus zu arbeiten und Videos zu drehen? Bevor Sie eine Position öffnen, setzen Sie DebugBreak, nehmen Sie entsprechende Eintragungen vor und setzen Sie den Test fort. Dann schneiden Sie das Erscheinen von ME im Rahmen aus und schalten zurück... Wenn Sie Clips erstellen möchten, müssen Sie zumindest über eine primitive Videobearbeitungssoftware verfügen. Es gibt viele davon im Internet, sogar Online-Anwendungen. Außerdem können Sie DebugBreak als Bedingung für die Arbeit im Debug-Modus festlegen. In anderen Modi gibt es kein Halten mehr.

 
dsfx:

Dieser Trick funktioniert im MT5 leider nicht - wenn Sie einen Zyklus beenden, blättert er sofort durch die Historie für so viele Tage vorwärts, wie der Tester in dieser Zeit ohne Schleife durchlaufen hätte. Klingt seltsam und sieht auf einem Diagramm noch seltsamer aus, ich hoffe, Sie verstehen, worauf ich hinaus will))


Der Debug-Modus ist für das Testen von Strategien (nicht von Code) äußerst unpraktisch. In MT4 könnten Sie in den visuellen Tester scrolling +1 bar, +1 tick, etc., so viel wie Phantasie ist genug.



ZS: Ich habe verstanden, warum der Verlauf gescrollt wurde - es war wegen Sleep() in der Schleife. Ich habe sie entfernt und alles ist wieder an seinem Platz!


Vielleicht haben Sie dort einen Zettel in die Schleife gelegt?

Sie könnenSleep nicht in eine Schleife einbauen, da es die Ticks in mt5 wirklich umkehrt.

Aber eine normale Schleife funktioniert so, wie Sie es wollen.

Ich wende diesen Trick seit 4 Jahren an

 
Renat Fatkhullin:

Weitere Funktionen werden wahrscheinlich bald hinzukommen:

  • SQLite-Datenbanken


Warum SQLite und nicht eine spezialisierte Zeitreihendatenbank mit Kompressionsunterstützung und anderen Vorzügen?

Sie sind viel besser für das Feld geeignet.

 
Lyuk:


Warum SQLite und nicht eine spezielle Datenbank für Zeitreihen mit Komprimierungsunterstützung und anderen Vorzügen?

Sie sind viel besser für das Feld geeignet.

Denn es handelt sich um eine rein integrierte Lösung für den eigenen Bedarf, einschließlich des agentenbasierten Betriebs. Die nächste Version wird Datenbanken direkt in den Editor integrieren und neue Funktionen für massive Operationen bieten.

Und die Arbeit mit externen Datenbanken kann auch über eine DLL organisiert werden.

 

Für diese Tests, insbesondere bei der Broker-Historie, wäre die Funktion "Wiederholte Ticks ausschließen" sehr nützlich (z. B. neben "Gewinn in Pips, um die Berechnungen zu beschleunigen").

Bei einem beliebten Broker habe ich festgestellt, dass 8 Mio. von 13 Mio. Ticks pro Monat repetitiv sind! Auf diese Weise können wir die Geschwindigkeit der Tests für gekaufte EAs oder solche, die nicht über einen solchen Programmfilter verfügen, deutlich erhöhen.


Ich bitte auch darum, auf der Seite mit den Optimierungsergebnissen die Möglichkeit zu schaffen, mehr Spaltenparameter auszuwählen. Ich möchte zum Beispiel den Drawdown in der Einzahlungswährung während der Optimierung mit einem festen Lot-Wert sehen, aber es ist unmöglich, ihn auszuwählen - onTester ist durch einen anderen Parameter belegt.

 
dsfx:

Für diese Tests, insbesondere bei der Broker-Historie, wäre die Funktion "Wiederholte Ticks ausschließen" sehr nützlich (z. B. neben "Gewinn in Pips, um die Berechnungen zu beschleunigen").

Bei einem beliebten Broker habe ich festgestellt, dass 8 Mio. von 13 Mio. Ticks pro Monat repetitiv sind! Dies kann die Geschwindigkeit der Tests für gekaufte EAs oder solche, die keinen solchen Programmfilter haben, erhöhen.

Dies kann mit benutzerdefinierten Symbolen geschehen. Aber diese Einstellung befindet sich im TDS, wie auch viele andere, die im normalen Tester nützlich wären.