ARTIKEL 23
Backtesting mit QuantConnect: Aufbau, Daten und Auswertung
SEO-Titel: Backtesting mit QuantConnect – Anleitung und Methodik
Meta-Description: Backtesting mit QuantConnect: Daten, LEAN Engine, Brokerage-, Gebühren-, Fill- und Slippage-Modelle sowie robuste Auswertung von Handelsstrategien.
URL-Slug: /blog/quantconnect-backtesting/
Haupt-Suchbegriff: QuantConnect Backtesting
Weitere Suchbegriffe: LEAN Backtest, Trading Strategie testen, QuantConnect Tutorial, Backtesting Python
Was bedeutet Backtesting in QuantConnect?
Beim Backtesting wird ein programmierter Handelsalgorithmus auf historische Daten angewendet.
Die zentrale Frage lautet:
Wie hätte sich dieses exakt definierte Handelssystem unter den historischen Bedingungen des Testzeitraums verhalten?
QuantConnect verwendet dafür die LEAN Engine.
Die Plattform stellt dabei nicht nur historische Daten bereit, sondern simuliert unter anderem:
- Wertpapiere,
- Portfolios,
- Orders,
- Gebühren,
- Fills,
- Margin,
- Slippage.
QuantConnect beschreibt Backtesting selbst als Simulation eines Handelsalgorithmus auf historischen Daten.
Der Backtest beginnt mit der Hypothese
Vor dem Programmieren sollte feststehen, was überhaupt getestet werden soll.
Beispiel:
Aktien mit hohem mittelfristigem Momentum besitzen innerhalb eines liquiden Aktienuniversums eine positive Renditeprämie.
Danach werden erst:
- Daten,
- Signal,
- Portfolio,
- Rebalancing,
- Kosten
definiert.
QuantConnect ist nicht dazu gedacht, eine fehlende Researchfrage durch massenhaftes Testen beliebiger Parameter zu ersetzen.
Start- und Enddatum
Ein historischer Backtest benötigt einen definierten Zeitraum.
In Python kann dieser beispielsweise festgelegt werden mit:self.set_start_date(2015, 1, 1) self.set_end_date(2025, 12, 31)
Diese Einstellungen gelten für Backtests; im Live-Modus werden historische Start- und Enddaten naturgemäß anders behandelt.
Startkapital
Auch das simulierte Kapital muss definiert werden.
Die Kapitalgröße beeinflusst unter anderem:
- Positionsgrößen,
- Margin,
- Skalierbarkeit,
- potenziellen Market Impact.
Ein Backtest mit 100.000 Euro kann nicht automatisch auf 100 Millionen Euro skaliert werden.
Datenabonnements
Der Algorithmus muss festlegen, welche Daten benötigt werden.
Beispiel:self._symbol = self.add_equity( "SPY", Resolution.DAILY ).symbol
Bei komplexeren Strategien können mehrere Assets oder dynamische Universen verwendet werden.
Datenauflösung
Die Datenfrequenz sollte der Strategie entsprechen.
Eine tägliche Strategie benötigt möglicherweise nur Tagesdaten.
Ein Intraday-System kann Minuten-, Sekunden- oder Tickdaten benötigen.
Zu hohe Datenauflösung kann:
- Rechenaufwand erhöhen,
- Rauschen verstärken,
- unnötige Komplexität erzeugen.
Benchmark
Ein Backtest sollte möglichst nicht isoliert betrachtet werden.
Eine Benchmark kann helfen zu beurteilen, ob die Strategie tatsächlich Mehrwert erzeugt oder lediglich allgemeines Marktexposure repliziert.
Beispielsweise kann eine Long-Only-US-Aktienstrategie mit einem breiten Aktienindex verglichen werden.
Brokerage Model
Ein wichtiger Bestandteil realistischer Simulation ist das Brokerage Model.
Es kann unter anderem beeinflussen:
- unterstützte Ordertypen,
- Marginannahmen,
- Transaktionskosten,
- Marktregeln.
QuantConnect erlaubt die Auswahl von Brokerage-Modellen, um Backtests näher an die spätere Handelsumgebung anzupassen.
Fill Models
Im Backtest existiert kein realer Broker, der die Order tatsächlich ausführt.
LEAN benötigt deshalb Regeln, die bestimmen, wann und zu welchem Preis eine historische Order als ausgeführt gilt.
Das ist Aufgabe des Fill Models.
Unrealistisch optimistische Fill-Annahmen können einen Backtest erheblich verbessern.
LEAN stellt je nach Anlageklasse unterschiedliche Fill-Modelle bereit.
Fee Models
Gebühren wirken unmittelbar auf die Strategieperformance.
Besonders betroffen sind Systeme mit hohem Turnover.
Ein realistischer Backtest sollte deshalb berücksichtigen:
- Brokergebühren,
- Börsengebühren,
- gegebenenfalls regulatorische Kosten.
Slippage Models
Slippage beschreibt die Differenz zwischen theoretischem und realistisch erreichbarem Ausführungspreis.
Bei liquiden langfristigen Strategien kann sie relativ klein sein.
Bei:
- kurzfristigen Strategien,
- illiquiden Assets,
- größeren Orders
kann sie entscheidend sein.
Margin und Buying Power
Leveraged Strategien benötigen eine realistische Margin-Modellierung.
Ohne diese könnten Backtests Positionen eingehen, die in einem realen Brokerage-Konto gar nicht zulässig wären.
Das Brokerage- und Buying-Power-Modell sollte deshalb zur geplanten Live-Umgebung passen.
Corporate Actions
Aktienbacktests müssen unter anderem berücksichtigen:
- Splits,
- Dividenden,
- Symboländerungen.
LEAN besitzt eigene Modelle für Wertpapiere und deren historische Identität.
Das reduziert viele technische Fehler, ersetzt aber nicht die methodische Prüfung des verwendeten Datenuniversums.
Universe Selection
Viele quantitative Strategien wählen dynamisch aus einem größeren Anlageuniversum.
Beispiele:
- größte Unternehmen,
- liquide Aktien,
- Faktor-Rankings,
- fundamentale Kriterien.
Ein sauberer Backtest muss sicherstellen, dass die historischen Auswahlentscheidungen tatsächlich mit damals verfügbaren Informationen getroffen werden.
Warm-up
Indikatoren und Modelle benötigen häufig vergangene Daten.
Beispielsweise kann ein 200-Tage-Moving-Average am ersten Backtesttag nicht aus nur einem Datenpunkt berechnet werden.
Warm-up kann verwendet werden, damit Indikatoren beim eigentlichen Handelsbeginn bereits aufgebaut sind.
Ergebnisanalyse
Nach dem Backtest sollten nicht nur Gesamtrenditen betrachtet werden.
Interessant sind beispielsweise:
- CAGR,
- Sharpe Ratio,
- Sortino Ratio,
- Maximum Drawdown,
- Volatilität,
- Trefferquote,
- Turnover,
- Gebühren,
- Anzahl Trades.
Eine einzelne Kennzahl reicht nicht zur Beurteilung.
Die Equity-Kurve
Eine glatte Equity-Kurve kann psychologisch überzeugend wirken.
Sie sollte aber niemals als Qualitätsbeweis dienen.
Zu prüfen ist:
- Wie viele Trades erzeugten den Gewinn?
- Gibt es einzelne außergewöhnliche Perioden?
- Funktioniert die Strategie in verschiedenen Regimen?
- Wie hoch ist die Parameterempfindlichkeit?
Out-of-Sample
Ein QuantConnect-Backtest sollte in einen umfassenderen Validierungsprozess eingebettet sein.
Beispielsweise:
Researchperiode
→ Strategie entwickeln
Out-of-Sample
→ unverändert testen
Walk-Forward
→ mehrere historische Entwicklungs-/Testzyklen
Dies verhindert nicht jedes Overfitting, erhöht aber die methodische Qualität.
Transaktionskosten-Stress
Ein sinnvoller Robustheitstest besteht darin, Kosten bewusst schlechter anzunehmen.
Beispiel:
Originalannahme:
5 Basispunkte
Stress-Test:
10 oder 15 Basispunkte
Wenn die gesamte Strategie dadurch zusammenbricht, besitzt sie möglicherweise nur eine geringe wirtschaftliche Sicherheitsmarge.
Parameterrobustheit
Angenommen, ein Modell funktioniert perfekt mit 97 Tagen, aber nicht mit 90 oder 105 Tagen.
Das ist problematisch.
Besser wäre ein stabiler Bereich.
QuantConnect erleichtert das Durchführen verschiedener Simulationen.
Die Möglichkeit vieler Backtests sollte allerdings nicht zum unkontrollierten Data Mining verleiten.
Lokales Backtesting
LEAN kann auch lokal ausgeführt werden.
Die LEAN CLI unterstützt lokale Backtests in containerisierten Umgebungen.
Das kann beispielsweise sinnvoll sein für:
- eigene Entwicklungsworkflows,
- lokale Daten,
- Debugging,
- Automatisierung.
Backtesting ist keine Live-Garantie
Im Backtest werden Fills simuliert.
Im Live-Betrieb werden Orders tatsächlich an die Brokerage geschickt.
Die Ausführung ist dort asynchron und hängt vom realen Markt sowie der Brokerage ab.
Daher gilt:
Backtestperformance ≠ Live-Performance
Ein sinnvoller QuantConnect-Validierungsprozess
1. Hypothese
2. sauberer Basis-Backtest
3. Kostenmodell
4. In-Sample/Out-of-Sample
5. Parameterrobustheit
6. Walk-Forward
7. Monte Carlo / Stress Tests
8. Paper Trading
9. kleiner Live-Test
10. Monitoring
Fazit
QuantConnect stellt mit LEAN eine leistungsfähige Umgebung für historische Simulationen bereit.
Die eigentliche Qualität eines Backtests entsteht aber nicht aus der Plattform.
Sie entsteht aus der Methodik.
Ein belastbarer QuantConnect-Backtest sollte:
korrekte Daten + klare Regeln + realistische Kosten + robuste Validierung + nachvollziehbare Risikoannahmen
kombinieren.
Weiterführende Quellen
- QuantConnect Documentation: Backtesting
- QuantConnect Documentation: Reality Modeling
- QuantConnect Documentation: Brokerages
- QuantConnect Documentation: Historical Data
Passendes Fachbuch
Handelssysteme in QuantConnect von Olaf Sund.
Ergänzende Fachbücher
- Handelssysteme
- Von der Idee zum Tradingsystem
Weiterführende Beiträge
- Backtesting erklärt
- QuantConnect mit Python
- Walk-Forward-Analyse
- Overfitting im Trading