CommunityCodierung & Entwicklunggithub.com

GARCH-Methode

Volatilitätsprognose und Positionsgrößenbestimmung mittels Walk-Forward-GARCH(1,1). Verwende dies immer, wenn der Benutzer nach Volatilitätsprognosen, Positionsgrößen, „wie viel soll ich investieren“, Vol-Targeting, Risikobegrenzung, Sturm-/Ruhe-Phasen fragt oder testen möchte, ob volatilitätsgesteuerte Positionsgrößen eine bestehende Strategie verbessern. Funktioniert mit jedem Ticker (yfinance) oder jeder CSV mit Datums- und Schlusskursspalten. Beantwortet „wie viel“ – niemals „in welche Richtung“.

Was ist GARCH-Methode?

Die GARCH-Methode ist eine Fähigkeit (Skill) für KI-Agenten, die auf die Beantwortung der Frage „Wie viel?“ spezialisiert ist – ein zentrales Anliegen institutioneller Anleger, das im Einzelhandel oft vernachlässigt wird. Sie prognostiziert die Volatilität (das Ausmaß von Kursbewegungen) mittels eines Walk-Forward-GARCH(1,1)-Modells, ohne eine Richtungsvorhersage zu treffen. Die Fähigkeit bietet drei Hauptwerkzeuge: `garch_forecast.py` für die reine Volatilitätsprognose inklusive Regimeklassifikation (ruhig, normal, Sturm), `vol_target.py` zur Berechnung eines Positionsgrößenmultiplikators (basierend auf Zielvolatilität geteilt durch prognostizierte Volatilität, gedeckelt auf das 0,25- bis 2,0-fache) und `compare.py` für einen ehrlichen Backtest-Vergleich zwischen einer festen und einer volatilitätsgesteuerten Positionsgrößenstrategie. Die Fähigkeit wird über die CLI mit `uv run` ausgeführt, akzeptiert Daten von yfinance-Tickern oder benutzerdefinierten CSVs mit Datums- und Schlusskursspalten und gibt strukturierte JSON-Ergebnisse aus. Sie ist plattformunabhängig und kann als reine Sizing-Schicht auf jede bestehende Handelsstrategie aufgesetzt, als eigenständiger Risiko-Kill-Switch bei Sturm-Regimen verwendet oder als Vergleichstool zur Validierung der Strategieeffizienz eingesetzt werden.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/milesdeutscher/garchmethod/tree/main/skills/garch

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

GARCH-Methode – Volatilitätsprognose + Positionsgrößenbestimmung

Dieser Skill beantwortet die Frage, die der Einzelhandel nie stellt und jeder Fonds täglich: Wie viel?

Er prognostiziert NICHT die Richtung. GARCH prognostiziert das Ausmaß von Bewegungen – wie heftig der morgige Tag wahrscheinlich sein wird, nicht die Richtung. Sage dies dem Benutzer, wenn du Ergebnisse präsentierst.

Die drei Werkzeuge

Alle Skripte befinden sich in scripts/ und werden mit uv run ausgeführt (Abhängigkeiten werden automatisch über Inline-Metadaten aufgelöst – kein pip-install nötig).

1. garch_forecast.py – die Prognose

Walk-Forward-GARCH(1,1), ohne Vorausschau (Parameter werden alle 21 Tage auf einem expandierenden Fenster neu geschätzt; die Rekursion rollt zwischen den Neuschätzungen nur mit vergangenen Daten vorwärts).

uv run scripts/garch_forecast.py --csv prices.csv --json
uv run scripts/garch_forecast.py --ticker BTC-USD --json

Ausgabe: 1-Tages-Volatilitätsprognose (täglich + annualisiert), Volatilitätsperzentil im Vergleich zum letzten Jahr, Regime (ruhig / normal / Sturm).

2. vol_target.py – die Größe

Die gesamte Idee: size = target_vol / forecast_vol, gedeckelt auf [0,25x, 2,0x].

uv run scripts/vol_target.py --csv prices.csv --target-vol 15 --json

Ausgabe: Positionsgrößenmultiplikator. „Führe 0,6x deiner Basislinie aus“ – das ist die Antwort.

3. compare.py – der ehrliche Test

Führt dieselben Signale zweimal aus – feste Größe vs. volatilitätsgesteuert – und zeigt beide Eigenkapitalkurven sowie Statistiken nebeneinander an. Wird mit einer EMA 9/21-Crossover-Demo ausgeliefert; akzeptiert jede beliebige Strategie über --signals mine.csv (Spalten: Datum, Signal in {-1,0,1}).

uv run scripts/compare.py --csv prices.csv --target-vol 58 --chart equity.png --json
uv run scripts/compare.py --csv prices.csv --signals mine.csv

Ausgabe: CAGR, annualisierte Volatilität, Sharpe, maximaler Drawdown, schlechtester Monat, Endkapital – beide Versionen – plus das Eigenkapitalkurven-Diagramm mit schattierten Sturmregimen.

JSON-Vertrag

Jedes Skript unterstützt --json. Kernausgabeform:

{
  "as_of": "2026-05-23",
  "forecast_vol_annualized_pct": 41.2,
  "vol_percentile_1y": 78.0,
  "regime": "storm",
  "position_size_multiplier": 0.6,
  "note": "GARCH prognostiziert das Ausmaß (Volatilität), nicht die Richtung."
}

Drei Kombinationsmuster

A. Sizing-Schicht – auf jede bestehende Strategie aufsetzbar. Deine Strategie entscheidet ob; dieser Skill entscheidet wie viel. Nimm das Signal der Strategie, multipliziere mit position_size_multiplier, fertig.

B. Risikobegrenzung – eigenständiger Kill-Switch. Wenn regime == "storm", reduziere jegliches Engagement auf den Multiplikator, unabhängig davon, was deine Signale sagen. Funktioniert mit jedem Agenten, der Positionen verwaltet.

C. Vergleichstool – bevor du einer Strategie vertraust, führe sie durch compare.py und prüfe, ob Volatilitäts-Targeting ihr Sharpe-Verhältnis / ihren Drawdown verbessert. Wenn Sizing nicht hilft, ist der Vorteil der Strategie möglicherweise zu schwach, um realen Bedingungen standzuhalten.

Lässt sich sauber mit Regime-Richtungs-Skills kombinieren (z. B. Markov-artige Bullen-/Bären-Klassifikatoren): deren Ausgabe beantwortet in welche Richtung, dieser beantwortet wie viel. Multipliziere die beiden.

Standardwerte & Konventionen

  • Krypto: --periods-per-year 365 (Standard). Aktien: --periods-per-year 252.
  • Zielvolatilität: 15 % ist ein vernünftiger konservativer Standardwert. Für einen risikobereinigten Vergleich mit einer ungehebelten Strategie setze die Zielvolatilität ungefähr gleich der realisierten Volatilität der Strategie selbst.
  • Daten: yfinance-Ticker (benötigt Internet) oder jede CSV mit Datums- und Schlusskursspalten – fügt sich in jede bereits vom Benutzer verwendete Pipeline ein.
  • Mindesthistorie: ~510 tägliche Beobachtungen vor der ersten Prognose.

Ehrlichkeitsregeln (nicht verhandelbar)

  1. Präsentiere die GARCH-Ausgabe niemals als Richtungsentscheidung.
  2. Verstecke niemals die Drawdown- oder schlechtesten-Monats-Zahlen, wenn du einen Vergleich berichtest.
  3. Wenn Volatilitäts-Targeting die Strategie des Benutzers NICHT verbessert, sage dies deutlich – dieses Ergebnis ist genauso wertvoll.

Verwandte Skills