формулы 2
Machen wir uns klar, was in dieser Formel steckt:
- N - die Anzahl der vollständig geöffneten und geschlossenen Handelspositionen während des gesamten Backtests oder Handelsabschnitts.
- B(i) - der Wert der Saldenlinie nach der entsprechenden geschlossenen Position "i".
- L(i) - die Linie, die von Null bis zum letzten Bilanzpunkt (Endbilanz) gezogen wird.
Es scheint fast Sharpe zu sein:
//--- Berechnung der Logarithmen von Inkrementen aus dem Eigenkapital-Array for(int i = 1; i < m_bars_counter; i++) { //--- nur hinzufügen, wenn sich das Eigenkapital geändert hat if(m_equities[i] != prev_equity) { log_return = MathLog(m_equities[i] / prev_equity); // Logarithmus der Schrittweite aver += log_return; // durchschnittlicher Logarithmus der Inkremente AddReturn(log_return); // Füllen der Logarithmenmatrix aus Inkrementen counter++; // Ertragszähler } prev_equity = m_equities[i]; } //--- wenn nicht genügend Werte für die Berechnung der Sharpe-Ratio vorhanden sind, wird 0 zurückgegeben if(counter <= 1) return(0); //--- Durchschnittswert des Logarithmus der Schrittweite aver /= counter; //--- Berechnung der Standardabweichung for(int i = 0; i < counter; i++) std += (m_returns[i] - aver) * (m_returns[i] - aver); std /= counter; std = MathSqrt(std); //--- Sharpe Ratio für den aktuellen Zeitrahmen double sharpe = aver / std;

- www.mql5.com
Es gibt etwas Ähnliches, aber nur auf den ersten Blick. Jeder vermisst das Modell des Bilanzwachstums. Wenn die Steigung des Bilanzwachstums ständig sinkt (die zweite Ableitung der Bilanzkurve ist negativ), dann ist ein solches Modell nicht zu bevorzugen, weil es bald negativ werden kann. Es geht also darum, die Kurven auszuwählen, die grafisch am vielversprechendsten aussehen.
Es gibt Ähnlichkeiten, aber nur auf den ersten Blick. Jeder vermisst das Modell des Saldenwachstums. Wenn die Steigung des Saldenwachstums ständig abnimmt (die zweite Ableitung der Saldenkurve ist negativ), ist ein solches Modell nicht zu bevorzugen, da es bald in den negativen Bereich gehen kann. Es geht also darum, die Kurven auszuwählen, die grafisch am vielversprechendsten aussehen.
Der Sharpe-Algorithmus für absteigende Kurven wird einen negativen Wert ergeben. Ich habe Ihnen nur eine Analogie gegeben, es hat keinen Sinn, Sharpe.... zu diskutieren.
Beispiele aus meiner Erfahrung.
- Kriterium "schöne Kurve" - besteht nicht OOS.
- Kriterium "hässliche Kurve" - besteht OOS, während sich die Kurve selbst als schön erweist.
- Null-Provision - gilt nicht als OOS.
- Provision ist festgelegt - besteht OOS.
D.h. es stellt sich heraus, dass bei der Optimierung auf Schönheit die Anpassungskomponente hoch ist. Wenn etwas Sinnvolles gefunden wird, sieht es schön aus.
Deshalb suche ich selbst nicht nach Schönheit. Ich verlasse mich mehr auf die Anzahl der Angebote und den Algorithmus des TS-Kerns. Das Ziel ist es, Schönheit ohne Schönheitskriterien zu erhalten. In der Regel geht diese Variante OOS.
ZY Die Variante mit einer Provision ist interessanter (aber in der Regel umgekehrt: weniger Provision - mehr Wahrscheinlichkeit, ein Muster zu finden). Sie reduziert zwar die Anzahl der Transaktionen (statistische Signifikanz), erhöht aber die Wahrscheinlichkeit einer erfolgreichen Suche.
Der Sharpe-Algorithmus für abwärts gerichtete Kurven ergibt einen negativen Wert. Dies ist nur eine Analogie, es hat keinen Sinn, Sharpe..... zu diskutieren.
Beispiele aus meiner Erfahrung.
- Das Kriterium "schöne Kurve" - erfüllt das OOS-Kriterium nicht.
- Das Kriterium "hässliche Kurve" - besteht OOS, aber die Kurve selbst ist schön.
- Null-Provision - gilt nicht als OOS.
- Kommissionssatz - besteht OOS.
Es zeigt sich also, dass die Anpassungskomponente hoch ist, wenn die Optimierung auf Schönheit ausgerichtet ist. Wenn etwas Sinnvolles gefunden wird, sieht es schön aus.
Deshalb suche ich selbst nicht nach Schönheit. Ich verlasse mich mehr auf die Anzahl der Angebote und den Algorithmus des TS-Kerns. Das Ziel ist es, Schönheit ohne Schönheitskriterien zu erhalten. In der Regel geht diese Variante OOS.
ZY Die Variante mit einer Provision ist interessanter (aber in der Regel umgekehrt: weniger Provision - mehr Wahrscheinlichkeit, ein Muster zu finden). Sie reduziert zwar die Anzahl der Transaktionen (statistische Signifikanz), erhöht aber die Wahrscheinlichkeit einer erfolgreichen Suche.
Nun, es ist klar, dass es da noch Grenzen gibt. Ich gehe zum Beispiel folgendermaßen vor:
- Ich lege die erforderliche Mindesterwartung in Pips fest (ich berücksichtige nur den Spread, füge aber auch die Kommission und den Swap hinzu, ungefähr).
- Ich lege die erforderliche Mindestanzahl von Trades fest, die ich unter Berücksichtigung der Länge des betrachteten Abschnitts benötige
- Ich stelle den Kurvenanpassungsfaktor ein
Es ist klar, dass es immer noch Grenzen gibt. Das ist meine Arbeitsweise:
- Ich lege die erforderliche Mindesterwartung in Punkten fest (wobei ich nur den Spread berücksichtige, aber auch die Kommission und den Swap hinzurechne, ungefähr).
Ich tue das nicht. Die Regelmäßigkeiten des Marktes hängen nicht von den Handelsbedingungen des Brokers ab. Ich bin dazu geneigt.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Maschinelles Lernen im Handel: Theorie, Muster, Praxis und Algo-Trading
fxsaber, 2023.08.19 11:10 AM
Broker für historische Daten, um nach dem höchsten Gewinnpotenzial zu wählen. Zum Beispiel ist das Potenzial von EURUSD_Broker1 höher als das von EURUSD_Broker2. Dann nehmen Sie EURUSD_Broker1.
Sowohl Majors als auch Crosses können skaliert werden. Aber nicht alle. Trainieren Sie einfach mit jedem von ihnen und sehen Sie sich die Ergebnisse an. Das ist es, was ich mache, grob gesagt.
D.h. es ist logisch, dort zu suchen, wo die Konzentration von "Gold im Stein" höher ist.
- Ich lege die Mindestanzahl von Zügen fest, die ich angesichts der Länge des fraglichen Gebiets benötige.
- Ich passe den Faktor der Kurvenanpassung an.
Ich verstehe den Zusammenhang zwischen dem TS und dem Spread nicht.
- Например, можно обучить ТС, чтобы выдавал PF>2.5. При должном количестве сделок это почти автоматом выдаст красивую кривую
Ich stimme mit dem Rest überein.
.
- Ich verstehe den Zusammenhang zwischen dem TS und dem Spread nicht
Es wäre interessant, viele Kurven auf diese Weise ausgewählt zu sehen (MaxBalance-Kriterium "nicht nach Schönheit").
Dies war das sechste Ergebnis in der entsprechenden opt-Datei. Die ersten fünf sehen schlechter aus.
Ich führe eine kleine Anzahl von GA-Durchläufen durch, damit die Eingabeparameter nicht zu nahe beieinander liegen.
Ich habe den Eindruck, dass es einige Ansätze zum Aufbau eines TS gibt, bei denen das MaxBalance-Kriterium mit einer Begrenzung der Anzahl der Trades von unten immer eine schöne Kurve beim Sample ergibt. In diesem Fall kann ein solcher TS als etwas Rationales angesehen werden, selbst wenn es einen vollständigen Verlust bei OOS gibt. Aber es scheint zweifelhaft, nach Schönheit durch Sharpe, R^2 oder Kriterien in diesem Artikel zu suchen. Vielleicht liege ich falsch.

- 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.
Neuer Artikel Brute-Force-Ansatz zur Mustersuche (Teil VI): Zyklische Optimierung :
In diesem Artikel zeige ich den ersten Teil der Verbesserungen, die es mir ermöglicht haben, nicht nur die gesamte Automatisierungskette für den Handel mit MetaTrader 4 und 5 zu schließen, sondern auch etwas viel Interessanteres zu tun. Von nun an ermöglicht mir diese Lösung, sowohl die Erstellung von EAs als auch die Optimierung vollständig zu automatisieren und die Arbeitskosten für das Finden effektiver Handelskonfigurationen zu minimieren.
Das wichtigste Element der ganzen Idee ist das Interaktionssystem zwischen dem Terminal und meinem Programm. Es handelt sich um einen zyklischen Optimierer mit erweiterten Optimierungskriterien. Die wichtigsten wurden bereits im vorherigen Abschnitt behandelt. Damit das gesamte System funktioniert, benötigen wir zunächst eine Quelle für Kurse, nämlich eines der MetaTrader 5-Terminals. Wie ich bereits im vorigen Artikel gezeigt habe, werden Kurse in eine Datei in einem für mich bequemen Format geschrieben. Dies geschieht mit Hilfe eines EA, der auf den ersten Blick recht seltsam funktioniert:
.
Ich fand es eine interessante und nützliche Erfahrung, mein eigenes Schema für das Funktionieren des EA zu verwenden. Dies ist nur eine Demonstration der Probleme, die ich zu lösen hatte, aber all dies kann auch für Handels-EAs verwendet werden:
Autor: Evgeniy Ilin