Repository navigation
docs: stops, vente, achat et vision moyen/long terme (recherche + décisions) - #103
Conversation
…tude sur le banc) Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…e, cadence Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…iantes calculées une fois, chiffres du doc alignés (25 pb) Review Kilo #100. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
|
||
| 1. **Un stop n'est pas neutre.** En marché sans tendance (marche aléatoire), un stop 0/1 *réduit* le rendement espéré ; il n'aide que s'il y a de la persistance (momentum). Le cadre théorique est celui de Kaminski & Lo. Un stop serré sur un actif qu'on veut garder des années est donc, par construction, un pari contre ta propre vision. | ||
| 2. **Ce qui a de la preuve sur le long terme n'est pas un stop de prix mais une règle de tendance lente** (moyenne mobile 10 mois ≈ MA200, momentum 12 mois) : Faber, Moskowitz-Ooi-Pedersen, Hurst-Ooi-Pedersen (67 marchés, 1880-2016). Elle réduit surtout le **drawdown**, moins le rendement. Mais Zakamulin montre que les performances de ces règles sont souvent gonflées par un biais de anticipation et peu robustes hors échantillon. | ||
| 3. **Notre banc confirme le profil.** Sur SXRV.DE (2022-07 → 2026-09) : buy & hold 21,8 %/an, drawdown −26,7 % ; MA200 avec hystérésis 15,9 %/an, drawdown −15,0 %. Aucun écart de Sharpe n'est statistiquement significatif. **Les stops fixes (−10 à −30 % depuis l'entrée) ne se déclenchent presque jamais** (une fois à −10 %, jamais au-delà) (le drawdown de −26,7 % est mesuré depuis le sommet, pas depuis l'entrée). Les stops suiveurs donnent des résultats **non monotones** (coûts 25 pb par côté ; −15 % : 25,9 %/an ; −10 % : 19,1 % ; −20 % : 19,4 % ; −25 % : 17,5 %) : c'est du bruit de paramétrage, pas un effet. |
There was a problem hiding this comment.
WARNING: Affirmation statistique contredite par le reste du document
« Aucun écart de Sharpe n'est statistiquement significatif » est faux au sens de la source citée (docs/BACKTEST_BASELINES_2026-09-29.md, tableau Robustesse SXRV.DE) : deux écarts ont un IC à 95 % qui exclut 0 — « Sorties actuelles, entrée toujours haussière » (−0,58 [−0,89 ; −0,28]) et « Tendance MA200 + sorties actuelles » (−0,84 [−1,58 ; −0,16]). Le §3 de ce même document rappelle d'ailleurs le premier (ligne 69).
La lecture correcte est : aucune variante de stop ne bat le buy & hold sur le Sharpe (c'est bien le §3 qui l'affirme). Sans la restriction, le résumé d'une page contredit le corps du document et la source.
Reply with @kilocode-bot fix it to have Kilo Code address this issue.
|
|
||
|
|
||
| def main() -> None: | ||
| for ticker in ("SXRV.DE", "CL=F"): |
There was a problem hiding this comment.
SUGGESTION: Aucun paramétrage CLI, alors que l'annexe A est destinée à être rejouée
src/backtest/report.py expose --data-dir, --out, --capital, --cost-bps, --warmup via argparse ; ici les tickers, le répertoire de données et le capital sont codés en dur, ce qui oblige à éditer le fichier pour rejouer l'étude sur un autre actif — précisément ce dont le §7 (« MA200 / momentum / volatilité sur plusieurs actifs et périodes ») aura besoin.
Idem pour le capital : le tableau du §3 annonce « capital 30 000 € », valeur qui n'est répétée que par le défaut de run_backtest, pas par le script.
Reply with @kilocode-bot fix it to have Kilo Code address this issue.
Code Review SummaryStatus: 2 Issues Found | Recommendation: Address before merge Overview
Issue Details (click to expand)WARNING
SUGGESTION
Files Reviewed (2 files)
Points vérifiés sans réserve : le correctif de la fenêtre (état d'entrée/sommet réinitialisé à l'ouverture, Fix these issues in Kilo Cloud Reviewed by free · Input: 0 · Output: 0 · Cached: 0 |
Reprise de #100 (fermée automatiquement à la suppression de sa base après le merge de #99). Contenu identique, rebasé sur main, remarques Kilo intégrées.
🤖 Generated with Claude Code