# 2026-06-04 — Exit ladder (80% del TP → esci 80%, runner con stop dinamico): SCARTATO ## La proposta "E se all'80% del TP usciamo con l'80% della posizione, mettiamo uno SL dinamico su quella soglia (profitto lockato) e lasciamo correre il 20% restante?" Idea: uscita scalare — bancare prima la maggior parte del profitto (la soglia all'80% viene toccata più spesso del TP pieno) e tenere un runner free-ride con worst-case alla soglia, best-case oltre il TP. ## Il test (onesto, stessi segnali) `scripts/analysis/partial_tp_ladder.py`: replay intrabar degli STESSI segnali delle 3 fade (params live: `trend_max=3.0, ema_long=200, hurst_max=0.55, min_tp_frac=0.0015`), engine identico a `fade_base` (ingresso a `close[i]`, SL pieno prioritario nello stesso bar, fee 0.10% RT × leva 3 — il ladder NON paga fee extra: due uscite ma stesso notional). Convenzioni conservative: se il bar che tocca la soglia chiude oltre (rientro), il runner è stoppato subito. Griglia: base vs ladder (f=0.8 q=0.8 — la proposta —, f=0.8 q=0.5, f=0.5 q=0.5), FULL + OOS (nov 2023→), BTC+ETH. ## Risultati (proposta f0.8 q0.8) | Sleeve | ret% FULL base→ladder | DD% | ret% OOS | win% OOS | |---|---|---|---|---| | MR01 BTC | 92 → 92 | 13.8 → 10.0 | 41 → 39 | 60 → 65 | | MR01 ETH | 194 → 195 | 16.5 → 15.3 | 134 → 147 | 70 → 75 | | MR02 BTC | 129 → 112 | 19.0 → 17.2 | 66 → 54 | 55 → 59 | | **MR02 ETH** | **2135 → 1319** | 16.2 → 12.7 | **893 → 651** | 75 → 80 | | MR07 BTC | 78 → 78 | 6.8 → 5.2 | 43 → 40 | 64 → 66 | | MR07 ETH | 115 → 96 | 10.6 → 10.6 | 68 → 64 | 66 → 70 | ## Verdetto: NO-GO (gate fallito) 1. **Il runner non corre.** Su centinaia di trade finisce oltre il TP quasi mai (~3% dei partial; 0-15 casi per sleeve) e viene **stoppato alla soglia nel ~60% dei tocchi**. È la fisica mean-reversion: il TP delle fade sta ALLA MEDIA — lì il movimento è esaurito per costruzione. Il runner è un trend-follow della coda, e i breakout rientrano (lezione squeeze). 2. **Il costo è concentrato sui winner migliori**: ogni TP pieno ora esce all'80% della strada sulla quota grossa → MR02 ETH (lo sleeve più forte) −38% ret FULL / −27% OOS. Sharpe per-trade ~piatto: non migliora il rischio/rendimento, scambia ritorno con DD. 3. **Quello che compra** (win-rate +4-5pp, DD −1-4pp) è lo stesso profilo del **vol-target sizing già scartato** ("abbassa il DD ma sacrifica ritorno"); il lavoro anti-DD lo fa già il loss-guard Hurst, che il gate l'ha passato perché taglia SOLO i loser. Nota dal grid: `f0.5 q0.5` su MR07 ETH fa Sharpe OOS 6.58 / win 82%, ma distrugge MR02 (2135→531) → nessuna variante robusta su tutti gli sleeve, niente cherry-picking per-sleeve. Argomento esecutivo in più: il ladder raddoppierebbe la complessità dello shadow appena deployato (v1.0.7: limit reduce-only al TP) — due resting order per posizione, due riconciliazioni, e lo stop dinamico avrebbe il problema dei trigger Deribit (nuovo order_id al trigger → fill non verificabile per order_id). **Conferma della lezione di famiglia:** i tweak d'exit che toccano i winner falliscono il gate (time-stop, vol-target, ADX, vratio… e ora il ladder); l'unico anti-perdite che passa resta il loss-guard Hurst, che riduce l'esposizione nel regime tossico senza toccare le uscite.