Deep Learning · PyTorch · Time-Series Evaluation

Eigenprojekt · abgeschlossen

Deep Learning Critical Systems

Ein PyTorch-basiertes Deep-Learning-Engineering- und Research-System zur Klassifikation zukünftiger Finanzmarkt-Stressregime. MLP-, LSTM- und Transformer-Modelle werden unter einer strikt chronologischen Evaluation miteinander verglichen.

Der Fokus liegt bewusst nicht auf möglichst spektakulären Prognosewerten, sondern auf Leakage-Vermeidung, reproduzierbarem Training, ehrlicher Out-of-Sample-Evaluation, Robustheitsanalyse und nachvollziehbarer Interpretation der Modellgrenzen.

Das Projekt zeigt damit nicht nur Deep-Learning-Modellierung, sondern den vollständigen Engineering-Weg von einer versionierten Datenbasis über reproduzierbares Training und Modellvergleich bis zu Tests, CI, Packaging, Robustheitsanalyse und dokumentierten Systemgrenzen.

Tests

78 / 78

automatisierte Tests erfolgreich

Modelle

3

MLP · LSTM · Transformer

Best Macro-F1

37,38 %

Transformer auf dem finalen Testsplit

Best Macro ROC-AUC

0,6183

Transformer auf dem finalen Testsplit

Relevanz für reale ML-Systeme

Deep Learning wird als reproduzierbares Engineering-System behandelt.

Zeitabhängige Evaluation

Chronologische Train-, Validation- und Test-Splits verhindern, dass spätere Marktinformationen unbeabsichtigt in Training, Preprocessing oder Labelbildung einfließen.

Vergleich mehrerer Modellfamilien

MLP, LSTM und Transformer werden unter demselben Evaluationsdesign verglichen. Dadurch steht die belastbare Bewertung von Architekturentscheidungen stärker im Mittelpunkt als die Optimierung eines einzelnen Demo-Modells.

Robustheit und Fehleranalyse

Seed-Stabilität, Robustheitschecks, Explainability und zeitabhängige Fehleranalyse machen sichtbar, wie stark Ergebnisse von Datenlage, Initialisierung und Marktregimen abhängen.

Softwarequalität und Reproduzierbarkeit

78 automatisierte Tests, CI, versionierte Evidence, Dependency-Lock, Package-Build, Wheel-Smoke-Test und Fresh-Clone-Validierung behandeln das Modell als Bestandteil eines reproduzierbaren Softwaresystems.

Forschungsfrage

Können neuronale Modelle zukünftige Finanzstress-Regime aus historischen Signalen erkennen?

Finanzmarkt-Zeitreihen sind verrauscht, nicht stationär und anfällig für scheinbar gute Backtests. Deshalb ist das Evaluation Design mindestens so wichtig wie die Architektur des neuronalen Netzes.

Das Projekt behandelt Financial Stress Forecasting als zeitabhängiges Klassifikationsproblem. Historische Informationen werden genutzt, um das zukünftige Stressregime zu prognostizieren, ohne Informationen aus späteren Perioden in Training oder Preprocessing einfließen zu lassen.

Ziel ist kein produktives Trading- oder Investment-System. Das Projekt untersucht vielmehr, wie unterschiedliche Deep-Learning-Architekturen unter realistischen zeitlichen Evaluationsbedingungen abschneiden.

Die verwendete Datenbasis umfasst 6.730 OFR-FSI-Beobachtungen bis August 2026. Der finale Testsplit enthält 1.694 Sequenzen aus dem Zeitraum Januar 2020 bis Juli 2026.

Leakage Prevention

Zeitreihen werden nicht wie zufällig austauschbare Tabellenzeilen behandelt.

Training, Validation und Test folgen einer chronologischen Reihenfolge. Dadurch kann das Modell beim Training keine Informationen aus späteren Marktperioden sehen.

Skalierung und weitere lernbare Preprocessing-Schritte werden ausschließlich mit Trainingsdaten bestimmt und anschließend unverändert auf Validation und Test angewendet.

Auch die Zukunftslabels werden innerhalb der jeweiligen Splits konstruiert. Damit wird verhindert, dass Labelbildung unbeabsichtigt Informationen über Split-Grenzen transportiert.

Die verwendete Finanzdatenbasis wird als eingefrorener Snapshot mit dokumentiertem Hash behandelt, damit reproduzierte Experimente dieselbe Datenversion verwenden.

Engineering-Ansatz

Von der zeitlichen Datenbasis bis zur ehrlichen Out-of-Sample-Evaluation.

  1. 01

    Finanzielle Datenbasis und Zieldefinition

    Das Projekt verwendet reale Finanzmarktdaten und eine eingefrorene, per Hash dokumentierte Datenbasis. Ziel ist die Klassifikation zukünftiger Finanzstress-Regime unter strikter zeitlicher Trennung.

    Implementiert
  2. 02

    Chronologisches Evaluation Design

    Training, Validation und Test werden zeitlich getrennt. Skalierung wird ausschließlich auf Trainingsdaten gelernt und Zukunftslabels werden innerhalb der jeweiligen Splits konstruiert, um zeitliche Leakage zu vermeiden.

    Implementiert
  3. 03

    MLP-, LSTM- und Transformer-Modelle

    Drei neuronale Modellfamilien werden unter einem gemeinsamen Evaluation Design verglichen. Dadurch steht nicht ein einzelnes Modell, sondern der systematische Architekturvergleich im Mittelpunkt.

    Implementiert
  4. 04

    Tuning und Stabilitätsanalyse

    Hyperparameter und Modellkonfigurationen werden reproduzierbar untersucht. Mehrere Seeds und wiederholbare Abläufe helfen dabei, einzelne zufällige Trainingsläufe nicht mit belastbarer Modellqualität zu verwechseln.

    Implementiert
  5. 05

    Out-of-Sample-Evaluation

    Accuracy, Macro-F1, klassenbezogener Recall und Macro ROC-AUC werden auf zeitlich getrennten Daten ausgewertet. Die Ergebnisse werden bewusst ohne überzogene Leistungsbehauptungen dokumentiert.

    Implementiert
  6. 06

    Explainability und Fehleranalyse

    Modellverhalten, Fehlklassifikationen und zeitliche Performance werden untersucht. Explainability dient der Analyse des Modells und wird nicht als kausale Erklärung der Finanzmärkte dargestellt.

    Implementiert
  7. 07

    Robustheit und Reproduzierbarkeit

    Robustheitsanalysen, Tests, reproduzierbare Konfigurationen und dokumentierte Evaluationsschritte ergänzen das Training. Der finale Release-Prozess umfasst zusätzlich Linting, CI, versionierte Evidence, Package-Builds, Wheel-Smoke-Tests und Fresh-Clone-Validierung.

    Implementiert

Finale Testevaluation

Transformer liefert den stärksten Gesamtwert – aber keine perfekte Prognose.

Alle drei Modellklassen wurden unter demselben zeitlichen Evaluation Design getestet. Der Transformer erzielt den höchsten Macro-F1- und Macro-ROC-AUC-Wert, während das MLP die höchste Accuracy erreicht.

Modell Accuracy Macro-F1 Stress-Increase Recall Macro ROC-AUC
MLP 43,92 % 33,44 % 0,37 % 0,5801
LSTM 41,79 % 36,43 % 6,89 % 0,5970
Transformer 42,44 % 37,38 % 8,19 % 0,6183

Was der Transformer verbessert

Gegenüber MLP und LSTM erreicht der Transformer den höchsten Macro-F1-Wert von 37,38 % und den höchsten Macro ROC-AUC von 0,6183.

Was die Ergebnisse nicht zeigen

Die Werte rechtfertigen keine Behauptung eines verlässlich einsetzbaren Stress-Prognosesystems. Insbesondere der Recall für steigenden Stress bleibt mit 8,19 % beim Transformer begrenzt.

Modellarchitekturen

Drei unterschiedliche Wege, zeitabhängige Muster zu modellieren.

Multilayer Perceptron

Das MLP dient als neuronale Referenzarchitektur ohne explizites Sequenzgedächtnis. Es liefert die höchste Accuracy der drei Modelle, bleibt beim klassenübergreifenden Macro-F1 jedoch hinter den sequenzbasierten Ansätzen.

LSTM

Das Long Short-Term Memory modelliert zeitliche Abhängigkeiten explizit über einen rekurrenten Zustand. Gegenüber dem MLP verbessert sich der Macro-F1-Wert, ohne dass daraus eine generelle Überlegenheit abgeleitet wird.

Transformer

Die Transformer-Architektur nutzt Attention zur Verarbeitung zeitlicher Zusammenhänge und erreicht im finalen Vergleich den höchsten Macro-F1- und Macro-ROC-AUC-Wert.

Evaluation Philosophy

Ein gutes Research-Projekt darf auch ein schwieriges Ergebnis zeigen.

Das Projekt bewertet nicht nur, welches Modell die höchste einzelne Kennzahl erreicht. Accuracy, Macro-F1, klassenbezogener Recall und ROC-AUC beschreiben unterschiedliche Aspekte der Modellqualität.

Gerade bei Financial Stress Forecasting wäre es irreführend, moderate Ergebnisse durch selektive Metriken oder In-Sample-Zahlen stärker erscheinen zu lassen.

Deshalb werden auch schwache Bereiche sichtbar dokumentiert. Die begrenzte Erkennung steigender Stressregime ist eine zentrale Modellgrenze und kein Ergebnis, das im Portfolio versteckt werden soll.

Explainability und Fehleranalyse

Modellverhalten wird untersucht, nicht nur zusammengefasst.

Die Evaluation umfasst neben aggregierten Metriken auch Fehleranalysen und eine zeitliche Betrachtung der Generalisierungsleistung.

Explainability hilft dabei, die Reaktion des Modells auf Eingabesignale zu untersuchen. Solche Attributionen werden nicht als Beweis für wirtschaftliche oder kausale Zusammenhänge interpretiert.

Attention- und Attributionsergebnisse werden ausschließlich deskriptiv verwendet. Sie erklären das Modellverhalten im jeweiligen Experiment, nicht die Ursachen realer Finanzmarktbewegungen.

Die Ergebnisse zeigen außerdem, warum ein leistungsfähigeres Architekturkonzept nicht automatisch zu einem belastbaren Finanzprognose-System führt: Datenqualität, Regimewechsel, Klassenverteilung und zeitliche Generalisierung bleiben entscheidende Grenzen.

Robustheit und Stabilität

Einzelne Trainingsläufe sind keine belastbare Evidenz.

Seed-Stabilität und Robustheitschecks werden eingesetzt, um zu prüfen, wie stark Ergebnisse von zufälliger Initialisierung und veränderten Bedingungen abhängen.

Dadurch wird verhindert, dass ein zufällig besonders erfolgreicher Lauf als allgemeine Modellqualität dargestellt wird.

Die Robustheitsanalyse ergänzt damit das chronologische Testdesign und unterstützt eine vorsichtigere Interpretation der resultierenden Modellunterschiede.

Technischer Stack

Deep Learning mit reproduzierbarer Research-Pipeline.

  • Python 3.13
  • PyTorch
  • MLP
  • LSTM
  • Transformer
  • Time-Series Evaluation
  • Explainability
  • Robustness Testing
  • pytest
  • Ruff
  • GitHub Actions
  • Package Build
  • Wheel Smoke Testing

Engineering Quality

Forschungsqualität und Softwarequalität werden gemeinsam betrachtet.

  • 78 von 78 automatisierten Tests erfolgreich
  • Chronologische Train-/Validation-/Test-Trennung
  • Preprocessing ausschließlich auf Trainingsdaten gefittet
  • Eingefrorener Datensnapshot mit reproduzierbarer Provenienz
  • MLP-, LSTM- und Transformer-Vergleich
  • Seed-Stabilitäts-, Robustheits- und Explainability-Auswertungen
  • Versionierte Evidence mit SHA-256-Manifest
  • Exakter Python-3.13-Lock mit 37 Paketen
  • Package-Build, isolierter Wheel-Smoke-Test und Fresh-Clone-Validierung
  • Öffentlicher Release v1.0.1 mit grünem GitHub-Actions-CI
  • Ehrliche Dokumentation moderater Out-of-Sample-Performance

Projektstatus

Abgeschlossen, versioniert und reproduzierbar veröffentlicht.

Datenpipeline, Training, Modellvergleich, Evaluation, Explainability und Robustheitsanalyse sind vollständig umgesetzt. Der finale Stand umfasst 78 automatisierte Tests und ist als Release v1.0.1 veröffentlicht.

Die Release-Härtung umfasst versionierte Evidence, einen exakten Python-3.13-Lock, Package-Build und isolierten Wheel-Smoke-Test sowie Fresh-Clone-Validierung. Die moderaten Out-of-Sample-Ergebnisse und die begrenzte Erkennung steigender Stressregime bleiben ausdrücklich als Modellgrenzen dokumentiert.