10. November 2026 · Daten

Dein Backtest braucht ein Datenänderungsprotokoll, nicht nur einen Datensnapshot

Dein Backtest braucht ein Datenänderungsprotokoll, nicht nur einen Datensnapshot

Ein eingefrorener Snapshot von Marktdaten reicht nicht aus, um einem Backtest zu vertrauen. Er kann dasselbe Ergebnis reproduzieren und dabei verschleiern, dass der Anbieter die Eingabedaten geändert hat, die zu diesem Ergebnis geführt haben.

Bewahre den Snapshot auf. Führe zusätzlich ein Änderungsprotokoll, aus dem hervorgeht, was sich wann geändert hat und ob die Strategie davon betroffen war. Das ist besonders wichtig, wenn deine Forschung korrigierte Trades, überarbeitete Fundamentaldaten, rekonstruierte Funding-Daten oder vom Anbieter unbemerkt aktualisierte historische Daten verwendet.

Warum kann ein reproduzierbarer Backtest trotzdem irreführend sein?

Angenommen, du lädst am Montag fünf Jahre an Stundenkerzen herunter und lässt eine Strategie darauf laufen. Am Freitag hat der Anbieter einen fehlerhaften Trade korrigiert, eine Kapitalmaßnahme angepasst oder eine Datenlücke geschlossen. Deine gespeicherte Datei liefert weiterhin exakt das Ergebnis von Montag. Das ist reproduzierbar. Führst du den Backtest aber mit der aktuellen Historie des Anbieters erneut aus, erhältst du möglicherweise ein anderes Ergebnis und hast keine Aufzeichnung dazu, warum.

Das Problem beschränkt sich nicht auf größere Korrekturen. Ein einzelner geänderter Höchstkurs kann einen Stop auslösen; ein überarbeiteter Schlusskurs kann einen Indikator über seinen Schwellenwert bewegen. In einem breiten Anlageuniversum kann die geänderte Historie eines Symbols dessen Rang verändern und einen anderen Vermögenswert aus dem Portfolio drängen. Die endgültige Sharpe-Kennzahl kann sich verschieben, selbst wenn Strategiecode und Konfiguration identisch sind.

Ein Datei-Hash verrät dir, dass sich zwei Dateien unterscheiden. Er verrät dir nicht, ob eine Split-Anpassung die Kurse von 40 Jahren verändert hat, ein Anbieter drei Trades korrigiert hat oder ein Parser ein leeres Feld in null umgewandelt hat.

Was gehört in ein Änderungsprotokoll für Marktdaten?

Erfasse Änderungen auf der kleinsten sinnvollen Ebene und mit genug Kontext, um die betroffene Forschung erneut auszuführen. Bei einem Kerzendaten-Feed gehören dazu in der Regel das Instrument, das Intervall, der Ereigniszeitpunkt, die alten und neuen Werte, die Quelle und der Zeitpunkt, an dem du die Aktualisierung bemerkt hast. Bewahre die ursprünglichen Nutzdaten auf, wenn der Anbieter sie bereitstellt.

ErfassenWarum festhaltenBeispiel
Quellversion oder AbrufzeitpunktZeigt, welcher Datenstand des Anbieters verwendet wurdeSnapshot abgerufen am 2026-11-02 08:15 UTC
Geändertes Feld und alte/neue WerteZeigt, was sich tatsächlich geändert hatETHUSDT 1h Höchstkurs: 3,412.10 → 3,418.60
Klassifizierung der ÄnderungUnterscheidet Korrekturen von TransformationenVerspätete Trade-Korrektur, Split-Anpassung, Nachlieferung
Pipeline- und Schema-VersionUnterscheidet Änderungen an der Quelle von deiner eigenen VerarbeitungNormalizer v7, Schema für angepasste Kerzendaten v3

Speichere für große Datensätze unveränderliche Snapshots und ein kompaktes Manifest mit Prüfsummen, Quellversionen und Abrufzeiten. Ergänze zeilenweise Diffs für geänderte Partitionen. So findest du einen praktikablen Mittelweg: Eine vollständige Wiederholung bleibt möglich, ohne jede unveränderte Zeile in eine zweite Audit-Tabelle zu schreiben.

Wie messe ich, ob eine Korrektur relevant ist?

Zähle nicht einfach nur die geänderten Zeilen. Führe die betroffene Strategie mit den alten und neuen Daten erneut aus und verwende dabei denselben Code, dieselben Parameter, Gebühren und Ausführungsannahmen. Vergleiche die Entscheidungen und den Verlauf bis zum Ergebnis.

  1. Ermittle anhand des Diffs die betroffenen Instrumente und Ereigniszeitpunkte.
  2. Finde heraus, welche Features, Signale, Orders oder Portfoliogewichte diese Datensätze verwenden.
  3. Wiederhole den kleinsten gültigen Zeitraum und berücksichtige dabei alle Lookback-Daten sowie den Status offener Positionen.
  4. Vergleiche Orders, Fills, Exposure, Turnover, Drawdown und die endgültige Performance.

Eine Anbieterkorrektur, die beispielsweise den Höchstkurs einer 1-Minuten-Kerze um $0.02 ändert, kann eine Million Zeilen betreffen und dennoch keinerlei Auswirkung auf eine tägliche Momentum-Strategie haben. Eine korrigierte Kerze auf einem Stop-Level kann dagegen entscheidend sein. Miss die Auswirkungen auf die Entscheidungen; die Anzahl geänderter Datensätze ist dafür ein schlechter Richtwert.

Halte zwei Fragen auseinander: „Kann ich das Ergebnis mit den gespeicherten Daten reproduzieren?“ und „Wäre diese Datenversion der Strategie damals verfügbar gewesen?“ Ein Änderungsprotokoll hilft dir bei beiden Fragen. Für die zweite brauchst du zusätzlich Aufzeichnungen dazu, wann die Daten verfügbar waren.

Was kostet das, und wann lohnt es sich?

Änderungen nachzuverfolgen kostet Speicherplatz und Aufwand bei der Datenaufnahme und erfordert betriebliche Entscheidungen. Anbieter stellen möglicherweise keine stabilen Versionen bereit, und manche historischen Daten-Feeds werden regelmäßig neu erstellt, ohne dass Korrekturen klar angekündigt werden. Änderungen, die du nie bemerkst, kannst du nicht protokollieren.

Beginne dort, wo Überarbeitungen die Forschungsergebnisse verändern können: bei Kerzendaten für die Stop-Logik, um Kapitalmaßnahmen angepassten Aktienkursen, Point-in-Time-Fundamentaldaten sowie rekonstruierten Funding- oder Open-Interest-Zeitreihen. Für breite, stabile Datensätze reicht möglicherweise ein tägliches Manifest mit Prüfsummen der Partitionen. Ergänze Diffs auf Feldebene dort, wo Aktualisierungen häufig vorkommen oder Handelsentscheidungen von einzelnen Datensätzen abhängen.

Kritiker haben recht: Ein vollständiges, dauerhaftes Archiv jeder Antwort des Anbieters kann teuer werden und trotzdem nicht festhalten, was der Anbieter damals wusste. Beschränke die Prüfung auf die relevanten Daten und Entscheidungen und dokumentiere die Lücken. Mit einem Snapshot kannst du ein Experiment erneut ausführen. Mit einem Änderungsprotokoll kannst du erklären, warum sich das Ergebnis des Experiments verschoben hat.

Data EngineeringBacktestingReproduzierbarkeitQuant-Forschung
← Alle Beiträge