Die Walk-Forward-Optimierung gilt als der ehrliche Weg, eine Strategie zu tunen, und sie verdient diesen Ruf — verglichen damit, auf allen Daten zu optimieren und das Ergebnis anschließend zu bewundern. Aber die Technik hat stille Fehlermodi, und jeder davon produziert dasselbe Artefakt: einen Validierungsbericht mit der Aufschrift „robust“, angeheftet an eine Strategie, die es nicht ist. Hier sind die drei, gegen die wir anbauen mussten, sortiert nach dem Schaden, den sie hinterlassen.
Fehler eins: Die Fenster lecken
Der falsche Weg: auf Januar bis Juni tunen, auf Juli validieren — und dann irgendetwas aus dem Juli einen zweiten Durchlauf beeinflussen lassen: ein Re-Run, nachdem man die Out-of-Sample-Zahl gesehen hat, eine „kleine Anpassung“ am Parameterraster, ein Feature, das über die gesamte Zeitreihe normalisiert wurde. Jedes für sich sieht harmlos aus. Zusammen machen sie aus dem Out-of-Sample-Fenster In-Sample-Daten mit Verzögerung.
Der Schaden: ein Out-of-Sample-Sharpe, der auf mysteriöse Weise dem In-Sample-Sharpe folgt. Echte Out-of-Sample-Ergebnisse sind verrauscht und enttäuschend; ein verdächtig glattes IS/OOS-Verhältnis heißt, dass Information rückwärts fließt. Wir beobachten dieses Verhältnis explizit — IS über dem 3-Fachen von OOS markiert den Run, und OOS bei null oder darunter killt ihn, egal wie hübsch IS aussieht.
Fehler zwei: Metrik-Shopping über Fenster hinweg
Man lässt drei Walk-Forward-Fenster laufen, bekommt drei verrauschte Ergebnisse und fasst dann zusammen: mittlerer Sharpe? Median? Das schlechteste Fenster wegen „Regimewechsel“ streichen? Jede dieser Entscheidungen ist ein Freiheitsgrad, und ein entschlossener Optimierer — Mensch oder Bayesianer — findet garantiert die Zusammenfassung, unter der diese Strategie am besten dasteht. Fünfundsiebzig Optuna-Trials pro Fenster sind fünfundsiebzig Gelegenheiten, Rauschen zu fitten, mal so viele Zusammenfassungen, wie man bereit ist in Betracht zu ziehen.
Der Schaden: eine Strategie, die die Validierung besteht und live dann die Performance des schlechtesten Fensters liefert — weil das schlechteste Fenster das einzig ehrliche war. Unsere Regel: Die Aggregation steht vor dem Lauf in der Config fest, das Trial-Budget steht fest, und der Analyst liest die Ergebnisse pro Fenster inklusive ausgewiesener Streuung. Eine Strategie, die die wohlwollende Zusammenfassung braucht, um zu bestehen, besteht nicht.
Fehler drei: Das Holdout, das keines mehr war
Ein Holdout funktioniert genau einmal. Beim zweiten Mal, wenn eine Strategie dagegen bewertet wird — nach einem Parameterschubs, einer Signaländerung, einem „schauen wir nur kurz“ —, ist es kein Holdout mehr, sondern ein langsames Validierungsset. Fünfzehn unberührte Tage zu bewahren klingt trivial, bis der Iterationsdruck kommt und ein erneuter Check sich harmlos anfühlt.
Der Schaden ist subtil: Holdout-Ergebnisse, die sich über die Iterationen derselben Strategie hinweg verbessern. Frische Out-of-Sample-Daten haben keinen Grund, Iteration drei besser zu bewerten als Iteration eins — und wenn sie es tun, wurde das Holdout ausgebeutet. Wir erzwingen den einen Schuss mechanisch: Das Holdout wird einmal pro Pipeline-Lauf ausgewertet, das Ergebnis wird in den Datensatz geschrieben, und eine Strategie, die einen weiteren Versuch braucht, muss den kompletten Parcours erneut durchlaufen — neue Fenster inklusive. Sie muss mindestens 70% des Walk-Forward-OOS-Sharpe halten, und dieser Würfel wird kein zweites Mal geworfen.
Das Anzeichen, das alle drei überlebt
Vor all dem fahren wir einen schlichten Sensitivitäts-Sweep: jeden Parameter um ±20% verschieben und die Metriken beobachten. Eine echte Edge degradiert sanft; ein Zufallstreffer fällt von der Klippe. Es ist der billigste Test in der Pipeline, und er kippt Strategien, die durch alles Obige glatt hindurchgesegelt wären — denn eine Parameterklippe ist genau das, wie Overfitting aussieht, bevor man ihm Gelegenheit gegeben hat, sich in der Validierungsmaschinerie zu verstecken.
Nichts davon macht Optimierung sicher. Es macht die Fehlermodi laut — und mehr kann man von einem Validierungsprozess ehrlicherweise nicht verlangen.
← Alle Beiträge