Hat jemand eine Idee wie ich Fehler bei der Optimierung behandele .
Da die Print() Funktion ja deaktiviert ist , suche ich eine Möglichkeit um trotzdem eine Ausgabe in die Logdatei des Agents/Tester zu bekommen.
Momentan nutze ich die ExpertRemove() Funktion.
So wird bei ausführen wenigstens der Hinweis : EP 2 11:18:25.253 Tester expert removed self when OnTick called
in die Log des Agents geschrieben und ich weiß das es interne Fehler gab.
Moderne Methode dafür ?
Ganz verstehe ich (auf MT4!!) nicht was Du willst!
Auch der Optimierer 'macht' ein FileWrite() zumindest in OnTester() - weil dort schreibe ich meine csv-files.
Allerdings musst Du das File öffnen und zum Ende 'seeken' und dann deine Zeile(n) anhängen - aber pass auf, die Files werden schnell sehr groß!!
Sonst erscheinen Fehler eigentlich im Journal-Tab.
Allerdings mit iCustom() aufgerufene Indikatoren, die 'können kein' Print().
Sonst kannst Du alle im Visualmode ablaufen lassen und über Comment() im Chart alles verfolgen. Merk Dir den Zeitpunkt, wann es passiert und starte kurz davor.

- www.mcseboard.de
Ok Carl ich erkläre es etwas genauer.
Es geht rein um die Optimierung. Im normalen ChartModus/Tester kann ich alles Anzeigen lassen.
Da beim Optimierer ja sämtliche Ausgaben gesperrt sind.
Das Problem mit OnTester() ist das sie ja erst nach oder vor dem Tester Pass angesprungen wird. Das meine ich zu mindest. Falls nicht wäre das ja eine Möglichkeit
Ich möchte zum Beispiel in der OnTick() eine Möglichkeit haben Ausgaben zu machen .Um bei Fehlern das Finden zu erleichtern.
Im Debug/Tester Modus ist ja immer nur ein Parameter.set möglich. Es ist ja immer möglich durch falsche Parameter Programmfehler zu erzeugen.
Ok Carl ich erkläre es etwas genauer.
Es geht rein um die Optimierung. Im normalen ChartModus/Tester kann ich alles Anzeigen lassen.
Da beim Optimierer ja sämtliche Ausgaben gesperrt sind.
Das Problem mit OnTester() ist das sie ja erst nach oder vor dem Tester Pass angesprungen wird. Das meine ich zu mindest. Falls nicht wäre das ja eine Möglichkeit
Ich möchte zum Beispiel in der OnTick() eine Möglichkeit haben Ausgaben zu machen .Um bei Fehlern das Finden zu erleichtern.
Im Debug/Tester Modus ist ja immer nur ein Parameter.set möglich. Es ist ja immer möglich durch falsche Parameter Programmfehler zu erzeugen.
Wenn Dein EA sonst läuft nur mit manchem Setting nicht - wäre das doch der Weg.
Versuch einmal etwas (Setup) inOnInit() in ein File zu schreiben (mit \n am Anfang!) und die Zeile in OnTester() zu ergänzen und abzuschließen - stürzt er ab fehlt der letzte Teil.
Im Notepad++ kannst Du dann nach Buchstaben ab Stelle n sortieren und schon solltest Du alles haben, was Du suchst?
(Nicht getestet!)
Wenn Dein EA sonst läuft nur mit manchem Setting nicht - wäre das doch der Weg.
Versuch einmal etwas (Setup) inOnInit() in ein File zu schreiben (mit \n am Anfang!) und die Zeile in OnTester() zu ergänzen und abzuschließen - stürzt er ab fehlt der letzte Teil.
Im Notepad++ kannst Du dann nach Buchstaben ab Stelle n sortieren und schon solltest Du alles haben, was Du suchst?
(Nicht getestet!)
Ja so in der Art. ist so zwar etwas umfangreicher aber machbar.
Danke für den Tipp

- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Hat jemand eine Idee wie ich Fehler bei der Optimierung behandele .
Da die Print() Funktion ja deaktiviert ist , suche ich eine Möglichkeit um trotzdem eine Ausgabe in die Logdatei des Agents/Tester zu bekommen.
Momentan nutze ich die ExpertRemove() Funktion.
So wird bei ausführen wenigstens der Hinweis : EP 2 11:18:25.253 Tester expert removed self when OnTick called
in die Log des Agents geschrieben und ich weiß das es interne Fehler gab.
Moderne Methode dafür ?