Die meisten Auswertungsprobleme im Bot-Betrieb sind keine Strategieprobleme, sondern Datenprobleme. Ein Skript liefert am Montag eine Kennzahl, am Freitag eine andere — bei identischem Code. Die Ursache liegt selten im Programm, sondern in der Quelle: Zwischen beiden Läufen hat sich der Datenbestand verändert, ohne dass es jemand bemerkt hat.
Warum die Schnittstelle keine Datenbank ist
Handelsplätze stellen historische Kursdaten als Nebenprodukt bereit, nicht als Archiv. Daraus folgen mehrere praktische Einschränkungen. Der abrufbare Zeitraum ist begrenzt und wird ohne Ankündigung geändert. Einzelne Kerzen werden nachträglich korrigiert, etwa nach der Stornierung fehlerhafter Ausführungen. Handelspaare, die eingestellt wurden, verschwinden vollständig — samt ihrer Historie. Und Abfragegrenzen machen das wiederholte Laden großer Zeiträume langsam und unzuverlässig.
Für den laufenden Betrieb ist all das unkritisch. Für jede Auswertung, die vergleichbar sein soll, ist es die Wurzel des Problems. Eine eigene Ablage löst es, indem sie den Zustand einfriert.
Was gespeichert gehört
- Zeitstempel in einer einheitlichen Zeitzone: Ausschließlich UTC, als eindeutiger Zeitpunkt, mit klarer Festlegung ob der Wert den Beginn oder das Ende des Intervalls bezeichnet. Diese eine Konvention verursacht die meisten stillen Fehler.
- Die vollständige Kerze: Eröffnung, Hoch, Tief, Schluss und Volumen. Wer nur den Schlusskurs speichert, kann später weder Ausreißer prüfen noch realistische Ausführungen simulieren.
- Herkunft: Von welchem Handelsplatz und welchem Handelspaar der Datenpunkt stammt. Preise sind zwischen Plätzen nicht identisch.
- Abrufzeitpunkt: Wann der Datenpunkt geladen wurde. Erst damit lässt sich nachvollziehen, ob ein Wert nachträglich korrigiert wurde.
- Ergänzende Reihen: Finanzierungssätze, Gebührenstände und Handelsstatus gehören zur Historie, wenn die Strategie sie verwendet.
Die wichtigste Eigenschaft einer Marktdatenablage ist nicht Geschwindigkeit, sondern Unveränderlichkeit. Wer bestehende Zeilen überschreibt, verliert die Möglichkeit zu zeigen, dass ein früheres Ergebnis auf anderen Daten beruhte.
Korrekturen sichtbar machen statt überschreiben
Wenn ein Anbieter eine bereits gelieferte Kerze korrigiert, gibt es zwei Wege. Der bequeme Weg überschreibt den alten Wert. Der belastbare Weg schreibt eine neue Zeile mit neuem Abrufzeitpunkt und markiert die alte als ersetzt. Der zweite Weg kostet Speicherplatz und macht Abfragen etwas komplexer — dafür lässt sich jederzeit zeigen, mit welchem Datenstand ein bestimmter Backtest gerechnet hat.
Diese Nachvollziehbarkeit ist kein akademischer Anspruch. Sobald zwei Strategieversionen verglichen werden, muss ausgeschlossen sein, dass der Unterschied aus veränderten Eingangsdaten stammt. Ohne Versionierung ist dieser Ausschluss nicht möglich.
Lücken erkennen, bevor sie Ergebnisse verzerren
Fehlende Intervalle sind in Kursdaten normal — durch Wartungsfenster, Ausfälle oder abgebrochene Abrufe. Gefährlich sind sie, weil sie sich nicht von echter Marktruhe unterscheiden lassen, wenn niemand danach sucht. Eine Strategie, die auf Volatilität reagiert, liest eine Lücke als ruhige Phase und trifft daraufhin falsche Entscheidungen im Test.
Abhilfe schafft eine wiederkehrende Prüfung, die für jedes Handelspaar und jeden Zeitrahmen die erwarteten Zeitstempel gegen die vorhandenen abgleicht und Fehlstellen protokolliert. Diese Prüfung gehört automatisiert und ihr Ergebnis in dieselbe Überwachung wie der Bot selbst — analog zur Logik bei Datenqualität im Backtest. Nachgeladen wird gezielt, nicht durch pauschales Neuladen ganzer Zeiträume.
Technische Ablage: pragmatisch statt aufwendig
Für die meisten Einzelbetreiber genügt eine schlanke Lösung. Eine Datei je Handelspaar und Monat in einem spaltenorientierten Format ist schnell zu lesen, gut komprimierbar und ohne laufenden Serverdienst nutzbar. Eine relationale Datenbank lohnt sich, sobald viele Paare parallel abgefragt und verknüpft werden. Spezialisierte Zeitreihendatenbanken sind erst bei sehr hohem Datenaufkommen sinnvoll — davor erzeugen sie mehr Betriebsaufwand als Nutzen.
Wichtiger als die Technologie sind zwei Betriebsregeln: Erstens gehört die Ablage gesichert, denn eine über Jahre aufgebaute Historie ist nicht kurzfristig wiederherstellbar. Zweitens sollte der Schreibpfad vom Lesepfad getrennt sein, damit ein fehlerhafter Importlauf keine bestehenden Daten beschädigen kann.
Der Nutzen im Alltag
Mit einer eigenen Historie werden drei Dinge möglich, die vorher nicht funktionierten: Ein Backtest lässt sich Monate später mit identischem Ergebnis wiederholen. Zwei Strategieversionen lassen sich auf beweisbar identischen Daten vergleichen. Und delistete oder illiquide Handelspaare bleiben in der Auswertung erhalten, statt das Bild systematisch zu den Überlebenden zu verschieben. Gerade der letzte Punkt korrigiert eine Verzerrung, die Ergebnisse regelmäßig zu optimistisch aussehen lässt.