# Sprint 11 — PostFinance-Kursdiagnose (sanitisiert)

**Diagnosezeitpunkt:** 2026-07-26  
**Historischer Stichtag:** 2026-07-24  
**Umfang:** 22 bestätigte, aktive PostFinance-Positionen  
**Sicherheitsrahmen:** Nur sequenzielle GET-Abrufe; keine Secrets und keine vollständigen Providerantworten protokolliert.

## Befunde

1. **Warum waren genau acht Kurse vorhanden?** In `market_prices` lagen für den Stichtag genau acht fehlerfreie `fresh`-Zeilen vor: ADBE, APC, BABA, GOOG, MSFT, NVDA, TSLA und UNH. Der bisherige Sammelpfad war auf zehn Instrumente begrenzt; fehlgeschlagene FMP-Abrufe wurden nicht durch einen historisch verifizierten Fallback ersetzt. Damit konnte ein Lauf weder alle 22 Positionen erreichen noch die 14 Lücken schließen.
2. **Rate-Limit im kontrollierten sequenziellen FMP-Lauf?** Nein. Bei 22 sequenziellen Abrufen mit Pacing wurde kein HTTP 429 / `rate_limited` beobachtet.
3. **FMP-Tarifbeschränkung?** Ja. 16 von 22 kontrollierten historischen Abrufen wurden als HTTP 402 / `endpoint_restricted` klassifiziert. Sechs Symbole lieferten einen gültigen historischen Datensatz. Das Verhalten ist symbol-/endpointbezogen und kein 429-Rate-Limit.
4. **London-ETF-Symbole korrekt?** Ja. `BCHN.L`, `IUIT.L` und `WTAI.L` wurden beim verifizierten historischen Fallback als LSE-Instrumente mit Kurswährung USD und einem Kursdatum 2026-07-24 bestätigt.
5. **Begrenzte `limit=10`-Abdeckung?** Ja. Frontend und Request-Default begrenzten den Sammellauf zusätzlich. Sprint 11 setzt für den Benutzerlauf 100 und verarbeitet damit alle 22; der Backendpfad priorisiert Lücken, arbeitet sequenziell und kann über frische Cachezeilen wiederaufnehmen.
6. **Falsches `suspected_inactive` bei transienten Fehlern?** Ja, im bisherigen generischen Refreshpfad konnte ein einzelnes `missing`-Ergebnis den Instrumentstatus mutieren. Sprint 11 entfernt diese Mutation. Netz-, Tarif-, Auth- und Rate-Limit-Fehler ändern den Aktivstatus nicht mehr.

## Diagnosematrix vor Reparatur

| Name | ISIN | Quellsymbol | Provider-Symbol | Währung | Handelsplatz | letzter erfolgreicher Kurs vor Sprint 11 | kontrollierter FMP-Abruf 2026-07-24 | Fehler-/HTTP-Klasse | Cache vor Sprint 11 | minimale Behebung |
|---|---|---:|---:|---:|---:|---|---|---|---:|---|
| Adobe | US00724F1012 | ADBE | ADBE | USD | NASDAQ | 225.11 USD · 2026-07-24 | fresh · 225.11 USD | Datenzeile | ja | Cache beibehalten |
| Arista Networks | US0404132054 | ANET | ANET | USD | NYSE | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | verifizierter historischer Yahoo-Fallback |
| Apple | US0378331005 | APC | APC.F | EUR | FSX | 282.65 EUR · 2026-07-24 | fmp_endpoint_restricted | HTTP 402 / Tarif | ja | Cache beibehalten; Fallback nur bei neuer Lücke |
| AppLovin | US03831W1080 | APP | APP | USD | NASDAQ | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | verifizierter historischer Yahoo-Fallback |
| ARK Genomic Revolution ETF | US00214Q3020 | ARKG | ARKG | USD | CBOE | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | verifizierter historischer Yahoo-Fallback |
| Broadcom | US11135F1012 | AVGO | AVGO | USD | NASDAQ | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | verifizierter historischer Yahoo-Fallback |
| Alibaba ADR | US01609W1027 | BABA | BABA | USD | NYSE | 112.14 USD · 2026-07-24 | fresh · 112.14 USD | Datenzeile | ja | Cache beibehalten |
| Invesco CoinShares Global Blockchain ETF | IE00BGBN6P67 | BCHE | BCHN.L | USD | LSE | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | `BCHN.L` + LSE + USD verifiziert; historischer Yahoo-Fallback |
| CrowdStrike | US22788C1053 | CRWD | CRWD | USD | NASDAQ | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | verifizierter historischer Yahoo-Fallback |
| Alphabet | US02079K1079 | GOOG | GOOG | USD | NASDAQ | 318.34 USD · 2026-07-24 | fmp_endpoint_restricted | HTTP 402 / Tarif | ja | Cache beibehalten; Fallback nur bei neuer Lücke |
| iShares S&P 500 IT Sector ETF | IE00B3WJKG14 | IUIT | IUIT.L | USD | LSE | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | `IUIT.L` + LSE + USD verifiziert; historischer Yahoo-Fallback |
| McDonald's | US5801351017 | MCD | MCD | USD | NYSE | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | verifizierter historischer Yahoo-Fallback |
| Microsoft | US5949181045 | MSFT | MSFT | USD | NASDAQ | 381.70 USD · 2026-07-24 | fresh · 381.70 USD | Datenzeile | ja | Cache beibehalten |
| Micron Technology | US5951121038 | MU | MU | USD | NASDAQ | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | verifizierter historischer Yahoo-Fallback |
| ServiceNow | US81762P1021 | NOW | NOW | USD | NYSE | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | verifizierter historischer Yahoo-Fallback |
| NVIDIA | US67066G1040 | NVDA | NVDA | USD | NASDAQ | 206.84 USD · 2026-07-24 | fresh · 206.84 USD | Datenzeile | ja | Cache beibehalten |
| OPKO Health | US68375N1037 | OPK | OPK | USD | NASDAQ | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | verifizierter historischer Yahoo-Fallback |
| Palo Alto Networks | US6974351057 | PANW | PANW | USD | NASDAQ | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | verifizierter historischer Yahoo-Fallback |
| Texas Pacific Land | US88262P1021 | TPL | TPL | USD | NYSE | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | verifizierter historischer Yahoo-Fallback |
| Tesla | US88160R1014 | TSLA | TSLA | USD | NASDAQ | 313.03 USD · 2026-07-24 | fresh · 313.03 USD | Datenzeile | ja | Cache beibehalten |
| UnitedHealth | US91324P1021 | UNH | UNH | USD | NYSE | 420.74 USD · 2026-07-24 | fresh · 420.74 USD | Datenzeile | ja | Cache beibehalten |
| WisdomTree Artificial Intelligence ETF | IE00BDVPNG13 | WTAI | WTAI.L | USD | LSE | — | fmp_endpoint_restricted | HTTP 402 / Tarif | nein | `WTAI.L` + LSE + USD verifiziert; historischer Yahoo-Fallback |

## Verifizierte Behebungssemantik

- Primärprovider bleibt die bestätigte Instrumentzuordnung.
- Historischer Auto-Fallback ist ausschließlich für Provider mit `supports_historical_as_of=true` zulässig.
- Yahoo-Fallback wird nur akzeptiert, wenn Provider-Symbol, Handelsplatzalias und Kurswährung zur Mapping-Zeile passen.
- Das gespeicherte Kursdatum muss am oder vor dem Stichtag liegen und höchstens zwei Börsentage zurückliegen.
- Für US-Titel war am kontrollierten Abruf der letzte nicht-leere Yahoo-Schlusskurs vom 2026-07-23; die von Yahoo bereits angelegte Zeile 2026-07-24 hatte noch keinen bestätigten Schlusskurs (`NaN`) und wurde ausdrücklich nicht als Kurs verwendet.
- London-ETF-Schlusskurse waren für 2026-07-24 bestätigt.
- Primär- und Fallbackprovider, Symbol, Börse, Kurswährung, Kursdatum und Abrufzeitpunkt werden gespeichert; die ISIN bleibt unverändert.
