Automated Trading Championship 2007: Häufige Fehler bei Experten - Seite 7

 

Seit Ende August erhalte ich fast jeden Tag eine automatische E-Mail-Nachricht, die besagt, dass der Experte den Test erfolgreich bestanden hat und zur Teilnahme zugelassen wurde.

Ich möchte wissen, was die ständige automatische Überprüfung der gleichen Datei bedeutet, die ich seit einem Monat nicht mehr geändert habe? Kann der Server den EA nicht nur dann erneut prüfen, wenn eine neue Version einer Datei heruntergeladen wird, insbesondere wenn die aktuelle Version des EA erfolgreich geprüft wurde?

Es stört mich nicht wirklich, aber ich würde gerne verstehen, was die wiederholte Prüfung derselben Datei mit einer Benachrichtigung an den Autor bedeutet.

 
Eine Woche, bevor der EA-Test begann, löschte ich meinen EA, weil ich beschloss, den Code aufgrund der Ergebnisse der Demo ein wenig zu optimieren, dann (als der Test begann) bekam ich eine Nachricht, dass mein EA erfolgreich getestet und akzeptiert wurde - Fehler -0 etc
Ich habe eine Frage, was EA wurden Sie testen, wenn ich es gelöscht?
Und jetzt erhalte ich ständig Meldungen:

Checking of your EA is completed. Testbericht für Expert:
-----------------------
2007.09.08 19:31 loading
invalid configuration
0 min 0 seconds
Errors: 1

Obwohl ich noch keinen aktualisierten Expert-Code hinzugefügt habe. Bitte beachten Sie dies. Ich danke Ihnen.
 
Renat:
folver:
d.h. ich habe zweimal eine E-Mail erhalten, dass der Exponent den Test erfolgreich bestanden hat und ich registriert bin... und bei der dritten sagt er, dass ich einen Fehler im Code habe... warum sollte ich den Code des Experten ändern, den ich einmal in das Profil hochgeladen habe?
Nach den Ergebnissen zu urteilen, hat der Expert Advisor einen Margin Call erwischt. Ich kann noch nichts sagen. Morgen früh werden die nächsten Kontrollen durchgeführt und wir werden die Ergebnisse überprüfen.

Mein Expert Advisor ist optimiert und wartet auf die Testergebnisse ... Ich habe bessere Ergebnisse mit einer Modellierung von geringerer Qualität erzielt... Bei 90% hat der Expert Advisor wirklich einen Margin Call bekommen, aber es ist schwer zu verstehen, wie er zwei frühere Versuche mit MK verpassen konnte
 
folver:
Renat:
folver:
d.h. ich habe zweimal eine E-Mail erhalten, dass der Exponent den Test erfolgreich bestanden hat und ich registriert bin... und auf der dritten es sagt, ich habe einen Fehler im Code ... warum sollte ich den Code des Expert Advisor ändern ich es auf das Profil einmal hochgeladen?
Nach den Ergebnissen zu urteilen, hat der Expert Advisor einen Margin Call erwischt. Ich kann noch nichts sagen. Morgen früh werden die nächsten Kontrollen durchgeführt und wir werden das Ergebnis überprüfen.

Mein Expert Advisor ist optimiert und wartet auf die Testergebnisse ... Ich habe bessere Ergebnisse mit einer Modellierung von geringerer Qualität erzielt. ... bei 90 % hat der Expert Advisor tatsächlich einen Margin-Call, aber es ist schwer zu verstehen, wie er vorher immer zweimal Verluste gemacht hat.
Offenbar war der Expert Advisor schon immer ein Verlustgeschäft. Allerdings haben wir vor ein paar Tagen damit begonnen, einen Margin Call als Fehler anzuzeigen (warum sollten wir einen Expert Advisor akzeptieren, der garantiert nicht profitabel ist), so dass die ersten beiden Tests "fehlerfrei" waren.

Von nun an wird eine übermäßige Anzahl von erzeugten Protokollen als Fehler betrachtet. Wenn ein Expert Advisor während der 8 Monate des Standardtests mehr als 64 Megabyte an Protokollen erzeugt hat, wird er nicht zur Teilnahme zugelassen. Diese Maßnahme ist zwingend erforderlich, da einige Experten derzeit Hunderte von Megabyte an nutzlosen Protokollnachrichten erzeugen. Da wir die Logs der Expert Advisors auf der Championship-Website in Echtzeit veröffentlichen, ist eine so große Menge an Logs absolut inakzeptabel. Letztes Jahr haben wir einen Teilnehmer disqualifiziert, dessen Expert Advisor in einem Zeitraum von 24 Stunden etwa 30 GByte an Protokollen erzeugte.
 
solandr:

Im Prinzip stört mich das nicht, aber ich würde gerne verstehen, warum man dieselbe Datei immer wieder überprüft und dem Autor eine Benachrichtigung schickt?

Wir korrigieren Skripte, fügen neue Arten von Diagnosen und Fehlerkontrollen fast jeden Tag hinzu. Deshalb führen wir in regelmäßigen Abständen umfassende Überprüfungen durch. Nur geänderte EAs werden im üblichen Modus erneut geprüft.
 
Renat:

Ab heute wird ein übermäßiges Volumen der erzeugten Protokolle als Fehler gewertet. Wenn während der 8-monatigen Standardprüfung mehr als 64 Megabyte an Protokollen erzeugt werden, wird der Experte nicht zur Teilnahme zugelassen. Diese Maßnahme ist zwingend erforderlich, da einige Experten derzeit Hunderte von Megabyte an nutzlosen Protokollnachrichten erzeugen. Da wir die Logs der Expert Advisors auf der Championship-Website in Echtzeit veröffentlichen, ist eine so große Menge an Logs absolut inakzeptabel. Letztes Jahr haben wir einen Teilnehmer disqualifiziert, dessen Expert Advisor in einem Zeitraum von 24 Stunden etwa 30 GByte an Logs erzeugte.
Mein Bericht zeigt 249 MB an Protokollen für 8 Monate. Und es gibt keine nutzlosen Meldungen, das Einzige, was dort angezeigt wird, ist ein Änderungsprotokoll und das Öffnen und Schließen von Aufträgen während des Trailing.
Gibt es eine Option im Terminal (oder im Code), um die Ausgabe von "nutzlosen Meldungen" zu deaktivieren?
Und ich denke, die meisten EAs, die Trailing-Stop an dieser Grenze verwenden. Auch hier ist eine Neugestaltung erforderlich. Hätte man das nicht schon vor einem Monat erwähnen können?
 
abadan:
Meinem Bericht zufolge beträgt das Protokoll für 8 Monate 249 Mb. Und es gibt keine nutzlosen Meldungen, das einzige, was dort angezeigt wird, ist das Änderungsprotokoll und die Eröffnungs- und Schließungsaufträge beim Trailing.
Angenommen, die Änderungsnachricht umfasst 250 Byte (das ist sogar zu viel).
So hat der Expert Advisor in 8 Monaten mehr als eine Million Mal Aufträge geändert!
Das sind mehr als 6000 Änderungen pro Tag oder 250 Änderungen pro Stunde.


Dies sind alles "nützliche" Nachrichten!
 
komposter:
Abadan:
Meinem Bericht zufolge beträgt das Protokoll für 8 Monate 249 Mb. Und es gibt keine nutzlosen Meldungen, das einzige, was dort angezeigt wird, ist das Änderungsprotokoll und die Eröffnungs- und Schließungsaufträge beim Trailing.


Angenommen, die Änderungsnachricht umfasst 250 Byte (das ist sogar zu viel).
So hat der Expert Advisor in 8 Monaten mehr als eine Million Mal Aufträge geändert!
Das sind mehr als 6000 Änderungen pro Tag oder 250 Änderungen pro Stunde.


Dies sind alles "nützliche" Nachrichten!



Tut mir leid, beim Überprüfen des EA ist gerade eine Meldung erschienen, die mich verwirrt hat. Natürlich waren es nicht 249MB, sondern 249kB. Ich hätte mich fast selbst erschreckt.
 

Eine kleine Frage: Wenn bei den Tests keine Fehler auftreten und der Expert Advisor zugelassen wird, aber während der Meisterschaft Fehler auftreten, wird der Expert Advisor dann disqualifiziert?

Ich habe festgestellt (insbesondere bei der Vorbereitung meines EA), dass der Vergleich von nicht normalisierten Werten, z. B. in Trailing-Stop-Bedingungen, ein Signal für OrderModify auslösen kann, obwohl sich der Preis nicht wirklich geändert hat, was dazu führt, dass der EA OrderModify() mit denselben Werten und daher mit Fehler 1 ausführt.

Ich habe dies nicht bemerkt, bevor, und die EA mit solchen Code, zum Beispiel, nicht produzieren Fehler bei der letzten Meisterschaft, aber jetzt gibt es Fehler 1:

                  if(OrderStopLoss()<(Bid-TrailingPoints*Point)) {
                     OrderModify(.......);
Und Debug-Drucke gab mir in das Protokoll "1.97550000 < 1.97550000"... Ich weiß nicht, warum, aber dieser Weg aus dieser Situation, zum Beispiel:
                  if( NormalizeDouble((Bid-TrailingPoints*Point)-OrderStopLoss(),nDigits)>0) {
                     OrderModify(.......);
und übrigens sah ich guten Rat irgendwo, ich erinnere mich nicht, deren (von Rosh Weg), ähnliche Vergleichsoperationen als Vergleich der normalisierten Ergebnis der Wertdifferenz mit notwendigen Fehler durchführen. Ich hoffe, dass es jemandem helfen wird, Fehler zu korrigieren.
 
Es kann einfach gemacht werden:
bool  modifyResult;                    
oldSL=OrderStopLoss();
newSL=Bid-TrailingStop*Point;
if (MathAbs(newSL-oldSL)>Point) 
{
modifyResult=OrderModify(OrderTicket(),OrderOpenPrice(),NewSL,OrderTakeProfit(),0,Yellow);
if (!modifyResult) Print("TrailingStop:Ошибка модифации ",GetLastError(),"  oldSL=",oldSL,"   newSL=",newSL);
}

Ein Nachlauf findet nur statt, wenn der alte Wert um mindestens einen Punkt vom neuen Wert abweicht.