Kurze Zusammenfassung
Das Video demonstriert eine zufällige Trading-Strategie, die auf sieben Jahre historischen Daten von 14 verschiedenen Aktien getestet wurde. Die Strategie basiert auf dem Konzept von Tom Basso, dass mit robustem Risikomanagement und Positionsgrößenbestimmung auch zufällige Einstiege profitabel sein können. Der Fokus liegt auf einer soliden Ausstiegsstrategie mit Trailing Stops und dem schnellen Begrenzen von Verlusten. Durch Backtesting mit Python wird gezeigt, wie diese Strategie eine Rendite von 160% erzielen kann.
- Zufällige Einstiege in den Markt, entweder Long oder Short.
- Stop-Loss basierend auf dem ATR (Average True Range), um die Volatilität zu berücksichtigen.
- Trailing Stop, um Gewinne zu maximieren.
- Positionsgröße von 1-5% des aktuellen Kontos.
Einführung in die zufällige Trading-Strategie
Der Sprecher stellt eine Trading-Strategie vor, die auf zufälligen Einstiegen basiert und durch Backtesting mit Python überprüft wurde. Die verwendeten Codes und Daten sind frei verfügbar. Die Strategie wurde von Tom Basso inspiriert, der glaubt, dass ein gutes Risikomanagement wichtiger ist als die Vorhersage von Marktbewegungen.
Regeln der zufälligen Trading-Strategie
Die Strategie beinhaltet das Generieren einer zufälligen Richtung (Long oder Short) für den Markteintritt. Ein Stop-Loss wird basierend auf dem ATR (Average True Range) platziert, um die Marktvolatilität zu berücksichtigen. Ein Trailing Stop wird verwendet, um Gewinne zu maximieren, und die Positionsgröße wird auf einige Prozent des Kontos festgelegt. Die Strategie zielt darauf ab, Gewinne laufen zu lassen und Verluste schnell zu begrenzen.
Python-Code und Backtesting-Ergebnisse
Der Sprecher zeigt den Python-Code, der für das Backtesting verwendet wurde. Er verwendet Bibliotheken wie Pandas und TA-Lib zur Berechnung des ATR. Der Code liest CSV-Dateien mit historischen Daten, generiert zufällige Handelssignale und berechnet den ATR. Die Handelssignale werden zufällig generiert, wobei zwischen Long- und Short-Positionen unterschieden wird. Die ATR wird verwendet, um die Stop-Loss-Distanz zu bestimmen.
Funktionen zur Datenverarbeitung und Signalerzeugung
Es werden Funktionen vorgestellt, die CSV-Dateien einlesen, bereinigen und in DataFrames umwandeln. Eine Funktion generiert zufällige Handelssignale (Long oder Short). Der ATR wird mit der TA-Lib-Bibliothek berechnet, wobei ein Standardwert von 10 für die Länge verwendet wird. Eine weitere Funktion fügt dem DataFrame Spalten für die Signalpositionen hinzu, um diese später auf Candlestick-Charts darzustellen.
Anwendung der Funktionen und Datenvisualisierung
Die zuvor definierten Funktionen werden auf die eingelesenen Daten angewendet. Der ATR und die Handelssignale werden zu den DataFrames hinzugefügt. Die Verteilung der Signale wird visualisiert, um sicherzustellen, dass keine bevorzugte Richtung vorliegt. Die Candlestick-Charts zeigen die zufällige Verteilung der Long- und Short-Signale.
Backtesting mit Backtesting.py
Das Backtesting erfolgt mit der Backtesting.py-Bibliothek. Eine Signalfunktion gibt die Handelssignale aus dem DataFrame zurück. Eine benutzerdefinierte Strategieklasse erbt von der Strategieklasse von Backtesting.py. Die Positionsgröße wird auf 1% des Kontos festgelegt, und das Stop-Loss-Verhältnis zum ATR wird auf 3 gesetzt.
Implementierung der Strategie und des Trailing Stops
Die Strategie implementiert Long- und Short-Positionen basierend auf den Handelssignalen. Wenn ein Long-Signal vorliegt und keine offene Position vorhanden ist, wird eine Kaufposition mit einem Stop-Loss platziert, der auf dem ATR basiert. Ein Trailing Stop wird verwendet, um den Stop-Loss bei steigenden Kursen nachzuziehen. Das gleiche Prinzip gilt für Short-Positionen.
Ergebnisse des Backtestings und Optimierung
Die Ergebnisse des Backtestings werden analysiert. Die aggregierten Renditen betragen 42%, der maximale Drawdown liegt bei -6,6%, und die Gewinnrate beträgt 46%. Der durchschnittliche Trade-Return beträgt 1,62%. Es wird die Möglichkeit erwähnt, die Strategie durch Erhöhung der Positionsgröße oder des Hebels zu optimieren, was jedoch das Risiko erhöht.
Experimente mit Risiko und Hebel
Es werden Experimente mit höheren Kommissionen, einer Positionsgröße von 5% und einem Hebel von 1:10 durchgeführt. Eine höhere Positionsgröße führt zu höheren Renditen, aber auch zu einem höheren maximalen Drawdown. Ein höherer Hebel erhöht ebenfalls das Risiko. Der Sprecher kehrt zu sichereren Einstellungen zurück, um das Risikomanagement zu verbessern.
Anpassung und Diversifizierung des Portfolios
Die Ergebnisse mit einer Positionsgröße von 2% und einem Hebel von 1:5 werden gezeigt. Der maximale Drawdown beträgt -12%, was als akzeptabel angesehen wird. Die Equity-Kurven der einzelnen Aktien werden visualisiert, und es wird die Möglichkeit erwähnt, ungeeignete Aktien aus dem Portfolio zu entfernen. Es wird betont, dass Diversifizierung wichtig ist, um Verluste durch Gewinne anderer Aktien auszugleichen.

