Integra il lavoro della linea di ricerca parallela (AdrianoDev), verificato indipendentemente
col mio gauntlet onesto (regge il hold-out 2025-26 su entrambi gli asset, plateau 1h/4h/1d):
- src/strategies/trend_portfolio.py TP01 (TSMOM 30/90/180 vol-target 20% lev2x long-flat, 50/50 BTC+ETH)
- src/backtest/harness.py harness onesto (load + backtest_signals no-leakage + OOS)
- scripts/research/track{A,B,C,D,E}_*.py + trackD_timing.py (le 5 track della ricerca)
- scripts/live/paper_trend.py paper trader forward-only di TP01 (no esecuzione reale)
- tests/test_trend_portfolio.py (5 test, passano) + 6 diari trackA-E + synthesis
- CLAUDE.md aggiornato con l'esito ricerca (TP01 vincente, mean-rev morto, onesta su €50/g)
Squash (non merge) per NON portare in git i ~68MB di data/_feed_backup/*.bak che il branch
aveva committato per errore: esclusi + data/_feed_backup/ e data/paper_trend/ ora gitignorati.
Storia granulare del branch conservata sul ref origin/strategy-research-2026-06.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
3.7 KiB
2026-06-19 — Sintesi ricerca post-reset (5 track) e verdetto
Prima ondata di ricerca sui dati certificati BTC/ETH (Deribit mainnet, ~2 bps vs
Coinbase USD), con harness onesto condiviso src/backtest/harness.py (ingresso eseguibile
a close[i], fee 0.10% RT, exit intrabar TP/SL, OOS/per-anno). Branch
strategy-research-2026-06.
I 5 track
| Track | Famiglia | Esito |
|---|---|---|
| A | Trend/Momentum (TSMOM, Donchian, EMA, vol-scaled) | 5m/15m morti (fee); 1h = residuo reale ma celle singole non robuste |
| B | ML walk-forward (logistic/GBM su feature di forma) | edge debole ma REALE su BTC (+83% OOS, Sharpe 0.57), ~+0.58 €/d su 2000 |
| C | Mean-reversion / range (fade, RSI2, VWAP) | MORTO — negativo anche a fee=0. Conferma: la vecchia libreria fade era artefatto |
| D | Trend portfolio vol-targeted BTC+ETH | ✅ DEPLOYABLE — robusto, positivo ogni anno |
| E | Cross-sectional BTC↔ETH + ensemble | RV debole (muore a 1.5bps/gamba); ensemble dimezza il DD ma non alza il ritorno |
Il vincitore: Track D — trend portfolio (l'unico che guadagna in modo robusto)
TSMOM multi-orizzonte (blend 1-3-6 mesi su barre 1h), vol-targeting (posizione ∝ 1/vol realizzata, target 20% annuo), portafoglio 50/50 BTC+ETH, fee 0.10% RT. Un solo set di parametri per entrambi gli asset.
- LONG-SHORT 50/50: CAGR +14.2%, Sharpe 1.00, maxDD 18.9%, positivo ogni anno 2019-2026.
- LONG-FLAT 50/50 (migliore risk-adj): CAGR +15.9%, Sharpe 1.32, maxDD 13.3%.
- Robusto: plateau di Sharpe ~1.0 su griglia target-vol/leva/orizzonti; regge fee fino a 0.40% RT; su entrambi gli asset; non è un picco fortunato (a differenza delle "star" di Track A).
- Tesi confermata: il valore del trend è tagliare il drawdown (B&H DD ~78% → trend DD ~13-19%) con Sharpe ≥ B&H → si può scalare il rischio (target-vol) e diversificare BTC+ETH.
- Caveat onesto: l'edge è più forte 2018-21 (Sharpe 1.63) che 2022-26 (Sharpe 0.57). Dimensionare sul regime recente.
Il verdetto sul target €50/giorno
Una strategia che guadagna in modo robusto ESISTE (Track D). Ma il target "€50/giorno medio partendo da 2000 in 1-2 anni" non è raggiungibile onestamente: sono ~2.5%/giorno.
La leva NON è la scorciatoia (alza il DD verso la rovina). La vera leva è target-vol + capitale + tempo:
| target-vol | leva usata | CAGR | Sharpe | maxDD | €/giorno (2k) |
|---|---|---|---|---|---|
| 20% | 0.23x | +14% | 1.00 | 19% | +0.73 |
| 40% | 0.45x | +28% | 1.00 | 35% | +3.73 |
| 60% | 0.68x | +40% | 1.00 | 48% | +7.96 |
| 80% | 0.90x | +50% | 0.99 | 60% | +13.78 |
Per €50/giorno steady-state servono 137k di capitale (config conservativa, DD19%),
oppure DD da rovina. Partendo da 2000 a CAGR ~28% (target-vol 40%, DD 35%) il capitale che
genera €50/giorno arriva in ~10-13 anni, non in 1-2.
Conclusione operativa
- Esiste un edge dispiegabile e onesto: il trend portfolio vol-targeted (Track D). È il primo risultato robusto post-reset.
- Non esiste alcuna scorciatoia verso €50/giorno su 2000 in 1-2 anni con questi dati (BTC/ETH 5m-1h). Il limite è strutturale: due asset, alta correlazione, fee.
- Prossimi passi onesti se si vuole alzare il soffitto: (a) dimensionare Track D a un target-vol/DD tollerabile e farlo girare in paper, (b) cercare edge di magnitudine diversa (non più diversificazione di edge deboli) — il che richiede dati che oggi non abbiamo certificati (universo più ampio, microstruttura, funding/opzioni backtestabili).
Script: scripts/research/track{A,B,C,D,E}_*.py. Diari di dettaglio: 2026-06-19-track*.md.