Files
PythagorasGoal/docs/diary/2026-05-28-honest-strategies.md
T
Adriano 783fa5546f feat(analysis): miglioramenti - ROT02 dual-momentum + portafoglio (DD 12%)
Obiettivo: alzare Acc, ridurre DD, migliorare PnL. Leve oneste, no tuning per-anno.

- ROT02: overlay absolute-momentum (cash se BTC<SMA100) su ROT01. Domina su tutte
  le metriche: FULL +679->+1095%, OOS +44->+98%, DD 53->40%.
- DIP01 market-gate (variante low-DD): alza Acc (ETH 52->57, SOL 49->52) e dimezza
  il DD (ETH 53->23), al costo di PnL. De-risking opzionale; su BTC il gate va evitato.
- PORT01: portafoglio equal-weight giornaliero delle 3 sleeve anti-correlate
  (DIP01+TR01+ROT02). DD 12% (sotto ogni sleeve), CAGR 45%, 2022 bear -1% (era -30%).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-28 23:49:14 +02:00

7.5 KiB
Raw Blame History

2026-05-28 — Ricerca onesta di nuove strategie (post-squeeze)

Contesto e mandato

Dopo aver scoperto che l'intera famiglia squeeze-breakout era un artefatto di look-ahead (accuratezze 76-82% svanite sotto ingresso eseguibile), il mandato è stato: trovare in modo onesto almeno 3 strategie attendibili, testate su ~8 anni e su più criptovalute, con le fee incluse nella valutazione, partendo da €1.000 con l'obiettivo (aspirazionale) di €50/giorno. Esplorare anche idee fuori dal comune e l'uso combinato di più crypto e timeframe.

Metodologia (engine onesto)

Tutto il lavoro usa un unico engine condiviso (scripts/analysis/honest_lab.py) con questi vincoli anti-illusione:

  1. Ingresso eseguibile. Ogni segnale alla barra i usa solo dati fino a close[i] e l'ingresso avviene a close[i] (ciò che il worker live vede e può eseguire). Disponibile anche l'ingresso più conservativo a open[i+1].
  2. Uscita realistica. Take-profit / stop-loss valutati intrabar su high/low, in modo conservativo (SL prima del TP nello stesso bar), più time-limit. Una posizione per volta (non-overlap), capitale composto.
  3. Fee di prim'ordine. Tutto è NETTO dopo fee round-trip realistiche Deribit (0.10% RT) moltiplicate per la leva (3x), con sweep fino a 0.20% RT.
  4. Validazione severa. FULL + out-of-sample (ultimo 30%) + conteggio anni positivi + sweep fee + griglia parametri + test su 8 crypto (BTC, ETH, SOL, BNB, XRP, LTC, DOGE, ADA, 2018→2026).

Lezione madre

Shortare le crypto perde OOS in modo sistematico in questo campione. Sia la mean-reversion sul lato short, sia il momentum short, crollano fuori campione: il periodo 2018-2026 è net-bull e ogni rialzo "estremo" tende a continuare invece di rientrare. Tutte le configurazioni che sopravvivono oneste sono long-biased. È un fatto da dichiarare: parte della performance OOS è correlata al beta rialzista delle crypto. Le strategie aggiungono timing sopra quel beta, non lo eliminano.

Le 3 strategie selezionate (meccanismi distinti)

Codice Meccanismo TF Asset robusti OOS netto (fee 0.10% RT) DD Anni+
DIP01 Dip-buy z-score reversion (long-only) 1h BTC, ETH, SOL BTC +59% · ETH +224% · SOL +13% 23-55% 6-7/9
TR01 EMA 20/100 trend-following (long-only) 4h BNB, BTC, DOGE, SOL, XRP BTC +27% · DOGE +53% · XRP +29% 29-53% 4-6/8
ROT01 Rotazione cross-sectional momentum sul paniere 1d intero paniere (8) +44% 53% 5/7

Dettagli e riproducibilità: scripts/analysis/honest_final.py (tabella di validazione unica), honest_rotation.py, honest_trend.py, honest_candidates.py, honest_diag.py/honest_diag2.py (diagnostica long/short e filtro trend).

DIP01 — compra le capitolazioni

Long-only: entra quando lo z-score del prezzo rispetto alla media a 50 barre scende sotto 2.5 (capitolazione), prende profitto al rientro verso la media, SL a 2.5·ATR. È la versione robusta e onesta della famiglia mean-reversion: regge lo sweep fee fino a 0.20% RT (BTC +45% OOS anche a 0.20%). Funziona sui major (BTC/ETH/SOL); sugli alt molto parabolici (DOGE/BNB) un dip fisso continua a scendere e non ha edge.

TR01 — cavalca i trend

Long-only: in posizione quando EMA(20) > EMA(100) sul 4h, altrimenti cash. Poche operazioni (≈200 flip in 8 anni) ⇒ le fee non sono letali. È complementare a DIP01: guadagna nei regimi di trend, dove la reversione soffre.

ROT01 — la più affidabile e "fuori dal comune"

Una sola strategia che usa tutto il paniere in un unico book: ogni giorno ordina le 8 crypto per momentum (rendimento a 60 giorni) e alloca a parti uguali alle 2 migliori con momentum positivo, il resto in cash. Cattura la dispersione tra crypto (gli alt forti corrono molto più di BTC nei bull) senza shortare nulla. È param-insensitive (tutte le combinazioni lookback/top-k sono positive OOS) e regge le fee fino a 0.20% RT (+41% OOS). Risponde direttamente alla richiesta di combinare più crypto e un timeframe diverso in un'unica strategia. Per-anno: 2020 +33% · 2021 +181% · 2022 29% (bear) · 2023 +43% · 2024 +59% · 2025 +6% · 2026 10% (YTD).

Diversificazione

I tre meccanismi coprono regimi diversi e in larga misura anti-correlati: reversione (DIP01), momentum di singolo asset (TR01), forza relativa cross-asset (ROT01). Eseguirli insieme produce una curva di equity più liscia del singolo.

Onestà sull'obiettivo €50/giorno

Va detto chiaramente: €50/giorno su €1.000 in pochi mesi non è raggiungibile a rischio sano. Significa ~€18.250/anno, cioè ~1.825%/anno; gli edge onesti qui trovati rendono il 30-60% OOS su orizzonti pluriennali. Le strade per avvicinare quel numero sono: (a) far crescere il capitale per anni con interesse composto — €50/giorno diventa plausibile solo quando il capitale è molto più grande; (b) alzare la leva, che però aumenta proporzionalmente il drawdown (già 23-55%) ed espone a rovina; (c) aggiungere capitale. Nessuna di queste è una scorciatoia. La proposta onesta è un portafoglio delle 3 strategie a leva moderata, puntando alla sopravvivenza e alla crescita composta, non al target giornaliero immediato.

Miglioramenti (alzare Acc, ridurre DD, migliorare PnL)

Leve oneste e documentate, senza tuning sui singoli anni (scripts/analysis/honest_improve.py, honest_improve2.py):

ROT02 — dual-momentum overlay (migliora TUTTO)

Alla rotazione cross-sectional di ROT01 si aggiunge un overlay di absolute momentum: cash quando BTC è sotto la sua media a 100 giorni (mercato risk-off). Taglia i bear di sistema (gli unici anni rossi di ROT01).

FULL% OOS% DD%
ROT01 base +679 +44 53
ROT02 (SMA100) +1095 +98 40

PnL su, DD giù: dominanza su tutte e tre le metriche. Param-insensitive (SMA100-150).

DIP01 — market-gate (variante low-DD)

Comprare i dip solo quando BTC è risk-on alza l'Acc (ETH 52→57%, SOL 49→52%) e dimezza il DD (ETH 53→23%, SOL 25→13%), al costo di parte della PnL (meno trade). È de-risking, non un pasto gratis: utile per chi vuole una curva più liscia. Su BTC il gate va evitato (i dip migliori di BTC arrivano proprio quando BTC è sotto la propria SMA), quindi DIP01 base resta la versione di riferimento per BTC.

PORT01 — portafoglio combinato (il vero motore di risk-reduction)

Equal-weight giornaliero ribilanciato delle 3 sleeve anti-correlate (DIP01 BTC + TR01 basket + ROT02). La diversificazione porta il DD del portafoglio sotto quello della sleeve meno rischiosa, mantenendo una CAGR alta.

Sleeve ret% DD% CAGR%
DIP01 BTC +322 15 31
TR01 basket +591 27 43
ROT02 dual-mom +771 40 49
PORTAFOGLIO +642 12 45

Per-anno portafoglio: 2021 +203% · 2022 1% (bear neutralizzato, era 30% su ROT) · 2023 +47% · 2024 +50% · 2025 +14% · 2026 2% (YTD). Nessun anno realmente negativo, DD massimo 12%, CAGR 45%. È la configurazione di deployment raccomandata.

Prossimi passi

  • Integrare DIP01 nel worker (già compatibile: Signal con tp/sl/max_bars).
  • Trailing-stop ad ATR per TR01 (per alzarne l'Acc e ridurne ulteriormente il DD).
  • Estendere il worker per strategie position-based (TR01) e di portafoglio (ROT01).
  • Backtest del portafoglio combinato con ribilanciamento del capitale.
  • Walk-forward rolling (oltre al singolo split 70/30) per confermare la stabilità.