Es gibt einen subtilen Optimismus in fast jedem Daily-Backtest, und kaum jemand misst ihn.
Eine Daily-Strategie berechnet ihr Signal aus dem Tagesschluss — und füllt dann am selben Tagesschluss. Das Problem: Den Schlusskurs kennst du erst, nachdem er feststeht. In dem Moment kannst du ihn nicht mehr handeln. Real füllst du frühestens am nächsten Open. Dazwischen liegt der Overnight- (und am Wochenende der Weekend-) Gap — und der verzerrt das Ergebnis.
Wir nennen die Differenz die Gap-Tax. Und wir haben sie gemessen, statt sie zu behaupten.
Der Aufbau
Zwei Fill-Modelle, auf exakt denselben Signalen (die Strategie-Logik bleibt unangetastet):
| Fill-Modell | Fill-Preis | Bedeutung |
|---|---|---|
| Close-Fill | Tagesschluss Cᵢ | der übliche (optimistische) Backtest-Default |
| Next-Open-Fill | nächster Open Oᵢ₊₁ | die handelbare Realität — Gap berücksichtigt |
Gap-Tax = Performance(Close-Fill) − Performance(Next-Open-Fill), pro Strategie × Asset, slippage-frei.
Gerechnet auf den drei Free-Strategien (RSI/SMA, Golden Cross, RSI OB/OS), Tageskerzen, über Top-10-Aktien, Top-10-ETFs und acht liquide Crypto-Paare als Kontrollgruppe — zusammen über 7.000 Round-Trip-Trades.
Warum Crypto die Kontrollgruppe ist
Crypto handelt 24/7. Kein Börsenschluss heißt: kein Close→Open-Gap, der Open der nächsten Kerze ist praktisch der Close der letzten. Also muss bei Crypto eine Gap-Tax von ≈0 herauskommen. Tut sie das nicht, ist die Rechnung kaputt (ein Off-by-one in der Bar-Indexierung). Crypto ist gleichzeitig die ehrliche Lehre und der Selbsttest der Methode.
| Asset-Klasse | Round-Trips | Median Gap/Trade | Median CAGR-Δ |
|---|---|---|---|
| Aktien | 2.590 | −0,02 pp | +0,44 pp |
| ETFs | 2.655 | −0,05 pp | −0,04 pp |
| Crypto (Kontrolle) | 2.013 | +0,00 pp | +0,00 pp |
Der Selbsttest besteht: Crypto liefert exakt 0,00. Die Methode misst, was sie messen soll.
Das überraschende Ergebnis: die Gap-Tax ist fast null
Wir sind in diese Analyse mit der Erwartung gegangen, dass Aktien und ETFs eine spürbare Gap-Tax zeigen — schließlich haben sie echte Overnight-Lücken. Die Daten sagen etwas anderes:
- Die mittlere CAGR-Verzerrung liegt bei unter einem halben Prozentpunkt pro Jahr (Aktien +0,44 pp, ETFs −0,04 pp).
- Der Per-Trade-Gap ist im Median praktisch null (−0,02 bis −0,05 pp).
- Der Anteil der Trades, bei denen der Gap gegen die Strategie lief, liegt bei ~51% — ein Münzwurf.
Heißt das, Aktien haben keine Overnight-Gaps? Nein — und hier wird es interessant. Die Gaps sind real und nicht klein: Das Interquartil reicht bei Aktien von −0,79 bis +0,70 pp pro Trade. Einzelne Trades werden also durchaus um ±0,7 pp verschoben. Aber: Diese Verschiebung ist symmetrisch. Mal läuft der Gap für dich, mal gegen dich, und über viele Trades hinweg hebt sich das fast vollständig auf.
Zum Vergleich Crypto: dort reicht das Interquartil nur von −0,01 bis +0,01 pp — es gibt schlicht keinen Gap. Genau dieser Kontrast (Aktien: großes, symmetrisches Gap-Rauschen; Crypto: kein Gap) bestätigt, dass die Methode korrekt rechnet.
Was das bedeutet — und was nicht
Der ehrliche Befund: Auf Tageskerzen, mit Strategien, die über mehrere Tage halten, ist der Close-Fill-Optimismus Per-Trade-Rauschen, keine systematische Ergebnis-Aufblähung. Die verbreitete Annahme „Daily-Backtests sind durch Close-Fills deutlich geschönt" hält der Messung nicht stand — zumindest nicht für diese Strategie-Klasse und dieses Zeitfenster.
Der Grund ist intuitiv, sobald man ihn sieht: Wenn ein Trade 20 Tage gehalten wird und 15% läuft, ist ein Overnight-Gap von ±0,3% am Ein- und Ausstieg Rauschen. Bei einem Trade, der nur eine Kerze hält, wäre derselbe Gap dominant.
Was wir damit ausdrücklich NICHT sagen:
- Dass Gaps irrelevant sind. Pro einzelnem Trade sind ±0,7 pp real. Wer wenige Trades fährt, spürt die Varianz.
- Dass das für jedes Zeitfenster gilt. Intraday-Strategien, kurzhaltende Setups oder illiquide Werte mit großen Gaps können eine echte, gerichtete Gap-Tax haben. Hier gemessen: Daily + Mehrtages-Halten.
- Dass Ausführungskosten egal sind. Diese Analyse lässt Slippage und Gebühren bewusst weg, um den Gap isoliert zu zeigen. Beides ist ein separater, realer Posten.
Was Backtesting Arena hier beiträgt
Wir behaupten nicht, die einzige ehrliche Backtesting-Plattform zu sein. Was wir tun: eine Hypothese aufstellen, sie an echten Daten messen und das Ergebnis veröffentlichen — auch wenn es der eigenen Erwartung widerspricht. Die Gap-Tax war als „aha, hier ist die versteckte Verzerrung"-Geschichte angelegt. Die Daten haben daraus eine „so groß ist sie wirklich, nämlich kaum"-Geschichte gemacht. Beides ist Methodik-Ehrlichkeit.
Der nächste Schritt, falls die Nachfrage da ist: eine Fill-Realismus-Karte direkt im Backtest-Ergebnis, die dir Close-Fill und Next-Open-Fill nebeneinander zeigt — damit du es pro Run selbst siehst, statt es uns glauben zu müssen.
FAQ
Was ist die Gap-Tax in einem Satz? Die Differenz zwischen dem (unrealistischen) Füllen am Tagesschluss, aus dem das Signal berechnet wurde, und dem (realistischen) Füllen am nächsten Open — gemessen als Performance-Unterschied.
Warum ist sie bei Aktien fast null, obwohl es Overnight-Gaps gibt? Weil die Gaps symmetrisch sind. Pro Trade ±0,7 pp, mal für, mal gegen die Strategie — über viele Trades hebt sich das auf. Das Per-Trade-Rauschen ist real, die systematische Verzerrung im Median nicht.
Warum ist Crypto die Kontrollgruppe? 24/7-Märkte haben keinen Börsenschluss, also keinen Close→Open-Gap. Crypto MUSS ≈0 liefern — tut es das nicht, ist die Bar-Indexierung falsch. Unser Crypto-Wert ist exakt 0,00, der Selbsttest besteht.
Heißt das, ich kann Fills komplett ignorieren? Nein. Für kurzhaltende oder intraday-Strategien, illiquide Werte oder bei wenigen Trades kann der Gap durchaus beißen. Gemessen haben wir Daily-Strategien mit Mehrtages-Halten — dort ist es ein Wash.
Sind Slippage und Gebühren hier mit drin? Nein, bewusst nicht. Diese Analyse isoliert den Gap. Slippage und Fees sind ein eigener, realer Kostenposten, den wir getrennt behandeln.
Kann ich das selbst nachrechnen? Die Methode ist offen beschrieben: Signal am Close berechnen, einmal am Close füllen, einmal am nächsten Open, Differenz bilden, über viele Trades und Assets aggregieren — mit einem 24/7-Markt als Null-Kontrolle.