diff --git a/CLAUDE.md b/CLAUDE.md index 40eb3f1..1af6f24 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -35,23 +35,37 @@ Prima ondata di ricerca onesta su BTC/ETH certificati (5 track, harness condivis Paper trader: `scripts/live/paper_trend.py` (1d). Test: `tests/test_trend_portfolio.py`. Ri-verifica: `scripts/analysis/{verify_tp01,stress_tp01,tp01_lowfreq}.py`. - **XS01 Cross-Sectional Momentum (Hyperliquid) — DIVERSIFICATORE che migliora il portafoglio** — - `src/portfolio/sleeves.py:_xsec_returns`. Market-neutral su 19 alt liquidi Hyperliquid (1d, dal - 2024): ogni 10g long i 5 piu' forti (ret 30g) / short i 5 piu' deboli, vol-target 20%. **Scorrelato - a TP01 (~−0.06)** e robusto (fee fino 0.3% RT, plateau su k/sottoinsiemi, positivo ogni anno - 2024-26). Aggiunto a TP01 (peso 30%): **portafoglio FULL Sharpe 1.30→1.41, HOLD-OUT 0.31→1.15, DD - giù**. Meccanismo COMPLEMENTARE: lavora nella dispersione (2025-26) quando TP01 e' in cash. - **Caveat:** storia ~2.5 anni; STAT-MODE (book a 19 gambe non eseguibile a 2k, serve ~20k) → monitor - forward. Ricerca `scripts/portfolio/xsec_research.py`, diario `2026-06-19-hyperliquid-xsec.md`. + `src/portfolio/sleeves.py:_xsec_returns`. Market-neutral su **19 alt liquidi major** Hyperliquid (1d, + dal 2024): ogni 10g long i 5 più forti / short i 5 più deboli, vol-target 20%. **Scorrelato a TP01 + (~−0.12).** Affinato (2026-06-19): **(a) blend di lookback [30,90]** (z-score cross-sectional mediato, + come il multi-orizzonte di TP01); **(b) gate di dispersione p30** (entra solo se la dispersione + cross-section del momentum supera il percentile espandente causale, altrimenti flat — XS è rumore in + regime compatto). Standalone FULL Sh **1.50** / HOLD 1.71 / DD 11%, plateau robusto (lookback, gate + p15-35). **Caveat:** storia ~2.5 anni; STAT-MODE (book a 19 gambe non eseguibile a 2k, serve ~20k) → + monitor forward. NB il gate concentra XS nei regimi dispersi (2025-26 = hold-out alta-dispersione). + Ricerca `scripts/portfolio/{xsec_research,xsec_blend,xsec_dispgate}.py`. Diari `2026-06-19-hyperliquid-xsec` + / `-xsec-blend` / `-xsec-dispgate` / `-xsec-universe-expansion` / `-trend-multiasset`. - **PORTAFOGLIO ATTIVO = TP01 (70%) + XS01 (30%)** (`src/portfolio/sleeves.active_sleeves`): - combinato FULL Sharpe **1.41**, HOLD-OUT **1.15**, positivo quasi ogni anno, DD basso. Report: - `scripts/portfolio/run_portfolio.py`. Sleeve a date diverse → outer-join con pesi rinormalizzati. -- **Edge deboli ma reali** (NON standalone, NON migliorano il portafoglio): ML walk-forward - su BTC (Sharpe ~0.57), trend 1h long-short (Sharpe ~1.0), relative-value market-neutral - ETH/BTC (scorrelato ~0.05 ma Sharpe solo 0.27 → troppo debole per alzare lo Sharpe). -- **MORTO/confermato artefatto:** mean-reversion / fade (negativo anche a fee zero su dati - certi — la vecchia libreria +201%/+1238% era pura contaminazione); trend 5m/15m (fee). -- **Soffitto strutturale:** con i soli BTC/ETH lo Sharpe di portafoglio si ferma a **~1.3**. - Combinare TF o aggiungere la RV non aiuta (ridondanza/edge troppo debole). + combinato **FULL Sharpe 1.55, HOLD-OUT 1.55, DD 4.4%**, positivo quasi ogni anno, ~€1.9/g su 2k. + Report `scripts/portfolio/run_portfolio.py`. Sleeve a date d'inizio diverse → outer-join con pesi + rinormalizzati (TP01 da solo 2019-23, blend dal 2024). +- **Universo Hyperliquid: ESPANDERLO NON aiuta XS01** (provato): 52-asset / top-liquidità dinamico / + trend-multi-asset → tutti peggiori (small-cap/memecoin diluiscono il momentum relativo; il trend + multi-asset è ridondante con TP01, corr 0.74). I margini su XS sono nella STRUTTURA DEL SEGNALE + (blend + gate), non nel numero di asset. I 52 parquet certificati restano per ricerca futura. +- **Lead OPZIONI VRP (income short-vol) — quantificato, NON deploy** — `scripts/research/options_vrp_*.py`. + Vendita put settimanali che incassa il volatility risk premium (IV>RV), scorrelato al trend (~0.07). + Premio prezzato BS su DVOL reale (`fetch_dvol.py`) + calibrato su quote REALI cerbero-bite mainnet + (`options_vrp_calibrate.py`): **f reale ≈ 1.0** (non 1.29) → Sharpe ~0.71, DD 33%, coda severa + (settimane −15..−26% su LUNA/FTX). Diversificatore DEBOLE a premio reale, e short-vol da modello. + **Regola: niente short-vol da modello in deploy.** Rivalutare quando cerbero-bite cattura un crash + (per il f di stress reale). Diari `2026-06-19-options-vrp-lab` / `-eval-crypto-backtest-options`. +- **Edge deboli/scartati:** ML walk-forward BTC (Sh ~0.57), trend 1h L/S (~1.0), RV ETH/BTC (Sh 0.27, + regime-luck), calendar/seasonality (buy&hold travestito), volume/vol e momentum-reversal (negativi). +- **MORTO/confermato artefatto:** mean-reversion / fade (negativo anche a fee zero — la vecchia + libreria +201%/+1238% era contaminazione); trend 5m/15m (fee). +- **Soffitto strutturale BTC/ETH-direzionale ~1.3** superato SOLO espandendo a un meccanismo diverso: + cross-sectional su universo Hyperliquid certificato (XS01) → portafoglio Sharpe ~1.55. - **Onestà sul target €50/giorno:** NON raggiungibile su 2000 in 1-2 anni (servono ~130k di capitale o un DD da rovina). La leva non è la scorciatoia; la via è target-vol + capitale + tempo. La strategia che *guadagna* esiste, ma a ~+€1.5/giorno su 2000. @@ -80,13 +94,13 @@ src/strategies/indicators.py → indicatori condivisi (ema, atr, keltner, ...) src/strategies/trend_portfolio.py → TP01: strategia DIFENSIVA robusta (PORT LF1d, >=12h), causale src/portfolio/ → PORTAFOGLIO DI STRATEGIE estensibile (Sleeve + StrategyPortfolio) portfolio.py → combina N sleeve per peso su griglia giornaliera; metriche FULL/hold-out/anno - sleeves.py → REGISTRY sleeve attivi (ora solo TP01). Aggiungere = una riga qui + sleeves.py → REGISTRY sleeve attivi: TP01 (70%) + XS01 (30%). Aggiungere = una riga src/fractal/ → indicatori frattali (patterns.py, indicators.py, similarity.py) src/backtest/engine.py → engine di backtesting riusabile src/backtest/harness.py → harness ONESTO (load BTC/ETH, backtest_signals no-leakage, OOS) src/version.py → APP_VERSION (legge il file VERSION) -scripts/research/ → ricerca post-reset: track{A-E}_*.py (trend/ML/MR/portfolio/xsec) -scripts/portfolio/run_portfolio.py → report del portafoglio attivo (pesi, FULL/hold-out/anno, vs B&H) +scripts/research/ → ricerca: track{A-I}_*.py + options_vrp_*.py + fetch_dvol.py +scripts/portfolio/ → run_portfolio.py (report) + xsec_*.py (ricerca/affinamento XS01) scripts/live/paper_trend.py → paper trader forward-only di TP01 (1d) (no esecuzione reale) scripts/analysis/ → SOLO i tool dati certificati: rebuild_history.py → (ri)costruisce lo storico da Deribit mainnet (base 5m + resample)