negotiated-structure.risk.exposure — exposition et risque de coût
Objectif
Ce module produit une vue d'exposition au risque de coût pour la structure
contractuelle recommandée. Il transforme les trois scénarios de prix du module
lock-vs-float (spec-2bis#9) en une bande de coût tout compris avec un chiffre de
risque au pire cas — le cadrage que les directeurs énergie et les courtiers
expérimentés utilisent réellement pour évaluer un contrat.
Il remplace la sensibilité déterministe ±10%/±20% sur la seule composante
énergie (reference-price/index.ts) par un **cadre de risque sur le notionnel
total annuel**.
---
Trois scénarios → approximation de percentiles
Le module réutilise les trois scénarios équipondérés de spec-9
(computeLockVsFloat), chacun avec une pondération de 1/3 :
| Scénario | Multiplicateur | Rôle dans l'exposition |
|-----------|----------------|----------------------|
| Baissier | ×0,85 | ≈ p05 — coût minimal |
| Central | ×1,00 | ≈ p50 — meilleure estimation |
| Haussier | ×1,15 | ≈ p95 — coût maximal |
Important : ces percentiles sont une approximation par 3 points,
non une distribution Monte-Carlo. La largeur de la bande dépend de
l'hypothèse de volatilité de ±15 % annualisé (voir lock-vs-float/explanation.md).
Ce point est divulgué explicitement dans la sortie du module (methodology_note).
---
Composantes calculées
Coûts tout compris par scénario
Pour chaque scénario, le coût tout compris (€/MWh) est :
```
coût_allin(scénario) = énergie_mixte(scénario) + composantes_non-énergie
```
où :
énergie_mixte(scénario) = la composante énergie de la structure mixte dans
ce scénario, issue de ScenarioCost.blended_energy_eur_mwh (spec-9)
composantes_non-énergie = TURPE + accise + CSPE + CEE + capacité + frais
fixes (invariants selon le scénario, déduits de expected_cost_eur_mwh de spec-9)
Delta au pire cas (champ principal)
```
worst_case_delta_eur_year = (p95_eur_mwh − p50_eur_mwh) × annual_mwh
```
C'est la dépense supplémentaire maximale par rapport à l'estimation centrale
dans le scénario haussier. C'est le chiffre à communiquer au directeur énergie.
Bande notionnelle annuelle
```
notional_range = {
low_eur: p05_eur_mwh × annual_mwh, # scénario baissier
central_eur: p50_eur_mwh × annual_mwh, # scénario central
high_eur: p95_eur_mwh × annual_mwh, # scénario haussier
}
```
---
Indicateur de risque (`risk_label`)
L'indicateur est dérivé du delta au pire cas en pourcentage du coût central :
```
worst_case_delta_pct = (p95_eur_mwh − p50_eur_mwh) / p50_eur_mwh
```
| Valeur | Indicateur | Profil typique |
|-------------|-------------|----------------|
| < 3 % | faible | Structure principalement fixe |
| 3 % à 8 % | modéré | Structure mixte équilibrée |
| ≥ 8 % | élevé | Structure majoritairement indexée ou opportuniste |
Ces seuils ont été calibrés par rapport au modèle de volatilité ±15 % :
---
Portée et limites
LockVsFloatResult déjà calculé et produit l'exposition — aucun E/S.
aux données publiées CRE et EPEX SPOT.
ou d'autres risques non-marché.
scénario — une approximation valide pour les contrats annuels où ces coûts
sont réglementairement stables.