597 / 736BT

Backtesting

Historische Prüfung einer Strategie

Backtesting simuliert vorab beschriebene Regeln anhand historischer Daten. Das Ergebnis hängt davon ab, wann Informationen verfügbar waren, welche Daten ausgewählt wurden sowie welches Ausführungsmodell und welche Kosten gelten. Historischer Gewinn ist weder ein tatsächlich ausgeführtes Geschäft noch eine Garantie künftiger Erträge.

Backtesting ist eine historische Simulation von Handels- oder Entscheidungsregeln mit ausdrücklich festgelegten Daten, zeitlicher Reihenfolge und Ausführungsannahmen. Damit lässt sich das Verhalten einer Regel in einer vergangenen Stichprobe untersuchen; die Aussagekraft hängt jedoch vom Aufbau des gesamten Tests ab.

Backtesting spielt Regeln anhand historischer Daten durch und berechnet ihr Ergebnis unter den gewählten Annahmen. Bailey und seine Mitautoren beschreiben es als historische Simulation einer algorithmischen Strategie und weisen zugleich auf das Risiko falscher Entdeckungen hin. Unsere redaktionelle Abgrenzung: Das Ergebnis gehört zu einer bestimmten Version der Regeln, Daten und des Ausführungsmodells. Es belegt nicht, dass jemand diese Geschäfte tatsächlich durchgeführt hat. Eine reproduzierbare Berechnung kann einen Fehler oder eine ungeeignete Idee aufdecken, verwandelt die Vergangenheit aber allein nicht in eine verlässliche Vorhersage. [1]

QuantConnect beschreibt eine Verzerrung, bei der eine Simulation zukünftige Informationen verwendet, etwa Rechnungslegungsdaten vor ihrer Veröffentlichung oder spätere Korrekturen dieser Daten. Unsere eigene zeitliche Vorgabe verlangt für jede Eingabe den Zeitpunkt ihrer Verfügbarkeit, nicht nur das Datum des Zeitraums, auf den sie sich bezieht. Ein Signal aus einer abgeschlossenen Kerze darf ohne weitere Annahme keinen Handel zu einem nicht mehr nutzbaren Preis erhalten. In unserem Beispiel werden vorherige Schlusskurse erst für die folgende Periode verwendet, und das Modell legt deren Ausführung zum Eröffnungskurs ausdrücklich fest. [2]

QuantConnect warnt davor, ausschließlich Wertpapiere zu testen, die bis zum Ende des Zeitraums überlebt haben, und die heutige Indexzusammensetzung rückwirkend anzuwenden. Unsere allgemeinere Frage lautet, ob der historische Datensatz auch damals verfügbare Instrumente enthält, die später verschwunden sind. Fehlende Daten, Methodenänderungen und die Marktauswahl müssen dokumentiert werden. Für eine Bitcoin-Simulation darf ein Preis eines einzelnen Anbieters nicht automatisch als bei einem anderen Anbieter erzielbarer Preis gelten. Saubere Daten bedeuten nachvollziehbare Korrekturen, nicht das Entfernen unbequemer Ergebnisse. [2]

Die QuantConnect-Dokumentation trennt Signal und Auftrag vom Modell, das Preis und Menge der Ausführung bestimmt. Sie weist auch auf den Unterschied zwischen Teilausführungen im realen Handel und der Annahme vollständiger Ausführung in vorgefertigten Modellen hin. Unsere eigene Anforderung ist, zu beschreiben, wann ein Auftrag ausgeführt werden darf, was bei unzureichender Liquidität geschieht und wie veraltete Preise behandelt werden. Dass historische Daten ein Preisniveau berühren, belegt noch keine verfügbare Gegenpartei für einen beliebig großen Auftrag. Das Ergebnis des Ausführungsmodells bleibt eine Simulationsannahme. [3]

QuantConnect beschreibt Slippage als Unterschied zwischen erwartetem und tatsächlichem Ausführungspreis und nennt Verzögerungen, die Verbindung und Marktbedingungen als Einflussfaktoren; die Abweichung kann günstig oder ungünstig sein. Unsere Kostenprüfung trennt Gebühren, Ausführungspreis und etwaige weitere Halte- oder Finanzierungskosten. Bereits im Ausführungspreis enthaltene Kosten dürfen nicht erneut abgezogen werden. Ein Nullwert ist eine konkrete Modellannahme, kein Beleg für einen kostenfreien Markt. Die Empfindlichkeit gegenüber höheren Kosten hilft einzuschätzen, ob ein kleiner historischer Gewinn von optimistischen Einstellungen abhängt. [4]

Die Dokumentation von TimeSeriesSplit erläutert eine zeitlich geordnete Aufteilung, damit ein Modell nicht mit zukünftigen Daten trainiert und anhand vergangener Daten bewertet wird. Unsere methodische Vorgabe ist, den Zeitraum für die Entwicklung der Regeln und den Zeitraum für ihre anschließende Überprüfung festzulegen, bevor die Ergebnisse betrachtet werden. Werden Regeln nach einem Misserfolg anhand des Prüfzeitraums erneut angepasst, hat dieser Zeitraum die Entwicklung bereits beeinflusst. Eine chronologische Aufteilung allein beseitigt weder Informationslecks aus der Vorverarbeitung und überlappenden Zielgrößen noch die wiederholte Auswahl von Varianten. Vorgehen und Datengrenzen müssen beschrieben werden. [5]

Bailey und seine Mitautoren zeigen, dass die wiederholte Suche nach der besten Konfiguration anhand derselben Daten das Risiko falscher Entdeckungen und der Anpassung an vergangenes Rauschen erhöht. Unsere Berichtsregel verlangt die Historie der Versuche, nicht nur die siegreiche Kurve. Dazu gehören Änderungen der Parameter, Zeiträume und Instrumentenauswahl. Ein nach vielen Versuchen ausgewähltes Ergebnis hat nicht dieselbe Aussagekraft wie eine vorab festgelegte, unveränderte Regel. Ihr Verfahren zur Schätzung der Wahrscheinlichkeit einer Überanpassung wird in unserem einfachen Beispiel weder durchgeführt noch durch eine einzige Datenaufteilung ersetzt. [1]

Die NFA weist darauf hin, dass hypothetische Ergebnisse keinen tatsächlichen Handel abbilden, Rückschauwissen nutzen können und Liquidität, Slippage oder das Verhalten bei realen Verlusten möglicherweise unzureichend modellieren. Unser Bericht soll deshalb Daten- und Codeversion, Regeln, Ausführungsannahmen, berücksichtigte Kosten und eine vollständige Liste der simulierten Geschäfte bewahren. Die Gesamtrendite braucht einen Risikokontext und einen Vergleich unter gleichen Bedingungen; eine ausgewählte schöne Grafik genügt nicht. Selbst eine fehlerfreie Implementierung eines historischen Tests garantiert weder die Durchführbarkeit noch Erträge in einem zukünftigen Markt. [6]

BeispielBEISPIEL · BT

Signal aus der vergangenen Periode, Ausführung in der folgenden

Unser fiktives Beispiel verwendet vier gleich lange Perioden A, B, C und D. Der anfängliche Bargeldbestand beträgt 1000 USD; es gibt keine offene Position, keine Schulden sowie keine Ein- oder Auszahlungen. Die beiden Schlusskurse vor Periode A betragen [100, 100] USD/BTC. Die Eröffnungskurse der Perioden A bis D sind [101, 103, 102, 105] USD/BTC und die Schlusskurse [102, 101, 104, 103] USD/BTC. Die vorab festgelegte Regel kauft zu Periodenbeginn 1 BTC nur dann, wenn der letzte abgeschlossene Schlusskurs über dem vorherigen abgeschlossenen Schlusskurs liegt; am Ende derselben Periode verkauft sie alles. Die Signale lauten deshalb [0, 1, 0, 1], wobei 1 einen Handel und 0 Untätigkeit bedeutet. Das Modell unterstellt vollständige Ausführung genau zu den genannten Eröffnungs- und Schlusskursen, einen Spread und Slippage von null sowie keine weiteren Kosten außer einer Gebühr von 0.1 USD für jeden Kauf oder Verkauf. In B wird für 103 USD gekauft und für 101 USD verkauft, in D für 105 USD und 103 USD. Die Bruttoergebnisse der Perioden lauten [0, -2, 0, -2] USD. Die vier ausgeführten Kauf- oder Verkaufsvorgänge kosten zusammen 0.4 USD, und die Nettoergebnisse sind [0, -2.2, 0, -2.2] USD. Die Bruttosumme beträgt -4 USD, die Nettosumme -4.4 USD und der abschließende Bargeldbestand 995.6 USD. Die Grafik zeigt die Nettobeiträge der einzelnen Perioden, weder den Kontostand noch eine Wahrscheinlichkeit. Dies ist eine von Hand überprüfbare Simulation zeitlicher Reihenfolge und Buchführung, keine realen Marktdaten, keine Optimierung und kein Beweis zukünftiger Leistung.

Für ein möglichst vollständiges Bild lies diesen Eintrag zusammen mit Trading Plan, Trading Journal, Slippage, Overfitting, Walk-forward Analysis. Auf diesen Eintrag verweisen außerdem Technical analysis, OHLCV, Timeframe, Candlestick chart.

01Beweist ein profitabler Backtest, dass eine Strategie Geld verdienen wird?

Nein. Das Ergebnis kann von bestimmten Daten, Kosten, dem Ausführungsmodell oder der Auswahl der besten Variante abhängen. Zeitliche Korrektheit, Annahmen und Auswahlverfahren müssen überprüft werden; auch danach besteht keine Garantie künftiger Erträge.

02Reicht es aus, Gebühren erst vom endgültigen Gewinn abzuziehen?

Nur wenn dieses Vorgehen dem Modell genau entspricht und weder das verfügbare Kapital noch weitere Entscheidungen beeinflusst. Üblicherweise müssen Kosten bei den jeweiligen Ereignissen verbucht, Ausführungspreis und Gebühren unterschieden und doppelte Abzüge vermieden werden.

DOC · 001Bailey et al. — The Probability of Backtest OverfittingPrimärquelle DOC · 002QuantConnect — Research GuideDokumentation DOC · 003QuantConnect — Trade Fills: Key ConceptsDokumentation DOC · 004QuantConnect — Slippage: Key ConceptsDokumentation DOC · 005scikit-learn — TimeSeriesSplitDokumentation DOC · 006NFA — Use of Promotional Material Containing Hypothetical Performance ResultsDokumentation
Überarbeitet: Quellenbasiert · Keine Anlageberatung