Ein Bot trifft in einem Jahr leicht mehrere tausend Entscheidungen. Die Börse zeichnet davon einen Bruchteil auf: welche Order wann zu welchem Preis ausgeführt wurde. Das ist das Ergebnis. Der Weg dorthin — welches Signal ausgelöst hat, mit welchen Parametern gerechnet wurde, welche Version der Strategie lief — existiert nur, wenn der Betreiber ihn selbst festhält.
Warum das mehr ist als Buchhaltung
Ohne Aufzeichnung lässt sich keine der drei wichtigen Fragen beantworten. Erstens: Warum wurde dieser Trade eröffnet? Zweitens: Hat sich das Verhalten des Bots verändert, oder hat sich der Markt verändert? Drittens: Stimmt der Zustand, den der Bot annimmt, mit dem überein, was die Börse tatsächlich hält?
Die dritte Frage ist die betrieblich gefährlichste. Ein Bot, der von einer offenen Position ausgeht, die längst geschlossen wurde, handelt auf Basis einer Fiktion — und tut das ohne jede Fehlermeldung.
Welche Felder je Entscheidung gehören
- Zeitstempel in UTC für Signal, Ordererstellung und Ausführung getrennt. Lokale Zeitzonen und Sommerzeit erzeugen sonst Lücken, die nachträglich nicht mehr aufzulösen sind.
- Strategie-Kennung und Version, damit spätere Auswertungen Ergebnisse nicht über Parameteränderungen hinweg vermischen.
- Signalgrundlage: die konkreten Werte, die zur Entscheidung geführt haben, nicht nur der Name der Regel.
- Auftragsdaten: Instrument, Richtung, Typ, geplante Menge, Limit, Kennung der Order.
- Ausführungsdaten: tatsächliche Menge, Durchschnittspreis, Gebühren, Teilausführungen einzeln.
- Kontext: Kontostand vor und nach der Ausführung, offene Positionen, aktives Risiko.
- Ergebnis der Absicht: ob die Order vollständig, teilweise, abgelehnt oder gar nicht ausgeführt wurde.
Das am häufigsten fehlende Feld ist die nicht ausgeführte Order. Wer nur erfolgreiche Trades protokolliert, sieht in der Auswertung eine Strategie, die es so nie gab — nämlich eine ohne abgelehnte und verfallene Aufträge.
Zwei getrennte Aufzeichnungen
Bewährt hat sich, Absicht und Ergebnis getrennt zu führen. Die eine Aufzeichnung hält fest, was der Bot tun wollte und warum. Die andere hält fest, was die Börse tatsächlich gemeldet hat. Beide werden über eine eigene Kennung verbunden.
Der Grund ist praktisch: Nur so wird sichtbar, wo Absicht und Realität auseinanderlaufen. Genau diese Differenz enthält die betrieblich wichtigen Informationen — Ausführungsqualität, Ablehnungen, Verzögerungen. Wer beides in eine Tabelle mischt, verliert sie.
Der Abgleich als feste Routine
Ein Abgleich vergleicht in festem Rhythmus den eigenen Zustand mit dem der Börse: offene Positionen, offene Orders, verfügbares Guthaben. Sinnvoll ist er beim Start des Bots, nach jedem Verbindungsabbruch und zusätzlich in einem festen Intervall.
Weicht etwas ab, ist die richtige Reaktion nicht die automatische Korrektur, sondern der Stopp mit Meldung. Ein Bot, der eine Abweichung selbstständig „glattzieht", kann eine Position schließen, die bewusst offen war. Wie eine Notabschaltung sauber aufgebaut wird, ist ein eigenes Thema; die Auswertung der Aufzeichnungen danach beschreibt der Beitrag Post-Trade-Analyse.
Format und Ablage
Ein anhängendes Zeilenformat mit einem Datensatz je Ereignis ist robuster als eine Datei, die überschrieben wird — ein abgestürzter Prozess verliert dann höchstens die letzte Zeile. Für Auswertungen lohnt sich zusätzlich eine Datenbank, die aus diesen Zeilen befüllt wird. Die Rohaufzeichnung bleibt dabei erhalten und wird nie verändert: Sie ist der Beleg, die Datenbank nur die Auswertungssicht.
Wichtig ist außerdem, dass Aufzeichnungen keine Zugangsdaten enthalten. Schlüssel, Passphrasen und Signaturen gehören nie in eine Protokolldatei, auch nicht gekürzt.
Zeit ist die häufigste Fehlerquelle
Ein Großteil der später unerklärlichen Abweichungen geht auf Zeitstempel zurück. Der Bot protokolliert in lokaler Zeit, die Börse antwortet in UTC, ein Neustart nach der Zeitumstellung erzeugt eine Stunde, die zweimal existiert. In der Auswertung erscheinen dann Orders vor ihrem eigenen Signal.
Die Lösung ist unspektakulär und wirksam: durchgehend UTC in Millisekunden, lokale Zeit ausschließlich in der Anzeige. Zusätzlich lohnt es sich, sowohl den eigenen Zeitstempel als auch den der Börse zu speichern. Die Differenz beider Werte ist nebenbei eine brauchbare Kennzahl für Verzögerungen — und sie fällt ohne Zusatzaufwand ab.
Was die Dokumentation nicht leistet
Sie macht keine Strategie profitabel und ersetzt kein Risikomanagement. Sie sorgt lediglich dafür, dass eine Auswertung überhaupt möglich ist und dass ein Fehler nach dem Auftreten gefunden werden kann statt nur vermutet. Das klingt bescheiden — ist aber der Unterschied zwischen einem System, das man betreibt, und einem, dem man zusieht.