mirror of
https://github.com/caty21/forex-dashboard.git
synced 2026-08-04 08:17:44 +00:00
f5417dec175e4f5fe81bb883319826b7c0d6302e
Nouvel onglet principal "Scénario", logique inversée par rapport aux autres onglets Taux : au lieu de déduire une probabilité depuis les prix de marché, l'utilisateur choisit lui-même un scénario de hikes/cuts à chaque réunion FOMC et l'outil déduit où devrait se situer le SOFR implicite si ce scénario se réalisait — exactement la logique de CME SOFRWatch. Méthodologie (2 spreads, comme SOFRWatch) : SOFR implicite ≈ borne basse Fed + (EFFR − borne basse) + (SOFR − EFFR) CME calcule ces spreads depuis les prix forward des futures SOFR 1 mois vs Fed Funds (SR1−ZQ, données de marché propriétaires). On les approxime avec la moyenne réalisée historique EFFR/SOFR (FRED, gratuit) — limite clairement documentée dans l'UI et le code, ce n'est pas un prix forward-looking. - app/api/scenario-spreads/route.ts : calcule les 2 spreads depuis FRED (EFFR, SOFR, fenêtre ~60j) + la fourchette Fed actuelle (rate_decisions.json). - components/ScenarioTab.tsx : constructeur de scénario par réunion FOMC (réutilise les dates déjà maintenues dans rate-probabilities.json), chart comparatif "Votre scénario" vs "Marché (OIS)" sur l'échelle SOFR. Vérifié en direct : les spreads calculés (EFFR +13bps, SOFR-EFFR -1bps) donnent un SOFR implicite actuel de 3.62%, qui correspond exactement au SOFR réel du jour — et les clics sur le constructeur de scénario cumulent correctement (step-line vérifié visuellement sur 2 hikes successifs). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Forex Macro Dashboard — v8.0
Tableau de bord macroéconomique pour 8 devises majeures (USD, EUR, GBP, JPY, CHF, CAD, AUD, NZD).
Installation
1. Installer Node.js
Télécharger Node.js LTS sur nodejs.org (inclut npm).
2. Installer les dépendances
cd forex-dashboard
npm install
3. Configurer les clés API
Le fichier .env.local est déjà créé avec tes clés FRED et Bytez.
Ajouter ta clé OANDA quand disponible :
OANDA_API_KEY=ta_clé_oanda_ici
Clé FRED gratuite : fred.stlouisfed.org → My Account → API Keys
Compte OANDA gratuit : oanda.com → demo → API Access → Generate token
4. Lancer en local
npm run dev
Ouvrir http://localhost:3000
Données rate expectations (banques centrales non-USD)
pip install requests beautifulsoup4
python scripts/investinglive_scraper.py --n 1 --output json --save data/rate_expectations.json
Un snapshot de démonstration (mai 2026) est inclus dans data/rate_expectations.json.
Structure
forex-dashboard/
├── app/
│ ├── page.tsx ← dashboard principal
│ ├── layout.tsx
│ ├── globals.css
│ └── api/
│ ├── fred/route.ts ← proxy FRED (cache 1h)
│ ├── fx/route.ts ← Frankfurter ECB (taux spot)
│ ├── cot/route.ts ← CFTC COT parser
│ ├── sentiment/route.ts ← OANDA retail sentiment
│ ├── expectations/route.ts ← rate_expectations.json
│ ├── narrative/route.ts ← Bytez LLM (Llama 3.1)
│ ├── yields/route.ts ← obligations 10Y (FRED, ECB, BoE, BoC)
│ └── drivers/route.ts ← Gold, Brent, VIX, HY/IG spreads
├── components/
│ ├── CurrencyCard.tsx ← card par devise
│ ├── DriversBar.tsx ← barre globale des drivers
│ └── NarrativeButton.tsx ← bouton analyse IA Bytez
├── lib/
│ ├── types.ts ← types TypeScript
│ ├── constants.ts ← séries FRED corrigées, COT codes
│ └── scoring.ts ← algorithme §4 + §6 (divergences)
├── scripts/
│ └── investinglive_scraper.py ← scraper rate expectations
├── data/
│ └── rate_expectations.json ← snapshot mensuel BC
└── .env.local ← clés API (gitignored)
Sources de données intégrées
| Catégorie | Source | Clé |
|---|---|---|
| Taux directeurs, CPI, PIB, Retail Sales, Emploi | FRED | oui |
| FX Spot | Frankfurter (ECB) | non |
| Obligations 10Y USD | FRED DGS10 | oui |
| Obligations 10Y EUR | ECB Data Portal | non |
| Obligations 10Y GBP | BoE API IUDMNPY | non |
| Obligations 10Y CAD | BoC API | non |
| COT Positionnement | CFTC CSV public | non |
| Sentiment retail | OANDA v20 API | oui (OANDA) |
| Rate expectations BC | investinglive.com scraper | non |
| Analyse narrative | Bytez (Llama 3.1) | oui (Bytez) |
Déploiement Vercel
git init && git add . && git commit -m "init forex dashboard"
# Créer repo privé sur github.com puis :
git remote add origin https://github.com/TONUSER/forex-dashboard.git
git push -u origin main
Sur vercel.com : New Project → importer le repo → Settings → Environment Variables → copier les variables de .env.local.
Note : le scraper Python ne tourne pas sur Vercel. Lancer localement puis committer data/rate_expectations.json.
Description
Languages
TypeScript
91.7%
JavaScript
6.4%
Python
1.5%
VBScript
0.3%