Files
PythagorasGoal/Old/docs/diary/2026-06-12-fade15m-gate.md
Adriano Dal Pastro 14522262e6 chore(reset): v2.0.0 — storico certificato Deribit mainnet, ripartenza pulita
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>
2026-06-19 15:20:59 +00:00

4.2 KiB
Raw Permalink Blame History

2026-06-12 — GATE PORT06: fade 15m PROMOSSI (tutte e tre le varianti)

Seguito del probe ACCEL50: i 6 sleeve fade (MR01/02/07 × BTC/ETH) a 15m, parametri live 1h NON ri-tunati, engine canonico build_trades/fade_daily_equity parametrizzato sul timeframe. Script: scripts/analysis/fade15m_port06_gate.py.

Risultati

[1] Parità. Builder locale a 1h == sleeve canonico, diff 0.00 esatto su tutti e 6.

[2] Standalone (daily, pos 0.15 lev 3, fee 0.10% RT). Il 15m batte il twin 1h quasi ovunque; OOS Sharpe: MR01_ETH 4.94 (vs 1.10), MR02_ETH 6.40 (vs 4.72), MR07_ETH 4.44 (vs 1.97), MR07_BTC 2.37 (vs 1.59). Fee 2x: regge ovunque tranne MR02_BTC (OOS 0.60 — il piu' fee-sensitive, ma a fee reali e' il migliore BTC).

[3] Correlazione 15m↔1h: media 0.26 (range 0.16-0.41) — più decorrelato del pairs 15m promosso a 0.37. NON è la stessa scommessa più veloce: è un edge a orizzonte diverso.

[4] Gate PORT06 (cap PAIRS 0.33 / SHAPE 0.0588):

variante FULL CAGR FULL DD FULL Sh OOS CAGR OOS DD OOS Sh
BASELINE (1h) 74% 3.46% 7.34 111% 1.48% 10.07
ADD (+6 sleeve 15m) 85% 2.73% 8.02 125% 1.38% 10.48
SWAP (15m al posto 1h) 101% 2.47% 8.13 163% 2.09% 10.86
BLEND 50/50 87% 2.31% 8.06 136% 1.77% 10.82

Tutte e tre PROMOSSE dal criterio standard (OOS Sharpe non peggiora E DD scende).

[5] Anti-illusione flat (il check che ha ucciso pairs-alt e XEX/DOGE). ETH 15m ha 14-30%/anno di candele flat. Con flat-entry-skip l'edge SOPRAVVIVE: MR01_ETH Sh 3.11→2.85 (OOS 4.94→4.60), MR02_ETH 4.72→4.63, MR07_ETH 3.76→3.55; BTC invariato (≤0.01). Coerente col finding registrato 2026-05-28. La quota di ritorno persa (~30-40% del FULL ETH) è il caveat slippage onesto: il ledger reale shadow sarà il giudice, come per il pairs 15m.

Raccomandazione

ADD è la promozione più pulita: migliora TUTTE le metriche senza buttare il track record live dei 6 sleeve 1h (SWAP rinuncia alla config validata dal vivo; il suo OOS DD peggiora 1.48→2.09). In subordine BLEND (miglior FULL DD 2.31%).

Per il deploy (non fatto qui)

  1. _defs.py: 6 SleeveSpec nuovi MR0x_{asset}_15M con tf: 15m nei params.
  2. Runner: estendere il fetch sub-orario (già esistente per PR_ETHBTC_15M) ai fade 15m; verificare lookback (EMA200 a 15m = 50h → bastano ~2200 barre).
  3. Validazione worker a 15m (replay == backtest, come validate_worker_pairs).
  4. Sizing: a peso pieno i 6 sleeve 15m raddoppiano la famiglia FADE; valutare position_size ridotto come il blend pairs (il gate ADD qui è già a peso pieno e migliora comunque, ma il caveat slippage 15m suggerisce prudenza).
  5. MR02_BTC 15m è il più fee-sensitive (fee2x OOS 0.60): monitorare le fee reali.

Addendum — DEPLOY: SWAP SECCO (stessa giornata, scelta utente)

L'utente ha scelto SWAP (la variante a CAGR più alto), consapevole dei due costi discussi: OOS DD 1.48→2.09% e perdita della maturità operativa 1h (la meccanica live — EXIT-16 confirm, TP_PHANTOM, TP resting — gira 4x più veloce su un feed testnet con wick anomali; il gate misura l'edge, non la robustezza operativa). Proposta alternativa staged (ADD temporaneo 1-2 settimane, poi spegnere il 1h) declinata: "swap secco".

Implementazione (deliberatamente minima, sid INVARIATI → pesi/alloc/epoche intatti):

  • _defs.py: FADE specs → tf="15m" (DIP01 resta 1h: non era nel gate).
  • combine_portfolio.py: FADE_TF="15m" nel builder canonico → le due facce (backtest/live) restano sulla STESSA definizione; il lock di parità (test_backtest_parity) confronta le facce fra loro e resta verde.
  • Runner: NESSUNA modifica (il fetch sub-orario BTC/ETH 15m esisteva già per il blend pairs; _spec_assets_tf/_series_for sono generici).
  • Worker: nuove dir *__15m (stato 1h preservato in *__1h, worker flat al momento dello switch). Esecuzione reale invariata (match per nome MR01/02/07).
  • max_bars=24 barre ora = 6h; EXIT-16 confirm sulla barra 15m completata.

Monitor post-deploy: stop-rate e divergenza sim/reale dei fade 15m nell'hourly report; fee reali su MR02_BTC; STALE_FEED (le barre flat 15m sono più frequenti che a 1h).