Repository navigation
Add: QC-Py-29 Derivatives-Valuation — BS/arbre/Monte-Carlo sur un seul contrat (#16239 livrable 2) - #16358
Conversation
…l contrat (#16239 livrable 2) Les trois moteurs de valorisation (formule fermee Black-Scholes, arbre binomial CRR, Monte-Carlo antithetique) pricent le meme put/call 6 mois (S0=100, K=105, r=4%, q=1,5%, sigma=25%) et sont compares sur quatre axes mesures + un scenario de liquidite falsifiable. Exec papermill end-to-end 199,4 s, 12/12 cellules code executees, 0 erreur. Mesures : parite put-call a -7,1e-15 ; arbre n=2000 a +7,7e-05, americain 9,2914 (prime d'exercice anticipe +0,1886, croit avec T) ; MC 2e5 a 9,1146 +/- 0,0236 (+0,50 SE), SE en 1/sqrt(n) exact ; grecques : MC a seed commun le plus fidele, gamma FD de l'arbre exactement nul (prix CRR lineaire par morceaux en le spot, kinks ~0,8, pas FD 0,10 entre deux kinks) — prose d'interpretation ecrite sur la mesure ; liquidite : cout median de replication 8,8% de la prime a 1 cent de spread, 176% a 20 cents, crossover mesure ~0,113 USD (0,11% du spot) par dichotomie ; chronometrage BS 155 us / MC 7,6 ms / arbre 13,3 ms. README : ligne QC-Py-29 aux deux tables (statut + contenu), heading Phase 4 etendu ; defaut preexistant corrige — Cloud-12 figurait deux fois avec statuts contradictoires (doc cloud l.82 vs EXECUTE l.95) ; verif firsthand : 3 cellules code, 0 executee → doc cloud est le vrai statut, ligne fausse supprimee. Marqueurs CATALOG-STATUS inchanges. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
✅ No prose/output mismatch detected in the notebooks this PR changed. Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit |
MD hierarchy drift -- df53b2dCette PR augmente le compte de defauts de rendu markdown Corriger (ex. |
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
Golden-Set Execution (H.7 P3)✅ 8/8 notebooks passed (certified reproducible)
Pinned lockfile: |
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
jsboige
left a comment
There was a problem hiding this comment.
VERDICT: LGTM
[Hermes] Review livrable 2 #16239 : QC-Py-29-Derivatives-Valuation.ipynb (26 cellules, 12 code, exec 1–12 contigus, 23 stream outputs).
Vérifications indépendantes — BS recalculé de zéro (erf, mêmes paramètres S0=100, K=105, r=4%, q=1,5%, σ=25%, T=0,5) :
- BS put 9,102864 / call 5,434808 : reproduct au 1e-6 près. Résidu de parité recalculé : −7,1e-15 (identité sans modèle, conforme).
- Décroissance MC : ratios SE mesurés 3,08 → 3,16 → 3,17 entre décades, cohérents avec √10 = 3,162 (le « exactement » du body est à la marge de bruit MC sur la première décade — mineur).
- Prime americain : +0,0966 (T=0,25) → +0,8513 (T=2) — valeurs des outputs conformes au body, croissance avec T vérifiée.
- Coût de réplication / prime : 8,8% / 44,1% / 88,2% / 176,4% recalculés depuis les coûts médians affichés — exacts. Crossover ~0,113 $ : coût à spread 0,113 = 9,07 ≈ prime 9,10 ✓.
- Gamma arbre nul (0,000000) : interprétation kinks CRR linéaire-par-morceaux — plausible et correctement ancrée sur la mesure.
- C.1 sorry-scan des sources : propre ; les 3 exercices sont des stubs assumés avec messages dédiés. Security scan : rien.
Leçon pédagogique (convergence du prix ≠ convergence des dérivées locales) bien posée sur mesure.
(constrainte token : COMMENT only — auteur = jsboige, cap #15511 CoursIA)
[Hermes hermes-pr-review, cycle :03 16/09, host c92df397a786]
Path-collision (organ #13359/#13615)Cette PR #16358 (
Le verdict terminal (#15578) signale qu'un cote de la paire est deja sur |
…Py-29 Arbitrage ai-01 19/09 19:53Z : le critere d'acceptance no 3 de #16239 est porte sur main par #16358 (QC-Py-29, merged 18/09). La ligne navigation de 06b repetait quasi verbatim la ligne 29 -- elle dit maintenant son ajout distinctif (reconstruction from-scratch, put americain, asiatique arithmetique, variables de controle). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
… sur le meme contrat (QC-Py-06b) (#16263) * feat(qc,#16239): notebook 06b valorisation de derives — BS vs arbre vs Monte-Carlo sur le meme contrat Tranche "valorisation algorithmique d'un produit derive" (critere #3 de l'umbrella RNCP41881) : QC-Py-06b confronte trois moteurs (Black-Scholes ferme, arbre CRR, Monte-Carlo) sur un call europeen de reference, avec put americain (arret optimal) et asiatique arithmetique (variable de controle geometrique exacte). Mesures : convergence 1/N oscillante, IC 1/sqrt(M), budgets a cible commune, gain antithetique et CV. 13/13 cellules code executees (kernel python3, 12 s), 0 erreur, 3 figures. README : ligne nav + ligne statut EXECUTE. Catalogue byte-identique. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * docs(qc,#16239): requalifier la ligne README 06b en complement de QC-Py-29 Arbitrage ai-01 19/09 19:53Z : le critere d'acceptance no 3 de #16239 est porte sur main par #16358 (QC-Py-29, merged 18/09). La ligne navigation de 06b repetait quasi verbatim la ligne 29 -- elle dit maintenant son ajout distinctif (reconstruction from-scratch, put americain, asiatique arithmetique, variables de controle). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Grain: DEEP/notebook-python -- lane myia-po-2026:CoursIA -- prev: DEEP/notebook-python #16343
Note G-VAR-3 (adjacence DEEP, advisory) : même situation que #16357 — le livrable 2 de l'epic #16239 est par définition un notebook (RNCP37437BC01C1.5). Substance distincte du grain précédent (valorisation d'options vs élagage). Journée machine multi-genres : qc (#16332), notebook-python (#16343), lean (sœur CoursIA-2 #16328) mergés ; lean/dotnet/tooling en flight.
See #16239 (livrable 2 — module valorisation des dérivés).
Livrable
QC-Py-29-Derivatives-Valuation.ipynb— les trois moteurs de valorisation du cursus (formule fermée Black-Scholes, arbre binomial CRR, Monte-Carlo antithétique) sur un seul contrat (put/call 6 mois, SPY-like : S0=100, K=105, r=4 %, q=1,5 %, σ=25 %), comparés sur quatre axes mesurés + un scénario de liquidité falsifiable :Mesures (run committé)
Exécution réelle (H.1, règle C.2)
Papermill end-to-end, kernel python3, 199,4 s. Sortie des cellules pivots :
execution_countrenseigné, 0 erreur, 0 sortie vide.grep -nE "raise NotImplementedError|assert False|1/0"→ 0 correspondance.README — audit fichier entier (règle §E)
QC-Py-Cloud-12-SectorRotation-Momentumfigurait DEUX fois dans la table de statut avec des statuts contradictoires (« doc cloud » l.82 et « EXÉCUTÉ » l.95). Vérification firsthand : 3 cellules code, 0 exécutée, 0 output → « doc cloud » est le vrai statut, la ligne EXÉCUTÉ (fausse) est supprimée.CATALOG-STATUSinchangés (byte-identiques — le catalogue appartient au cron/CI ; l'entrée QC-Py-29 sera créée par l'automatisation).catalogue
COURSE_CATALOG.generated.*byte-identique à main.🤖 Generated with Claude Code