Ricerca sostituto/miglioria a MR02/ETH (127 strategie + 18 overlay opzioni, verifica avversariale, gate PORT06). Esito: miglioria = no-SL (gia' ~catturata da EXIT-16 live); tail-hedge opzioni NO-GO empirico su prezzi reali. Infrastruttura opzioni REALE (muro ARGO/GEX caduto): - options_fetcher.py: importa lo storico per-strike + market_snapshots da cerbero-bite -> data/options/ (chain bid/ask/IV/greche/OI + pannello regime con net-GEX dealer/gamma-flip/VRP/funding/liquidation). - options_chain.py: loader + skew_curve/premium_levels (aggregati reali) + quote() causale + load_market() (pannello regime). - option_overlay_lab.py: overlay opzioni BS su DVOL (pricing sintetico). - mr02eth_port06_gate.py / eth_collar_gate.py: gate swap-sleeve e collar. - mr02eth_search/options.workflow.js: i 2 workflow. Numeri reali: skew put 10%OTM ~1.1 (liquido), premio ~1.0%/mese; niente strike 10%OTM a 24h (overlay per-trade infattibile); collar standing paga nei crash ma net-negativo a PORT06 (alza OOS DD). Diario + CLAUDE.md aggiornati. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
7.7 KiB
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 onestoexplore_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 nuovooption_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)
- 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. - 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 indata/options/viaoptions_fetcher.py; loaderoptions_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/, loaderoptions_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.
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.