From 7b34e114769295cd44b54ec3a445925e0bfda98a Mon Sep 17 00:00:00 2001 From: AdrianoDev Date: Fri, 19 Jun 2026 20:36:01 +0200 Subject: [PATCH] docs: update CLAUDE.md with post-research state (TP01 winner + research outcome) --- CLAUDE.md | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index 489b40e..e2554c2 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -16,6 +16,30 @@ Cosa è cambiato: - L'esecuzione è **DISABILITATA**, il conto mainnet è flat. **Non c'è trading live attivo.** - Si riparte dalla ricerca di strategie NUOVE, su dati certi, con la metodologia qui sotto. +### Ricerca post-reset (2026-06-19) — esito + +Prima ondata di ricerca onesta su BTC/ETH certificati (5 track, harness condiviso +`src/backtest/harness.py`). Sintesi in `docs/diary/2026-06-19-research-synthesis.md`. + +- **VINCITRICE (l'unica robusta e profittevole): TP01 Trend Portfolio** — + `src/strategies/trend_portfolio.py`. TSMOM multi-orizzonte (1-3-6 mesi) vol-targeted, + 50/50 BTC+ETH. Config canonica **PORT LF4h** (4h, long-flat, vol-target 20%, leva cap 2x): + **CAGR ~16.6%, Sharpe ~1.32-1.36, maxDD ~12-14%, positiva ogni anno 2019-2026**. + Robusta su tutti i TF (15m-1d), regge fee fino a 0.40% RT, su entrambi gli asset. + Paper trader: `scripts/live/paper_trend.py`. Test: `tests/test_trend_portfolio.py`. +- **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). +- **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. + +Script ricerca: `scripts/research/track{A,B,C,D,E}_*.py` + `trackD_timing.py`. + ## Obiettivo Ricerca: riconoscimento pattern frattali per trading algoritmico su crypto. Target dichiarato @@ -35,9 +59,13 @@ netto fee, out-of-sample, robusto su griglia, e su dati certificati + liquidi + src/data/downloader.py → load_data(asset, tf): legge i parquet certificati da data/raw/ src/strategies/base.py → Strategy (ABC), Signal, BacktestResult, YearlyStats src/strategies/indicators.py → indicatori condivisi (ema, atr, keltner, ...) +src/strategies/trend_portfolio.py → TP01: strategia VINCENTE (PORT LF4h), causale, deployabile 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/live/paper_trend.py → paper trader forward-only di TP01 (no esecuzione reale) scripts/analysis/ → SOLO i tool dati certificati: rebuild_history.py → (ri)costruisce lo storico da Deribit mainnet (base 5m + resample) certify_feed.py → certifica il feed (integrità, coerenza resample, spike, cross-venue) @@ -57,7 +85,10 @@ uv sync # installa dipende uv run python scripts/analysis/rebuild_history.py --asset BTC ETH # (ri)costruisci storico da Deribit mainnet uv run python scripts/analysis/certify_feed.py # certifica i feed (locale + cross-venue) uv run python scripts/analysis/certify_feed.py --local # solo check locali (veloce) -uv run pytest # test (da ripopolare con le nuove strategie) +uv run python scripts/research/trackD_trendport.py # backtest strategia vincente (full report) +uv run python scripts/research/trackD_timing.py # vincitrice su 15m/1h/4h/1d + PnL/DD/trade per anno +uv run python scripts/live/paper_trend.py # avanza il paper trader TP01 (forward-only) +uv run pytest # test ``` ```python