MetaTrader 5 Strategy Tester: Bugs, Bugs, Verbesserungsvorschläge - Seite 58

 

Das Prüfgerät für die benutzerdefinierten Symbole funktioniert nicht mehr richtig. Wiedergabe.

Symbol erstellen.

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

MetaTrader 5 Strategy Tester: Bugs, Bugs, Verbesserungsvorschläge

fxsaber, 2020.02.11 01:58

sinput datetime inDateFrom = D'2020.01.01';

void OnStart()
{
  const string Name = "USDJPY_CUSTOM";                                                       // Имя кастомного символа
  const string SymbOrig = "USDJPY";                                                          // Имя оригинального символа

  MqlTick Ticks[];
  
  const int Size = CopyTicksRange(SymbOrig, Ticks, COPY_TICKS_ALL, (long)inDateFrom * 1000); // Считали USDJPY-тики.
    
  if ((Size > 0) && CustomSymbolCreate(Name, NULL, SymbOrig) && SymbolSelect(Name, true))    // Создали символ на основе USDJPY.
    CustomTicksReplace(Name, 0, LONG_MAX, Ticks);                                            // Поместили в него историю USDJPY.        
}


Starten Sie im Strategy Tester (Standardmodus, nicht nach Pips) diesen Expert Advisor

#include <MT4Orders.mqh> // https://www.mql5.com/ru/code/16006

#define  Ask SymbolInfoDouble(_Symbol, SYMBOL_ASK)

void OnTick()
{
  static long Ticket = -1;
  
  if (Ticket == -1)
    Ticket = OrderSend(_Symbol, OP_BUY, 1, Ask, 0, 0, 0);
}

nachdem die Währungen gleich der Kontowährung gesetzt wurden.


Danach werden wir sehen, wie sich das Geschäft entwickelt.


Der Gewinn ist 100 Mal höher als er sein sollte. Bei früheren Builds war dies nicht der Fall.

Suchbegriff: Oshibka 003.
 

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

MetaTrader 5 Strategy Tester: Bugs, Bugs, Verbesserungsvorschläge

fxsaber, 2020.01.28 14:07

Dies ist das erste Mal, dass ich mit meinem EA auf eine Situation gestoßen bin, in der das GA-Ergebnis nicht mit einem einzigen Durchgang übereinstimmt. Alle Pässe sind unterschiedlich.

Das Ergebnis ist das gleiche wie bei Brute-Force. Build 2305.


Ich habe das Gefühl, dass in opt at genetics die Eingabeparameter der einzelnen Durchgänge nicht ganz korrekt geschrieben sind.

Die Situation wiederholte sich. Es ist schwer vorstellbar, wie man die Gründe dafür herausfinden kann.

 
fxsaber:

Die Situation hat sich wiederholt. Es ist schwer zu erkennen, wie man die Ursachen herausfinden kann.

In der Ergebniszeile der Optimierung stehen Parameterwerte.

Bei einem einzelnen Test werden die Parameterwerte notwendigerweise im Testerprotokoll angezeigt.

Stimmen die Werte in der Ergebniszeile der Optimierung und im Testerprotokoll überein?

 
Slava:

Die Parameterwerte werden in der Ergebnisleiste der Optimierung angezeigt.

Wird ein Einzeltest durchgeführt, werden die Parameterwerte zwangsläufig im Testerprotokoll ausgegeben.

Stimmen die Werte in der Optimierungsergebniszeile und im Testerprotokoll überein?

Sie stimmen überein. Das ist das erste, was ich überprüft habe. Ich werde versuchen, die GA-Durchgänge durch die Rahmen zu ziehen. Und dann vergleichen Sie mit dem, was die Single zeigt.

Ich habe den Verdacht, dass die Zeichenkette des Eingabeparameters falsch geformt ist. D.h. ich habe einen Satz verordnet, aber fälschlicherweise einen anderen Satz in opt verschrieben.


ZZZ ist es nicht gelungen, die Geschichte in einem kleinen Intervall zu reproduzieren.

 

Der Strategietester prüft die Originalsymbole und die benutzerdefinierten Symbole bei der Aufbereitung der Daten vor dem Durchlauf unterschiedlich auf Korrektheit (übereinstimmende Balken und Ticks).


Wir erstellen ein benutzerdefiniertes Symbol, und es tritt kein einziger Fehler auf. Dann machen wir dieselben Daten auf der Serverseite. Und Tester sagt, die Daten seien ein einziger großer Fehler.

Ein Grund mehr, den Tester nur auf benutzerdefinierten Symbolen laufen zu lassen.

 
fxsaber:

Dann machen wir die gleichen Daten zu den Serverdaten. Und Tester sagt, die Daten seien ein einziger großer Fehler.

Vielleicht gibt es ja doch ein Problem mit dem Format?

 
Andrey Khatimlianskii:

Vielleicht gibt es ein Problem mit dem Format?

Dieser Punkt wurde überprüft. Vollständige Übereinstimmung, einschließlich Tickvolumen, Spread usw.

 
fxsaber:

Dieser Punkt wurde überprüft. Vollständige Übereinstimmung, einschließlich Tickvolumen, Spread usw.

Das muss ein Schutz sein. Sie stecken also nichts ein.

 
Andrey Khatimlianskii:

Wahrscheinlich Schutz. Sie machen also nichts kaputt.

Es ist nur so, dass die Daten des Originalsymbols perfekt mit dem benutzerdefinierten Symbol übereinstimmen. Aber die benutzerdefinierte Version ist fehlerfrei, während die ursprüngliche Version nicht funktioniert.

Auf einem realen Server bin ich auf eine Situation gestoßen, in der das gleiche Tick-Volumen des ursprünglichen Symbols etwas anders ist als in der Tick-Historie.

Und da ist es besser, den Tester überhaupt nicht auf Originalsymbole anzuwenden. Andernfalls kann es passieren, dass Sie auf generierte Zecken stoßen, anstatt auf echte.

 
fxsaber:

Die Situation hat sich wiederholt. Es ist schwer vorstellbar, wie man die Ursachen herausfinden kann.

Forum zum Thema Handel, automatisierte Handelssysteme und Strategietests

MetaTrader 5 Strategy Tester: Bugs, Bugs, Verbesserungsvorschläge

fxsaber, 2020.01.28 14:07

Dies ist das erste Mal, dass ich mit meinem EA auf eine Situation gestoßen bin, in der das GA-Ergebnis nicht mit einem einzigen Durchgang übereinstimmt. Alle Pässe sind unterschiedlich.

Das Ergebnis ist das gleiche wie bei Brute-Force. Build 2305.


Ich habe das Gefühl, dass in opt während der Genetik die Eingabeparameter der einzelnen Durchgänge nicht ganz korrekt geschrieben sind.

Slawa:

In der Ergebniszeile der Optimierung stehen Parameterwerte.

Im Einzeltest werden die Parameterwerte zwingend in das Testerprotokoll geschrieben.

Stimmen die Werte in der Zeile der Optimierungsergebnisse und im Protokoll des Testers überein?

Ich hatte auch eine ähnliche Situation und habe versucht, sie zu analysieren, und es hat sich so ergeben,

Die Parameter in der Ergebniszeile der Optimierung sind korrekt und stimmen mit denen im Protokoll des Testers überein, aber der Expert Advisor beginnt den Test mit anderen Parametern.

Ich habe das Terminal neu gestartet und alle Caches gelöscht, aber die Optimierungsparameter wurden trotzdem nicht auf den Expert Advisor angewendet. Vielleicht hat ein Antivirusprogramm oder eine Firewall etwas blockiert.

Dann löste sich das Problem irgendwie von selbst und begann normal zu funktionieren. Prüfen Sie auch, ob Ihre Firewall etwas blockiert.