Reset del progetto su fondamenta verificate dopo la scoperta che l'intera libreria "validata OOS" era artefatto di feed contaminato (print fantasma del feed Cerbero TESTNET + storico Binance/USDT). - Storico ricostruito da Deribit MAINNET (ccxt pubblico, tokenless) e CERTIFICATO (certify_feed.py): BTC/ETH puliti su TUTTA la storia (mediana 2-6 bps vs Coinbase USD), integrita' OHLC + coerenza resample (maxΔ 0.00) + cross-venue OK. Alt esclusi (illiquidi/divergenti: LTC/DOGE 50-82% barre flat; XRP/BNB non certificabili). - Verdetto sul feed pulito: FADE / PAIRS / XS01 / TSM01 morti (ogni portafoglio Sharpe -2.3..-3.0, DD ~40%); solo SH01 e frammenti HONEST con segnale residuo, da ri-validare in isolamento. - Cleanup "restart pulito": strategie, stack live (src/live, src/portfolio, runner/executor, yml, docker), ~100 script ricerca/gate, waste/games/ portfolios, dati non certificati + cache e 60+ diari -> archiviati in Old/ (preservati, non cancellati). Diario consolidato in un unico documento. - Skeleton ricerca tenuto: Strategy ABC + indicatori + src/fractal + src/backtest/engine + load_data; tool dati certificati (rebuild_history, certify_feed, audit_feed, multi_source_check). - Universo dati ATTIVO: solo BTC/ETH (5m/15m/1h); guardrail fisico (load_data su alt -> FileNotFoundError). Esecuzione DISABILITATA, conto flat. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
5.3 KiB
2026-06-02 — Ricerca a 100 agenti: Frattali del segnale × Regime ARGO
Workflow multi-agente (171 agenti, 8,4M token, ~7h) per cercare una strategia che combini un SEGNALE FRATTALE con un GATE/INTERAZIONE DI REGIME ARGO (DVOL/funding/VRP), validata OOS. Branch:
feat/fractal-argo-search. Substrato e codice sul branch, niente impatto su main/live.
Substrato costruito
regime_fetcher.py: DVOL (2021-03→oggi) + funding (2019→oggi) BTC/ETH da Deribit mainnet public (no-auth, OI/IV reali — non il testnet farlocco di Cerbero).regime_lab.py: allineamento regime↔prezzo causale no-look-ahead (merge_asof backward), feature regime (dvol_pct, vrp=dvol−rv, funding_z, dvol_chg) + frattali (rolling Hurst, Higuchi FD, vol-ratio, Williams pivot), cache feature precalcolate, validazione netto-fee OOS viaexplore_lab. Bug corretto in corsa:vrpannualizzava la realized-vol sempre come 1h → rotta su 4h/1d (sempre negativa); fix per timeframe.fractal_argo_workflow.js: 84 agenti griglia (7 famiglie frattali × 6 angoli regime × BTC/ETH)- 8 wildcard + verifica avversariale dei survivor + sintesi.
Verdetto
Esistono edge frattale×regime reali, causali, robusti (15 confermati dalla batteria avversariale: audit look-ahead bit-esatto, cross-asset, split alternativo, fee 0.2% RT, plateau). MA nessuno batte PORT06 standalone (OOS Sharpe 8,19 / DD 2,3%): sono diversificatori a bassa esposizione (1,5-8%, ~100-460 trade), profilo SH01/pairs.
Top candidati confermati
| Strategia | Asset/TF | OOS Sharpe | OOS DD | trade |
|---|---|---|---|---|
| FRAC-VRP multiscala (chop × VRP<0) | ETH 1h | 5,55 | 11% | 184 |
| HigVRP-Fade (Higuchi alto × VRP<0) | BTC 1h | 4,55 | 7,2% | 286 |
| HurstCalmFade (hurst<0,55 × dvol<0,4) | BTC 1h | 3,73 | 5,1% | 198 |
| WILD8 Pivot-Hurst | BTC 4h | 3,87 | 10% | 482 |
| AnalogFundingFade (kNN forma × funding) | ETH 4h | 2,15 | 9,3% | 229 |
Il finding chiave (controintuitivo): il prior ARGO è SMENTITO
La tesi naïve "VRP>0 = GEX+ = range = fade" FALLISCE sistematicamente. L'edge robusto e ripetuto è su VRP<0 (vol implicita sottoprezzata vs realizzata → mean-reversion whippy) e su DVOL bassa, l'opposto del brief. Gate invertito VRP>0 → Sharpe −2,08/−1,30 su entrambi gli asset. È il risultato più solido di tutta la ricerca, look-ahead-clean (lag-1/3/6 robusto).
Cosa aggiunge valore vs cosa è decorativo
- Load-bearing (confermato per ablazione): VRP<0; hurst-low × dvol-low (HurstCalmFade taglia DD OOS 17%→5%); funding_z estremo |fz|≥1,8 (analog ETH 4h).
- Decorativo (DD-reducer, non interazione): dvol_chg, dvol_high/low e funding come gate spesso riducono solo esposizione senza migliorare il segno.
Cosa è RUMORE (conferma i priori del progetto)
- Frattali da soli (angolo=none): hurst/Higuchi/vratio/chop/candle/analog intraday → non robusti
(DD 30-90%, muoiono di fee). Conferma
shape_lab. - Momentum/breakout gateato (hurst>0,6, dvol-rising): catastrofico (Sharpe −2…−7) → riconferma dominanza mean-reversion, i breakout rientrano.
- ARGO-GEX nella direzione attesa (VRP>0): perde. Coerente con W18/19/21 scartate.
- Pivot-fade non-laggato (frac_up[i]): artefatto squeeze-like, va sempre laggato a i−2.
Vincitore selezionato + test decisivo
FR01 HurstCalmFade BTC 1h (scripts/strategies/FR01_hurst_calm_fade.py): il più verificato,
DD più basso (5,1% OOS), generalizza a ETH. Test di correlazione decisivo (la domanda che
conta: aggiungerlo migliora il PORT06 o è ridondante?): correlazione daily-returns coi fade
esistenti MR01 +0,17 / MR02 +0,08 / MR07 −0,03 → BASSA, quasi-ortogonale, NON ridondante.
Passa il gate → vale l'inserimento come diversificatore.
Onestà finale
L'edge frattale×regime è reale, causale, robusto ma è sempre mean-reversion già nota condizionata dal regime (VRP<0 / hurst-low / dvol-low), non un motore ortogonale nuovo. Valore = riduzione DD aggregato come sleeve a bassa esposizione. La correlazione bassa lo qualifica come diversificatore reale.
TEST DECISIVO SUL MASTER — VERDETTO FINALE: NON deployare
Misurato il contributo marginale di FR01 al PORT06 intero (equal-weight, master_corr):
| Portafoglio | FULL Sharpe | OOS Sharpe | OOS DD | OOS ret |
|---|---|---|---|---|
| PORT06 (17 sleeve) | 6,62 | 8,89 | 1,2% | +175% |
| PORT06 + FR01 (19) | 6,55 | 8,72 | 1,1% | +156% |
FR01 NON migliora il PORT06: lo DILUISCE (OOS Sharpe 8,89→8,72, OOS ret +175%→+156%; DD marginalmente meglio 1,2→1,1% ma a costo di Sharpe). Corr FR01 vs MASTER +0,18 (BTC)/+0,23 (ETH).
Causa + nota di onestà metrica: lo Sharpe "3,73" dei report del workflow è per-trade/annuale
(explore_lab); quello rilevante per il portafoglio è lo Sharpe daily-return (combine), che per
FR01 è solo ~1,85/1,53 — troppo basso per muovere un PORT06 a 8,89. È "ridondanza robusta":
mean-reversion regime-gated che si sovrappone a ciò che il MASTER già fa.
ESITO: il search a 100 agenti ha trovato strategie robuste e causali, ma NESSUNA migliora il PORT06. Non deployare FR01 né i candidati gemelli. Valore del progetto resta nell'estendere fade/pairs validati. Tutto resta come RECORD DI RICERCA sul branch (non si merge in produzione). Wiring DVOL live e walk-forward: non necessari, deploy abbandonato.