Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
2 Ausgabe.
Print(SingleTesterCache.Summary.ToString()) Befehl;
Ich habe es in anderen Expert Advisors etc. getestet und es gibt einige falsche Statistiken aus.
Variante 1
Variante 2
2 Problem.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Fehler, Bugs, Fragen
Renat Fatkhullin, 2021.01.01 00:14
Ich vermute, dass es nicht funktioniert, weil der Code nicht korrekt vom Skript zum Expert Advisor übertragen wurde.
Ich werde Ihnen ein Beispiel schicken.
Ablauf.
1. ein beliebiger Expert Advisor wird genommen - ich habe wiederholt mit dem Standard Movin' Averag getestet.
2. Ich setze die Einschlüsse an den Anfang:
3. in OnDeinit füge ich dies aus dem 2. Skript von hier ein: https://www.mql5.com/de/code/27611:
3.2 Ich habe das gleiche "irgendwie" in dieser Form versucht
const SINGLETESTERCACHE SingleTesterCache; // Загоняем ее в соответствующий объект. double Balance[]; double Equity[]; Print(SingleTesterCache.Header.ToString()); // Вывели заголовок одиночного прохода. Print(SingleTesterCache.Summary.ToString()); // Статистику. Print(SingleTesterCache.Summary.ToString()); // Статистику. Print(SingleTesterCache.Inputs); // Входные параметры.Vielleicht nehme ich an, dass es nicht funktioniert, weil der Code nicht korrekt vom Skript zum Expert Advisor übertragen wurde.
Ich werde jetzt ein Beispiel senden.
Es wäre besser mit fertigen Dateien. Ich verstehe nicht, was Sie brauchen, um zu bekommen.
Vorzugsweise in vorgefertigten Dateien. Und ich verstehe nicht, was Sie brauchen, um zu bekommen.
Ja, ich wollte die Statistik des letzten Einzellaufs abrufen und in eine Datei schreiben, z.B. wie du hier im Multitester-Thema geschrieben hast. https://www.mql5.com/ru/forum/318305/page23#comment_19934192.
Das geht, ohne überall Code in OnDeinit EA einzufügen.
Tatsächlich werden nicht einmal alle Statistiken benötigt, sondern nur ein paar Parameter. Zum Beispiel, MQLInfoString(MQL_PROGRAM_NAME),TesterStatistics(STAT_SHARPE_RATIO).
Ja, ich wollte die Statistik des letzten Einzellaufs herausziehen und in eine Datei schreiben, zum Beispiel, wie Sie hier im Multitester-Thema geschrieben haben. https://www.mql5.com/ru/forum/318305/page23#comment_19934192
Um nicht überall Code in OnDeinit EA einzufügen.
Tatsächlich werden nicht einmal alle Statistiken benötigt, sondern nur ein paar Parameter. Zum Beispiel, MQLInfoString(MQL_PROGRAM_NAME),TesterStatistics(STAT_SHARPE_RATIO).
Wahrscheinlich können Sie versuchen, Beispiele aus der Lieferung oder Diskussionen auszuführen.
Ich denke, Sie könnten versuchen, die Beispiele aus der Lieferung oder den Diskussionen auszuführen.
Ich habe noch keine solche Funktion oder etwas ähnliches gefunden, um Passstatistiken in einer csv-Datei aufzuzeichnen. Hmm, auch in Bibliotheken habe ich keine passenden Funktionen gefunden. Ich werde nach weiteren suchen.
Ich sehe einen solchen Block, aber wie man die notwendigen Informationen daraus abruft, habe ich nicht verstanden
string ToString( void ) const
{
return(this.Header.expert_path[] + "\n; " +
this.Header.symbol[] + "\n; " +
::TimeToString(this.Header.date_from, TIME_DATE) + " - " + ::TimeToString(this.Header.date_to, TIME_DATE) + "\n; " +
::DoubleToString(this.Summary.TesterStatistics(STAT_PROFIT), 0) + ", " + " +
::DoubleToString(this.Summary.TesterStatistics(STAT_TRADES), 0) + ", " + ::DoubleToString(this.Summary.TesterStatistics(STAT_TRADES), 0) + ", " +
::DoubleToString(this.Summary.TesterStatistics(STAT_PROFIT_FACTOR), 2) + ", " + ::DoubleToString(this.Summary.TesterStatistics(STAT_PROFIT_FACTOR), 2) + ", " +
::DoubleToString(this.Summary.TesterStatistics(STAT_EXPECTED_PAYOFF), 2) + ", -" + ::DoubleToString(this.Summary.TesterStatistics(STAT_EXPECTED_PAYOFF), 2) + ", -" +
::DoubleToString(this.Summary.TesterStatistics(STAT_EQUITY_DD), 2));
}
Ich sehe einen solchen Block, aber ich verstehe nicht, wie ich die erforderlichen Informationen aus ihm abrufen kann
Jedes Mal, wenn ich mir meinen Code ansehe, als wäre es der von jemand anderem, kann ich mich überhaupt nicht daran erinnern.
Deshalb kann ich Ihnen auch keinen Tipp geben.
Jedes Mal, wenn ich mir meinen Code ansehe, als wäre es der von jemand anderem, erinnere ich mich dummerweise überhaupt nicht mehr daran.
Deshalb kann ich es dir nicht sagen.
Ich verstehe, je mehr man lernt, desto mehr versteht man. Soweit ich weiß, können nicht alle Funktionen in der aktuellen Version der Bibliothek enthalten sein, d. h. es kann etwas fehlen, um die Aufgabe zu erfüllen. Die Hauptsache ist zu verstehen, ob es möglich ist oder nicht)
Die Hauptsache ist, dass man versteht, ob es möglich ist oder nicht)
https://www.mql5.com/de/code/viewcode/27611/229701/exptradesummarysingle.mqh