Diskussion zum Artikel "Untersuchung von Regressionsmodellen für kausale Inferenz und algorithmischen Handel"

 

Neuer Artikel Untersuchung von Regressionsmodellen für kausale Inferenz und algorithmischen Handel :

Der Artikel untersucht die Möglichkeit, Regressionsmodelle im algorithmischen Handel einzusetzen. Regressionsmodelle ermöglichen im Gegensatz zur binären Klassifizierung die Erstellung flexiblerer Handelsstrategien durch die Quantifizierung vorhergesagter Kursänderungen.

Die binäre Klassifizierung ist eine grundlegende Aufgabe des maschinellen Lernens, bei der das Ziel darin besteht, Eingabedaten in eine von zwei verschiedenen Kategorien oder Klassen zu klassifizieren. Im Kontext eines Forex-Handelsbots bedeutet dies normalerweise die Vorhersage eines „Kauf“- (dargestellt als 0) oder „Verkauf“-Signals (dargestellt als 1). Dieser Ansatz reduziert die komplexe Marktdynamik auf eine einfache Richtungsentscheidung.

Die bedeutendste inhärente Einschränkung der binären Klassifizierung für den quantitativen Handel ist ihre Unfähigkeit, das Ausmaß oder die Intensität einer vorhergesagten Kursbewegung zu quantifizieren. Ein binärer Klassifikator gibt nur an, ob sich der Kurs voraussichtlich nach oben oder unten bewegen wird, ohne Informationen darüber zu liefern, wie stark er sich voraussichtlich ändern wird. Dieser Mangel an Granularität schränkt die Entscheidungsfindung im Handel grundlegend ein.

Die Genauigkeit der Vorhersagen des Klassifikators allein berücksichtigt nicht das Ausmaß der Änderung und ist daher für den Handel nicht sehr nützlich. Dieser Aspekt ist entscheidend, da er verdeutlicht, dass eine hohe Richtungsgenauigkeit (z. B. die korrekte Vorhersage der Richtung in 70 % der Fälle) nicht automatisch zu profitablem Handel führt. 

Wichtig ist die Beobachtung, dass eine hohe Richtungsgenauigkeit keine Rentabilität garantiert. Sie können zum Beispiel in 30 % der Fälle richtig liegen und profitabel sein, oder Sie können in 70 % der Fälle richtig liegen und unprofitabel sein. Dies zeigt, dass das Nettoergebnis einer Handelsstrategie durch die Höhe des Gewinns bei gewinnbringenden Trades im Vergleich zur Höhe des Verlusts bei verlustbringenden Trades bestimmt wird und nicht einfach durch den Prozentsatz der Gewinne.


Autor: dmitrievsky

 
Meiner Meinung nach besteht bei deiner Methode die Gefahr einer Überanpassung, da die Testdaten in den Modellauswahlprozess einfließen. Am besten wäre es, zwei Tests mit ausreichend vielen Datensätzen durchzuführen: einen zur Modellauswahl und einen zur Überprüfung des ausgewählten optimalen Modells, wobei der zweite Test nicht in die Modellauswahl einfließt.
 

Forum zu Trading, automatisierten Handelssystemen und dem Testen von Handelsstrategien

Diskussion zum Artikel „Entwicklung eines Multi-Währungs-Expert Advisors (Teil 25): Einbindung einer neuen Strategie (II)“

Rashid Umarov, 05.07.2025, 12:58 Uhr

Schreibt bitte auf Russisch im russischen Bereich. Alle Kommentare zu den Artikeln werden in jedem Sprachbereich automatisch übersetzt.

Außerdem gibt es hier die Schaltfläche „Automatische Übersetzung“, falls Sie den Artikel auf Englisch lesen möchten – genau hier.


[Gelöscht]  
zhainan #:
Meiner Meinung nach besteht bei deiner Methode, bei der Testdaten in den Modellauswahlprozess einbezogen werden, die Gefahr einer Überanpassung. Am besten ist es, zwei ausreichend große Datensätze für zwei Tests zu verwenden: einen zur Modellauswahl und einen zur Validierung des ausgewählten optimalen Modells, der nicht in die Modellauswahl einfließt.

Man kann es auch so machen. Im Grunde findet hier in der Trainingsphase keine Modellauswahl statt. Es werden lediglich Schwellenwerte festgelegt und das Modell anschließend anhand neuer Daten überprüft.

 
马克西姆·德米特里耶夫斯基 #:

Das ist möglich. Tatsächlich findet während der Trainingsphase hier keine Modellauswahl statt. Man legt lediglich einen Schwellenwert fest und testet das Modell anschließend an neuen Daten.

Maxim Dmitrievsky #:

Das ist möglich. Tatsächlich findet während der Trainingsphase hier keine Modellauswahl statt. Man legt lediglich einen Schwellenwert fest und testet das Modell anschließend an neuen Daten.

Das stimmt in etwa, da in der Schleife anhand des Schwellenwerts die Modelle beibehalten werden, die im Testdatensatz eine gute Leistung zeigen. Bei mir ist es nicht viel anders. Die Methode, die ich derzeit verwende, besteht darin, mehrere Handelsinstrumente sowie Daten aus den Jahren 2015 bis 2020 als Trainingsdaten zu nutzen, um weitere Marktmuster einzubeziehen und eine einheitliche Skalierung zu gewährleisten.anschließend die Daten der Zielhandelsinstrumente aus den Jahren 2020 bis 2022 zur Modellauswahl heranzuziehen und schließlich die Daten der Zielhandelsinstrumente von 2022 bis 2025 für die abschließende Überprüfung zu verwenden.
[Gelöscht]  
zhainan #:
So in etwa – da es sich um ein Modell handelt, das in einer Schleife anhand von Schwellenwerten die in der Teststichprobe besonders gut abschneidenden Modelle beibehält, gibt es bei mir kaum Unterschiede. Die Methode, die ich derzeit verwende, besteht darin, mehrere Handelsprodukte sowie Daten aus den Jahren 2015 bis 2020 als Trainingsdaten zu nutzen, um weitere Marktmuster einzubeziehen und eine einheitliche Skalierung zu gewährleisten.anschließend die Daten der Zielhandelsinstrumente aus den Jahren 2020 bis 2022 zur Modellauswahl heranzuziehen und schließlich die Daten der Zielhandelsinstrumente von 2022 bis 2025 für die abschließende Validierung zu verwenden
Forward-Modelle spielen bei der Modellauswahl in diesem Artikel keine Rolle. Der Artikel befasst sich mit den möglichen Vorteilen von Regressionsmodellen gegenüber Klassifikatoren. Es ist überraschend, dass noch niemand zuvor etwas Ähnliches darüber geschrieben hat. Wenn ich aus dem Urlaub zurückkomme, werde ich weitere Artikel zu diesem Thema verfassen, sofern Interesse daran besteht.
 
Im beigefügten Python-Code fehlt ein Modul mit dem Namen „bots“.
[Gelöscht]  
Omega J Msigwa #:
Im beigefügten Python-Code fehlt ein Modul namens „bots“.

Das ist ein Ordner, den Sie selbst anlegen können. Oder passen Sie die Importpfade an den Speicherort Ihrer Module an.

Oder lesen Sie einen Einführungskurs zum Importieren von Modulen – dort wird alles ganz einfach erklärt.

 

Hallo Maxim, ich habe die Dateien heruntergeladen, das Training mit der vorhandenen CSV-Datei durchgeführt und den erstellten EA ausgeführt, dabei habe ich festgestellt, dass das Ergebnis von dem des im ZIP-Ordner enthaltenen EAs abweicht.

Ich habe die Parameter überprüft, konnte aber keinen Grund dafür finden.

Könntest du mir bitte sagen, woran das liegt?

Vielen Dank

[Gelöscht]  
zhuifeng123 #:

Hallo Maxim, ich habe die Dateien heruntergeladen, das Training mit der vorhandenen CSV-Datei durchgeführt und den erstellten EA ausgeführt. Dabei habe ich festgestellt, dass das Ergebnis von dem des im ZIP-Ordner enthaltenen EAs abweicht.

Ich habe die Parameter überprüft, konnte aber keinen Grund dafür finden.

Könntest du mir bitte sagen, woran das liegt?

Vielen Dank

Hallo. Zeigen Sie mir bitte die Unterschiede, es ist so schwer zu erraten, worum es geht.

 
Maxim Dmitrievsky #:

Hallo. Zeig mir doch mal, worin die Unterschiede bestehen – es ist so schwer zu erraten, worüber wir hier sprechen.

Ich verwende „causal_regression_orig.py“, um eine „ea“-Header-Datei zu erstellen, und kompiliere anschließend „ea“.

Das Ergebnis ist das Bild „test_result“ unten.

Es gibt so viel weniger Trades als in dem von dir geposteten Beispiel.

Was ist also der Unterschied zwischen diesen beiden?

Dateien:
src.zip  2372 kb