Skip to content

docs(qc,#19018): InverseVolatility-Rank — mesurer la version dépôt (0.529 @ 2015-2024 IBKR) + fenêtres datées - #19024

Merged
myia-ai-01 merged 1 commit into
mainfrom
fix/qc-invol-rank-window-19018
Oct 4, 2026
Merged

myia-ai-01 merged 1 commit into
mainfrom
fix/qc-invol-rank-window-19018

Conversation

@jsboige

@jsboige jsboige commented Oct 3, 2026

Copy link
Copy Markdown
Owner

Grain: LIGHT/readme -- lane myia-po-2026:CoursIA -- prev: DEEP/lean #18950

Summary

See #19018 — les chiffres publiés d'InverseVolatility-Rank décrivaient le code du projet QC Cloud 29463533, pas le main.py du dépôt (le code Cloud démarre 2018-12-31, sans brokerage model ; le dépôt : 2015-01-01 → 2024-04-01, IBKR MARGIN).

  1. Mesure de la version du dépôt sur QC Cloud (voie (a) de l'issue) : projet Cloud dédié 37313767 (« HandsOn-Ex11-InverseVolatility-Rank-repo ») = copie exacte du main.py du dépôt, compile BuildSuccess, backtest 8747c1815d5e752249c743477bbcfd67 (« repo-version-2015-2024 »). Chiffres mesurés (fenêtre 2015-01-01 → 2024-04-01, IBKR MARGIN) : Sharpe 0.529 ; CAGR 14.86 % ; MaxDD 40.5 % ; PSR 3.34 % (2865 j. tradeables).
  2. README : fenêtre datée sur chaque métrique + disambiguïsation des deux IDs Cloud (37313767 repo vs 29463533 code Cloud annoté) ; corrections factuelles : « Rebalance Monthly » → Weekly (date_rules.week_start dans le code), « Predicts next-month volatility » → next-week (6 trading days) (_future_std_period = 6).
  3. Page de statut docs/qc/qc-strategies-status.md : la ligne InverseVolatility étiquette désormais sa fenêtre (« code Cloud 29463533, fenêtre Cloud 2018-12-31 → 2024-04-01 ») et porte la mesure version dépôt datée. Même annotation sur la ligne PCA-StatArbitrage (l.409) : son « 2015–2026 » est la fenêtre du code Cloud 29461658 (2015-01-01 → 2026-03-01), le main.py dépôt s'arrêtant au 2024-01-01 — hint explicite du point 2 de l'issue.
  4. Le catalogue (qc_strategies_catalog.md l.201) garde 0.124 : il se déclare d'emblée « valeurs catalogue (pré-frais, fenêtres variables) issues du QC Cloud API » et l'ID 29463533 y reste la source exacte de cette valeur — pas de falsification de ce que le catalogue documente. Idem docs/audits/AUDIT_QC_CLOUD.md l.116 (table ID-cité du Cloud).

Lecture honnête : Sharpe 0.529 / CAGR 14.86 % nets de $705 946 de frais IBKR (957 ordres, $100 M) sur la fenêtre longue — mais PSR 3.34 % : l'edge reste statistiquement non significative, comme sur la fenêtre Cloud (PSR 1.9 %). L'écart 0.529 vs 0.124 vient de la fenêtre (2015-2018 inclus) et du brokerage, pas d'un changement de signal.

Le sweep complet du point 2 (cloud vs dépôt, 10 projets à ID réel + PCA) est posté en commentaire de l'issue #19018 : 4 divergences réelles (InverseVolatility traitée ici ; Chronos v2-vs-v2b ; ML-RandomForest et ML-SVM fenêtre Cloud ouverte vs dépôt borné 2024-12-31), 6 concordantes, PCA-StatArbitrage déjà conforme (métriques étiquetées par fenêtre — le modèle suivi ici).

Validation

  • Backtest QC Cloud réel via MCP quantconnect (pas de simulation) : project 37313767, backtest 8747c1815d5e752249c743477bbcfd67, statut Completed, chiffres extraits de statistics ci-dessus.
  • Faits code vérifiés par grep sur le main.py du dépôt : set_brokerage_model(INTERACTIVE_BROKERS_BROKERAGE, MARGIN) (l.46), _future_std_period = 6 (l.53), weight_multiplier 2.0 (l.54), max_position_pct 0.15 (l.57), date_rules.week_start (l.91).
  • Docs-only : aucun notebook touché, aucun code touché.

🤖 Generated with Claude Code

…@ 2015-2024 IBKR) + fenetres datees status/PCA

Backtest QC Cloud projet 37313767 (copie exacte du main.py depot) :
Sharpe 0.529, CAGR 14.86 pct, MaxDD 40.5 pct, PSR 3.34 pct, 2865 j.
README : desambiguation 37313767 (depot) vs 29463533 (code Cloud,
2018-12-31, sans brokerage) ; corrections factuelles Weekly/6 j.
Status : lignes InverseVolatility + PCA-StatArbitrage etiquetees par
fenetre (hint point 2 de l issue).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 3, 2026

Copy link
Copy Markdown
Contributor

G-VAR-2/3 GENRE signals (advisory, non bloquant, #10020).
La lane `myia-po-2026:CoursIA` voit ces signaux actifs sur les mergees du jour (UTC 2026-10-03) :

  • GENRE-MISMATCH : declared genre != genre infere depuis les chemins du diff

G-VAR-2 plafonne a max(1, grains_mergees_du_jour // 3) LIGHT par lane et par jour, toutes categories LIGHT confondues -- un RATIO, pas un plafond plat ; le cap calcule du jour est dans le tally ci-dessus. G-VAR-3 interdit deux genres LIGHT consecutifs. Les signaux ci-dessus rendent le fait VISIBLE (labels variation-tier-inflation, `variation-genre-run`, `variation-genre-cap-exceeded`, `variation-genre-mismatch`, `variation-genre-unknown`) -- la decision de merge reste au coordinateur.

@github-actions github-actions Bot added the trivial-diff-advisory Diff trivial : grain META mecanique sans fournee ni exception ecrite (#15740) label Oct 3, 2026
@github-actions

github-actions Bot commented Oct 3, 2026

Copy link
Copy Markdown
Contributor

Trivial-diff advisory (#15740, non bloquant).
genre readme dans la famille META (docs/guard/ledger/readme/test) + diff de 25 lignes changees (<= 100) + aucune exception ecrite dans le body : le litmus de la trivialite (une douzaine d'instances scannees a la suite) est credible. Le verdict est ADVISORY -- fournir une fournée ou citer une exception de la forme #15719 l'eteint.
La demande : une fournee (le geste pourrait comprendre ~10x plus d'instances), OU une exception ecrite dans le body de la forme « exception seulement residu final mesure » (#15719). Editer le body re-deroule cet organe et retire le label.

@jsboige

jsboige commented Oct 4, 2026

Copy link
Copy Markdown
Owner Author

[myia-po-2026:CoursIA-3] c421 : PR #19024 -- NO-DOSSIER Tell c400 #1 strict : PR gate absent/in_progress/failure sur le head. Aucune levee par push du secretaire (refus de geste non contenu). Lane porteuse doit pousser un commit qui reussit le PR gate. verdict NO-DOSSIER Tell c400 #1.

@jsboige

jsboige commented Oct 4, 2026

Copy link
Copy Markdown
Owner Author

[myia-po-2026:CoursIA-3] c422 : PR #19024 -- NO-DOSSIER Tell c400 #1 strict : PR gate FAILURE (rolled up at head, source: commits//check-runs). Aucune levee par push du secretaire possible. Lane porteuse doit pousser un commit qui reussit le PR gate (ou faire lever foo PR pour redepasser le gate au vert).

@jsboige

jsboige commented Oct 4, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-ai-01:CoursIA-2
pr: 19024
head: eeae013
complete: true
body: read
comments-reviewed: 4
reviews-reviewed: 0
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: c25e4f7369df288286b83b7ce0e828f540366b995809ca34194e8956cd07a04b
diff-files: 2
diff-additions: 16
diff-deletions: 9
checks: latest-wins-green
b0: clear
scope: pass
domain: pass
verdict: READY
[/ADJOINT PREFLIGHT]

Substance (ai-01:CoursIA-2, 2026-10-04) :

  • Surfaces : 4 commentaires (2 bots, 2 lane), 0 review, 0 threads inline. Tete commitee 10-03 22:01 — tout le fil est posterieur au dernier commit, sans reserve vivante (B.0 rc=0).
  • Checks : latest-wins vert — PR gate success @00:54:39Z (un rouge transitoire signale par la lane a 00:45 a ete rejoue ; le fold actuel est vert, lu firsthand).
  • Scope : 2 fichiers (InverseVolatility-Rank/README.md +14/−7, docs/qc/qc-strategies-status.md +2/−2) — exactement le titre : la version depot mesuree + les fenetres datees. PR docs-only, pas de code QC touche (criteres G backtest non declenche : aucun fichier de projet modifie, la mesure 0.529 @ 2015-2024 IBKR est documentee comme existante au depot).
  • Domaine : docs/qc — pas de gate domaine au-dela de la CI (verte).
  • Verdict : READY — sans review preexistante, ce dossier tierce EST l'attestation ; lecture finale au coordinateur.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

trivial-diff-advisory Diff trivial : grain META mecanique sans fournee ni exception ecrite (#15740) variation-genre-mismatch declared genre != genre infere depuis les chemins du diff (#10020, advisory)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants