# Anforderungsdokument — "AI/Tech Regime Change Monitor" **Ziel:** Ein persönliches Hobby-Tool, das fundamentale *und* kursbasierte Signale überwacht und einen einzigen Wert von **0–100** ausgibt: die geschätzte Wahrscheinlichkeit, dass das KI/Tech-Bullenregime in eine Neubewertung kippt. **Zweck:** Disziplinierte Ausstiegs-Entscheidung für spekulative Einzelpositionen (NVDA, MSFT). **Kein** Auto-Trading, **keine** Anlageberatung, **keine** Timing-Garantie. --- ## 1. Scope - **Beobachtete Instrumente:** SMH (Halbleiter, *schnelles* Frühsignal) + QQQ (breiter, *Bestätigung*) als Regime-Sensoren; SPY, RSP (Marktbreite-Kontext); VIX (Volatilität); Hyperscaler GOOGL, AMZN, META, MSFT (Capex-Signal). Bewusst **keine** Einzelaktien-Trades — das Tool misst das *Regime*, nicht einzelne Titel. - **Optionaler "Kanarienvogel":** NVDA als reiner Frühindikator-Input (Lead-Aktie des Sektors, dreht oft vor SMH) — abschaltbar, **keine** Entscheidungsposition. - **Read-only.** Tool gibt nur einen Score + Aufschlüsselung aus, führt keine Orders aus. - **Lauf-Kadenz:** Kurssignale täglich, Fundamentalsignale quartalsweise (bzw. bei Earnings). ## 2. Output - **Gesamtscore 0–100** (0 = Regime stabil, 100 = Bruch im Gange) mit Label-Band: - 0–30 stabil · 30–60 beobachten · 60–80 erhöht · 80–100 Bruch sichtbar - **Aufschlüsselung pro Signal** (Sub-Score 0–100 + Gewicht + Beitrag). - **Trend:** Veränderung des Gesamtscores über 7 und 30 Tage (steigend/fallend). - Optional: einfacher Alert, wenn Gesamtscore eine konfigurierbare Schwelle (Default 65) überschreitet. ## 3. Signale Jedes Signal liefert einen Sub-Score 0–100 (0 = gesund, 100 = Regime bricht). Gewichte in `config` editierbar. ### Kursbasiert (automatisierbar, täglich) Grundprinzip: **SMH ist das führende Signal, QQQ die Bestätigung.** Wo beide eingehen, zählt SMH stärker (Default 2:1), damit du Frühwarnung *und* Filter gegen Fehlalarme hast. | ID | Signal | Logik (Sub-Score 0→100) | Default-Gewicht | |----|--------|--------------------------|-----------------| | P1 | Trendbruch 200-Tage-MA | Gewichteter Anteil unter der 200-Tage-MA: SMH zählt doppelt, QQQ einfach | 12 | | P2 | Death Cross + Slope | 50-Tage-MA unter 200-Tage-MA und 200er-Slope negativ (graduell nach Abstand), SMH führend | 8 | | P3 | Drawdown vom 52W-Hoch | max(SMH, QQQ)-Drawdown: 0 % → 0, ≥ 20 % → 100 (linear) | 10 | | P4 | Relative Stärke Tech | Trend des Verhältnisses SMH/SPY (Tech underperformt → höher) | 8 | | P5 | Volatilität | VIX: ≤ 15 → 0, ≥ 30 → 100 (linear) | 7 | | P6 | *Optional:* Kanarienvogel NVDA | NVDA unter 50-Tage-MA bei gleichzeitig noch intaktem SMH (Lead-Divergenz) → Frühwarnung; abschaltbar | 0 (opt. 5) | ### Fundamental (teils manuell, quartalsweise) | ID | Signal | Logik (Sub-Score 0→100) | Default-Gewicht | |----|--------|--------------------------|-----------------| | F1 | Hyperscaler-Capex-Guidance | Manuelle Eingabe je Name: anhebend = 0, haltend = 50, kürzend = 100; Mittel über die 4 | 25 | | F2 | Kreditspreads | US High-Yield OAS (FRED `BAMLH0A0HYM2`): Perzentil der letzten 3 J → Score; Ausweitung = höher | 15 | | F3 | Earnings-Reaktion | "Good news, stock down": fielen Hyperscaler/SMH im Schnitt trotz Gewinn-Beats nach den letzten Earnings? (Reaktion ±2 Tage, auto oder manuell) | 8 | | F4 | Marktbreite | Trend RSP/SPY (gleichgewichtet schlägt kapgewichtet bei Tech-Schwäche → Verschlechterung der Breite → höher) | 7 | **Gesamtscore = Σ(Sub-Score × Gewicht) / Σ(Gewichte).** Summe Defaults = 100. ## 4. Datenquellen (Vorschlag, alle frei) - **Kurse/MA/Drawdown/VIX:** `yfinance` (Yahoo Finance). Alternativ deine IBKR-API. - **Kreditspreads:** FRED-API (`BAMLH0A0HYM2`), kostenloser API-Key. - **Capex-Guidance (F1):** manuell pflegbar in `signals.yaml` (4 Werte/Quartal). Keine zuverlässige Gratis-API; bewusst manuell. - **Earnings-Termine/-Reaktion (F3):** `yfinance` earnings dates + Kursreaktion, optional manuell. ## 5. Konfiguration - `config.yaml`: Gewichte je Signal, Alert-Schwelle, Tickerlisten, Lookback-Fenster. - `signals.yaml`: manuelle Eingaben (F1, optional F3). - Alle Schwellen/Gewichte ohne Code-Änderung anpassbar. ## 6. Tech-Vorschlag (optional) - **Python** + `pandas` + `yfinance` + `requests` (FRED) + `pyyaml`. - Ausgabe als **CLI-Report** (Tabelle + Gesamtscore) und/oder kleines **Streamlit**-Dashboard mit Gauge + Verlaufschart. - Lokal lauffähig, ein `python monitor.py` reicht; Verlauf in lokaler CSV/SQLite für 7/30-Tage-Trend. ## 7. Explizite Nicht-Ziele / Grenzen - Sagt **keinen** exakten Zeitpunkt voraus; ein hoher Score ≠ garantierter Crash. - Die Gewichte sind subjektiv (Garbage-in → Garbage-out): Default ist ein Startpunkt, kein Optimum. - Das eindeutige Signal kommt oft erst mit dem Einbruch — das Tool *senkt* die Reaktionszeit, eliminiert sie nicht. - Reines Informations-/Disziplin-Werkzeug, keine Finanzberatung.