fix: CPI/taux/expectations — corrections sources données mai 2026

Indicateurs :
- JPY CPI : null → IMF/IFS DBnomics MoM% (override 0.1% mai 2026)
- AUD CPI : mauvais ID FRED (AUSCPIALLMINMEI→AUSCPIALLQINMEI) + override 1.4% T1 2026
- NZD CPI : mauvais ID FRED (NZLCPIALLMINMEI→NZLCPIALLQINMEI) + override 0.9% T1 2026
- Nouveau data/cpi_overrides.json — surcharge manuelle quand FRED/DBnomics en retard
- Override date-comparé : source auto reprend quand elle dépasse l'override

Taux directeurs :
- GBP : BoE API IUDBEDR primary + IR3TIB01GBM156N fallback FRED (IRSTCB01 inexistant)
- USD/EUR/CAD/NZD : sources déduplicées (DFEDTARU, ECBDFR, BoC Valet, IRSTCB01)

Zone Euro :
- EUR CPI fallback : prc_hicp_mmr (404) → prc_hicp_midx + toIndicatorPct
- EUR chômage : geo=EA21 (2026) + fallback EA20

Expectations :
- data/rate_expectations.json : données correctes 29/05/2026
  (Fed 68bps, ECB 49bps, BoE 53bps, BoJ +32bps, etc.)

UI :
- Tooltip bps : explication "1 bp = 0,01% de taux"
- NarrativeButton : affiche le vrai message d'erreur (était "Erreur Bytez")
- Groq API key manquante : message descriptif avec chemin Vercel

Types :
- IndicatorResult type explicite → corrige erreurs tsc pre-existantes (prev/lastUpdated)
- toPmiIndicator retourne IndicatorResult

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Capucine Gest
2026-05-29 12:13:05 +02:00
co-authored by Claude Sonnet 4.6
parent b833baf495
commit 3a39904ce5
7 changed files with 351 additions and 194 deletions
+53 -118
View File
@@ -1,133 +1,68 @@
[
{
"url": "https://investinglive.com/centralbank/how-have-interest-rate-expectations-changed-after-this-weeks-events-20260522/",
"title": "How have interest rate expectations changed after this week's events?",
"date": "2026-05-22",
"scraped_at": "2026-05-26T11:11:02.377436Z",
"rate_cuts": [],
"rate_hikes": [
{
"cb": "RBNZ (NZD)",
"bps": 76,
"prob_pct": 70,
"prob_desc": "no change at the next meeting",
"direction": "hike"
},
{
"cb": "ECB (EUR)",
"bps": 64,
"prob_pct": 88,
"prob_desc": "rate hike at the next meeting",
"direction": "hike"
},
{
"cb": "BoE (GBP)",
"bps": 48,
"prob_pct": 83,
"prob_desc": "no change at the next meeting",
"direction": "hike"
},
{
"cb": "BoJ (JPY)",
"bps": 46,
"prob_pct": 75,
"prob_desc": "rate hike at the next meeting",
"direction": "hike"
},
{
"cb": "BoC (CAD)",
"bps": 41,
"prob_pct": 99,
"prob_desc": "no change at the next meeting",
"direction": "hike"
},
{
"cb": "RBA (AUD)",
"bps": 25,
"prob_pct": 88,
"prob_desc": "no change at the next meeting",
"direction": "hike"
},
{
"cb": "Fed (USD)",
"bps": 20,
"prob_pct": 99,
"prob_desc": "no change at the next meeting",
"direction": "hike"
},
{
"cb": "SNB (CHF)",
"bps": 19,
"prob_pct": 98,
"prob_desc": "no change at the next meeting",
"direction": "hike"
}
]
},
{
"url": "https://investinglive.com/centralbank/how-have-interest-rate-expectations-changed-after-the-ceasefire-announcement-20260409/",
"title": "How have interest rate expectations changed after the ceasefire announcement?",
"date": "2026-04-09",
"scraped_at": "2026-05-26T11:11:02.377537Z",
"url": "manual-update",
"title": "Rate expectations — 2026-05-29",
"date": "2026-05-29",
"scraped_at": "2026-05-29T08:00:00.000Z",
"rate_cuts": [
{
"cb": "Fed (USD)",
"bps": 7,
"prob_pct": 98,
"prob_desc": "no change at the next meeting",
"bps": 68,
"prob_pct": 79,
"prob_desc": "no change at the upcoming meeting",
"direction": "cut"
},
{
"cb": "ECB (EUR)",
"bps": 49,
"prob_pct": 60,
"prob_desc": "rate cut at the upcoming meeting",
"direction": "cut"
},
{
"cb": "BoE (GBP)",
"bps": 53,
"prob_pct": 96,
"prob_desc": "no change at today's decision",
"direction": "cut"
},
{
"cb": "BoC (CAD)",
"bps": 48,
"prob_pct": 66,
"prob_desc": "no change at the upcoming meeting",
"direction": "cut"
},
{
"cb": "RBA (AUD)",
"bps": 65,
"prob_pct": 92,
"prob_desc": "no change at the upcoming meeting",
"direction": "cut"
},
{
"cb": "RBNZ (NZD)",
"bps": 59,
"prob_pct": 64,
"prob_desc": "rate cut at the upcoming meeting",
"direction": "cut"
},
{
"cb": "SNB (CHF)",
"bps": 4,
"prob_pct": 85,
"prob_desc": "no change at the upcoming meeting",
"direction": "cut"
}
],
"rate_hikes": [
{
"cb": "RBNZ (NZD)",
"bps": 74,
"prob_pct": 70,
"prob_desc": "no change at the next meeting",
"direction": "hike"
},
{
"cb": "ECB (EUR)",
"bps": 59,
"prob_pct": 60,
"prob_desc": "no change at the next meeting",
"direction": "hike"
},
{
"cb": "RBA (AUD)",
"bps": 50,
"prob_pct": 60,
"prob_desc": "rate hike at the next meeting",
"direction": "hike"
},
{
"cb": "BoJ (JPY)",
"bps": 50,
"prob_pct": 51,
"prob_desc": "rate hike at the next meeting",
"direction": "hike"
},
{
"cb": "BoE (GBP)",
"bps": 40,
"prob_pct": 78,
"prob_desc": "no change at the next meeting",
"direction": "hike"
},
{
"cb": "BoC (CAD)",
"bps": 35,
"prob_pct": 93,
"prob_desc": "no change at the next meeting",
"direction": "hike"
},
{
"cb": "SNB (CHF)",
"bps": 21,
"prob_pct": 83,
"prob_desc": "no change at the next meeting",
"bps": 32,
"prob_pct": 80,
"prob_desc": "no change at the upcoming meeting",
"direction": "hike"
}
]
}
]
]