# 2026-06-08 — Ricerca sostituto/miglioria a MR02/ETH (127 strategie + opzioni)

## Contesto
MR02/ETH è lo sleeve a DD più alto della famiglia fade ed è il maggior drag
dell'esecuzione reale (testnet: −19€ su 7 trade, 0 win, faded un downtrend −14%
in long poi shortato il rimbalzo — whipsaw classico). Obiettivo: trovare un
sostituto o una miglioria con ≥100 agenti su strategie differenti, metodologia
onesta (ingresso eseguibile, fee 0.10% RT, OOS, gate PORT06).

## Cosa è stato fatto
- **Workflow 1 — 109 strategie ETH distinte** (`mr02eth_search.workflow.js`):
  gated-fade, mean-reversion alternative, exit, trend-following, volatilità,
  cross-asset, ML/shape, microstruttura, statistico-robusto. Harness onesto
  `explore_lab`. Poi **verifica avversariale** dei top-24 (audit look-ahead +
  re-implementazione indipendente + robustezza). → 26 survivor, **6 confermati**.
- **Workflow 2 — 18 overlay di OPZIONI** (`mr02eth_options.workflow.js`) +
  sintesi con audit crash reali. Harness nuovo `option_overlay_lab.py`: opzioni
  prezzate Black-Scholes sulla **DVOL** reale di Deribit (storica/gratuita,
  `data/regime/eth_dvol.parquet`), premio dedotto, ipotesi **conservative**
  (skew_mult sui comprati, uscita anticipata solo a intrinseco).
- **Gate PORT06** (`mr02eth_port06_gate.py`): swap di MR02_ETH col candidato,
  equity giornaliera su IDX 2021-2026, ri-misura FULL+OOS Sharpe/DD (cap
  weighting). Sanity check: MR02 ricostruito col mio engine == canonico (Δ 0.00).

## Risultato (gate PORT06; baseline canonico FULL 6.43/3.96, OOS 8.58/1.36)
| variante (swap MR02/ETH) | FULL Sh | FULL DD | OOS Sh | OOS DD |
|---|---|---|---|---|
| EXIT-16 (config LIVE) | 6.73 | 3.67 | 8.80 | 1.23 |
| no-SL nudo | 6.76 | 3.68 | 8.87 | 1.23 |
| no-SL + put/call 10% OTM | 6.78 | 3.64 | 8.86 | 1.23 |
| varratio_gate (PROMOSSO vs canonico) | 6.41 | 3.73 | 8.53 | 1.36 |
| choppiness_donch | 6.37 | 3.35 | 8.47 | 1.32 |
| vrp_neg_dvol_low | 6.36 | 3.22 | 8.37 | 1.43 |

## MIGLIORIA TROVATA (gate vs LIVE EXIT-16, non vs canonico)
Riferimento onesto = config LIVE EXIT-16 (FULL 6.73/3.67 — OOS 8.80/1.23), non
l'intrabar-SL canonico che nessuno gira.

| sleeve ETH | ΔFULL Sh | ΔFULL DD | ΔOOS Sh | ΔOOS DD | esito |
|---|---|---|---|---|---|
| **no-SL + put/call 10% OTM** | **+0.05** | **−0.03** | **+0.06** | 0.00 | ✅ MIGLIORIA deployabile |
| no-SL nudo | +0.04 | +0.02 | +0.07 | 0.00 | ✅ migliora ma sl=0 NON deployabile |
| EXIT16 + put10 | −0.01 | +0.03 | 0.00 | 0.00 | = pari (assicurazione gratis) |
| varratio / vrp / chop / blend | negativi | | | | peggiorano vs EXIT-16 |

**La miglioria = MR02/ETH no-SL + floor a opzioni 10% OTM** (put sui long, call
sugli short). Batte il live EXIT-16 in modo PARETO su 3/4 metriche PORT06 (4ª
piatta). Meccanismo: **rimuovere lo stop** (intrabar/close-confirm su una fade
mean-reverting sono falsi negativi — overshoot che rientra) e dare la funzione
dello stop (cap della catastrofe) a un'**opzione comprata** = protezione a
rischio-definito SENZA il costo whipsaw/falso-stop. Standalone il salto è grande
(Sharpe 8.45→12.14, OOS DD 13%→7%); a portafoglio è modesto (+0.05/+0.06 Sharpe)
perché è 1 sleeve su 17, ma è un miglioramento MISURATO e verificato (soglia
gate +0.03, ottenuto +0.05/+0.06), non rumore.

## Conclusioni (oneste)
1. **Sostituti/blend: tutti peggiorano vs il live EXIT-16.** I candidati gated
   (varratio/vrp/choppiness) e i blend within-sleeve battono solo lo strawman
   canonico, non il live; le loro basse esposizioni diluiscono il motore di
   ritorno (Sharpe −0.08/−0.44). Lo Sharpe ~20 nell'harness era artefatto di
   `sqrt(N_trade)` (onesto ~4.3). → **non sostituire né blendare.**
2. **L'unica miglioria è la coppia no-SL + opzione.** Il no-SL recupera il drag
   dello stop; l'opzione cappa la coda da **gap-through** che EXIT-16 NON protegge
   (esce al close DOPO il buco → prende la perdita piena). Audit crash: FTX nov-22
   −48%→−30%, LUNA-era 2022-09 −63%→−31%, 2018/19 −65%→−30%. Premio ~break-even
   (paga 156% / incassa 149%). È ciò che rende deployabile il no-SL.

## Azione raccomandata
- **Deployare MR02/ETH come no-SL + floor a opzioni 10% OTM** (put long / call
  short, per-trade o settimanale ammortizzato). Batte il live su 3/4 metriche +
  cappa esplicitamente la coda. **Prima del capitale**: validare prezzi/liquidità/
  skew per-strike REALI su Deribit testnet (qui pricing BS sintetico sulla DVOL =
  ATM-IV; stress skew ×1.5 gonfia il premio FULL ma l'OOS regge). Stesso muro
  non-backtestabile di ARGO/GEX sul per-strike, aggirato col proxy DVOL.
- Step intermedio a costo zero: **aggiungere subito il floor opzione all'EXIT-16
  live** (= "pari" sui numeri, ma assicurazione gratis sul gap-through) mentre si
  valida la transizione a no-SL.

## Addendum 2026-06-09 — validazione su PREZZI REALI + integrazione cerbero-bite
- Probe live Deribit mainnet (singolo snapshot): sembrava skew ×1.6 e liquidità
  pessima sul 10% OTM a 1g → l'overlay per-trade pareva bocciato.
- **cerbero-bite** (container accanto) ha però **lo storico per-strike reale** in
  `option_chain_snapshots` (SQLite, dal 2026-05-01, ~110k righe/asset, bid/ask/IV/
  greche/OI, cadenza ~12min). Importato in `data/options/` via `options_fetcher.py`;
  loader `options_chain.py` (skew_curve/premium_levels/quote causale).
- **Correzione dai dati reali (5.5 settimane):** skew put 10% OTM = **×1.1** (liquido,
  spread ~7%) — il ×1.6 del probe era un artefatto del deep-OTM a 1g illiquido. Premio
  reale 10% OTM ≈ **1.0%/mese**. → la miglioria no-SL+opzione **regge** sui prezzi veri.
- **MA vincolo strutturale reale:** gli strike **10% OTM a 24h NON esistono** (n=0 in 5.5
  settimane; Deribit lista solo near-ATM sui tenor corti). L'overlay **per-trade a 24h è
  infattibile**; l'unica struttura eseguibile è una **put settimanale/mensile standing**
  (catastrofe-cap di sleeve), da gateare a parte coi premi reali.
- **Infrastruttura sbloccata:** il muro ARGO/GEX ("opzioni non-backtestabili") è caduto
  per il periodo recente — d'ora in poi le tesi opzioni si validano su prezzi VERI.
  Importato anche il pannello `market_snapshots` (spot/VRP/funding/**net-GEX dealer**/
  gamma-flip/liquidation, dal 2026-03-26) → `data/options/`, loader `options_chain.load_market`.

## Addendum 2 — gate del COLLAR standing (catastrophe-cap auto-finanziato) — NO-GO
Premi reali → collar = put −13% (1.0%/m) finanziata da call +10% (1.05%/m) ≈ premio netto 0.
Gate PORT06 (`eth_collar_gate.py`, BS calibrato skew_put 1.12 / skew_call 1.0, sweep OTM/hedge_frac):
- Il collar **PAGA nei crash** (ETH −40% dic-21 → +6.1%, −30% feb-25 → +6.6%): protezione reale.
- MA **net-negativo a portafoglio**: taglia il FULL DD (−0.2/−0.3pp) ma **costa Sharpe** (FULL e OOS)
  e **ALZA l'OOS DD** (+0.18/+0.28pp) — nell'OOS (no crash profondo, qualche rally) la call corta
  perde e il premio erode. Peggiora il DD che doveva ridurre.
- **Verdetto: il tail-hedge a opzioni NON conviene a PORT06** (né per-trade né collar). Strutturale:
  lo sleeve ETH pesa 6.5% → la **diversificazione è già la protezione di coda** (trade −65% =
  −4% aggregato). La cap auto-finanziata era giusta sul *costo* (~break-even) ma la protezione non
  vale il costo Sharpe/OOS-DD. Le opzioni si chiudono come **NO-GO empirico su prezzi reali**.

## Deploy della miglioria (2026-06-09): MR02/ETH stop-largo sl_atr 3.0
Nessun SOSTITUTO batte il live; la MIGLIORIA deployabile e' allargare lo stop EXIT-16.
Gate stop-width (EXIT-16 close-confirm, swap solo MR02_ETH):
| sl_atr | FULL Sh | FULL DD | OOS Sh | OOS DD | worst-trade |
|---|---|---|---|---|---|
| 2.0 (LIVE) | 6.73 | 3.67 | 8.80 | 1.23 | -48% |
| **3.0** | **6.77** | **3.30** | **8.82** | 1.23 | **-50%** |
| 4.0 | 6.78 | 3.49 | 8.82 | 1.23 | -62% |
| no-SL (sl=0) | 6.76 | 3.68 | 8.87 | 1.23 | -65% (vietato) |
`sl_atr=3.0` domina il live (FULL DD -0.37pp, Sh +0.04/+0.02) e cattura il beneficio del no-SL
(gli stop di meta'-discesa sono falsi negativi) MANTENENDO lo stop di catastrofe (worst -50%, non
-65%) -> regola "mai sl=0" rispettata; 4.0 inizia a perdere la coda. Plateau 2.5-4.0 (tutti > live
su Sharpe). Override SCOPED a MR02/ETH in `_defs.py` (`_fade_params`); gli altri 5 fade non
ri-gateati -> invariati. 93/93 test passano. Deploy: `./scripts/deploy.sh` (cambio live).

## Artefatti riusabili
- `scripts/analysis/option_overlay_lab.py` — overlay opzioni (pricing BS sintetico su DVOL).
- `scripts/analysis/options_fetcher.py` — import storico opzioni reale da cerbero-bite → data/options/.
- `scripts/analysis/options_chain.py` — loader + skew/premi reali + lookup causale (`OptionChain`).
- `scripts/analysis/mr02eth_port06_gate.py` — gate swap-sleeve PORT06.
- `scripts/analysis/mr02eth_search.workflow.js`, `mr02eth_options.workflow.js`.
