mirror of
https://github.com/caty21/forex-dashboard.git
synced 2026-08-04 08:17:44 +00:00
274c7f534edeb371cee9ce801c6d00c23db273e9
Nouveau sous-onglet "Atlanta Fed" dans le bloc OIS de la card USD, méthodologie alternative aux 30-day Fed Fund Futures demandée : distribution du niveau de taux Fed déduite des options sur futures SOFR 3 mois (CME), publiée quotidiennement par la Fed d'Atlanta (Market Probability Tracker). Affiche Cut/Hold/Hike, la fourchette de taux SOFR implicite (25e-75e percentile), et la distribution complète par fourchette de 25bps pour la fenêtre trimestrielle la plus proche. - .github/scripts/fetch-atlanta-mpt.mjs : télécharge et parse mpt_histdata.xlsx (Atlanta Fed) avec un lecteur ZIP/OOXML maison — le paquet npm "xlsx" a des CVE critiques non patchées sur le registre public (SheetJS a arrêté d'y publier), donc pas de dépendance ajoutée pour ça. - .github/workflows/fetch-atlanta-mpt.yml : quotidien (donnée mise à jour 1x/jour par l'Atlanta Fed), + déclenchement manuel. - lib/atlantaFedMpt.ts + app/api/macro/route.ts : expose la donnée (USD only) via l'API macro existante. Sous-onglet "Réunions" (USD) : ajout du libellé de méthodologie demandé — "Probabilités = somme des % associés à chaque fourchette au-dessus/en-dessous de la fourchette actuelle · Investing.com Fed Rate Monitor, calculées à partir des 30-day Fed Fund Futures (CME)". Vérifié en direct : les deux sous-onglets s'affichent et les chiffres correspondent aux données brutes (72.4% hike / 1.1% cut / distribution 27.2-45.7-21.4-5.7% pour la fenêtre Sep 2026). Note en marge (hors scope, découverte pendant les tests) : /api/expectations prend ~24s à répondre, ce qui bloque l'affichage complet du dashboard (Promise.allSettled attend les 8 fetches). À investiguer séparément. 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%