Project Midas: ein Fonds, der zu gut aussieht, und drei Fehler darin
Für ein Seminar über statistische Fehlschlüsse habe ich einen synthetischen Trading-Datensatz gebaut, in dem drei Biases versteckt sind. Dazu ein Vortrag über Halluzinationen von Sprachmodellen.
Ein Flaggschiff-Fonds mit einer Renditekurve, die fast nur nach oben zeigt. Die Aufgabe für die anderen im Seminar war einfach: Findet heraus, warum ihr dieser Kurve nicht glauben solltet.
Das Seminar hieß Biases and Mishaps in Statistics and Machine Learning, auf Englisch, mit 15 Leuten. Jede Person musste zwei Dinge abgeben, beide benotet: einen Vortrag und eine Case Study, die die anderen selbst durcharbeiten.
Die Case Study habe ich Project Midas genannt. Dahinter steckt ein synthetischer Datensatz, den ich mit einem Python-Skript erzeugt habe: 60 Aktien über 120 Monate und 1.000 Backtests von Handelsstrategien. Daraus ergibt sich die schöne Kurve des Fonds. Und darin stecken drei Fehler, die in echten Finanzdaten ständig passieren.
Erstens Survivorship Bias. Wer nur die Aktien anschaut, die bis zum Ende überlebt haben, sieht automatisch bessere Renditen. Zweitens Look-ahead-Leakage. Eine Strategie benutzt an einer Stelle Daten vom nächsten Monat, um heute zu entscheiden. Ein Off-by-one-Fehler, eine Zeile, und plötzlich kann die Strategie in die Zukunft schauen. Drittens Multiple Testing. Von 1.000 getesteten Strategien sehen ein paar allein durch Zufall großartig aus. Zeigt man nur diese und verschweigt den Rest, hat man einen Fonds, der zu gut aussieht. Dazu kommen ein paar Köder, also Auffälligkeiten, die harmlos sind, damit man nicht einfach alles anstreicht, was komisch wirkt.
Für die Gruppe gab es ein Handout, Folien, einen Lösungsschlüssel und einen Walkthrough der Auflösung. Jede Zahl darin lässt sich aus dem Skript neu erzeugen. Das war mir wichtig. Wenn ich Leuten beibringen will, Zahlen nicht blind zu glauben, sollten meine eigenen nachprüfbar sein. Für das Multiple Testing bei Backtests habe ich mich auf ein Paper von Bailey, Borwein, López de Prado und Zhu von 2014 bezogen.
Der Vortrag am 20. Mai war das zweite Stück: 30 Minuten über Halluzinationen von Sprachmodellen, danach 15 Minuten Diskussion. Eingestiegen bin ich mit dem Fall Mata gegen Avianca, in dem ein Anwalt vor Gericht Urteile zitiert hat, die ein Chatbot erfunden hatte. Dann die Theorie: wie man Halluzination definiert, misst, erkennt und reduziert, etwa mit Semantic Entropy, Self-RAG oder RLHF. Und ein Ergebnis von Kalai und Vempala, nach dem kalibrierte Sprachmodelle zwangsläufig halluzinieren. Zum Schluss die Brücke zur Statistik: Prosecutor’s Fallacy und Base-Rate-Neglect, also warum auch ein guter Detektor meistens falschen Alarm geben kann, wenn das Gesuchte selten ist. Gelesen habe ich dafür ungefähr 30 Paper.
Zu beidem gehört ein KI-Disclosure-Log, also ein Protokoll, wo ich KI benutzt habe und wofür. Das war Pflicht, und es passt zum Thema.
Was ich mitnehme: Ich baue im Job selbst Produkte mit Sprachmodellen. Wer dort Halluzinationen nicht einplant, merkt es erst am Kunden. Und einen Fehler absichtlich zu verstecken ist schwerer als ihn zu finden. Er muss subtil genug sein, aber auffindbar.
Tools und Skills: Python mit pandas, NumPy und matplotlib, Slidev für die Folien, Literaturrecherche, Statistik rund um Backtests, wissenschaftliches Präsentieren auf Englisch.
Nachtrag: Die Modulnote ist eine 1,3.