- pyproject.toml with uv, deps for runtime + gui + backtest + dev - ruff/mypy strict config, pre-commit hooks for ruff/mypy/pytest - src/cerbero_bite/ layout with empty modules ready for Phase 1+ - structlog JSONL logger with daily rotation - click CLI with placeholder subcommands (status, start, kill-switch, gui, replay, config hash, audit verify) - 6 smoke tests passing, mypy --strict clean, ruff clean Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
4.6 KiB
00 — Overview
Obiettivo
Eseguire in modo sistematico, deterministico e disciplinato la strategia Cerberus Bite — credit spread su opzioni Ethereum su Deribit con gestione attiva — minimizzando l'errore umano e rispettando i cap di rischio definiti.
Perché senza LLM
La strategia è completamente codificabile in regole. Non c'è alcuna componente di interpretazione semantica del mercato che richieda un modello linguistico. Tutte le decisioni del decision loop sono matematiche o booleane:
- "il mark price dello spread è ≤ 50% del credito iniziale?" — confronto numerico
- "DVOL corrente è ≥ DVOL all'apertura + 10?" — confronto numerico
- "delta della short put ha superato 0.30 in valore assoluto?" — confronto numerico
- "sono trascorse 11 giorni da apertura?" — confronto numerico
L'introduzione di un LLM in questo loop introdurrebbe:
- non determinismo (stesso input → output diversi)
- latenza non controllata
- costi ricorrenti senza valore aggiunto
- difficoltà di test e di audit
- rischio di hallucination su dati di mercato
Il LLM (Milito) resta nel ruolo di consulente offline: aggiorna le regole quando l'evidenza statistica lo richiede, riceve dati post-trade per imparare, ma non sta nel loop di esecuzione.
Confine del sistema
Cosa fa Cerbero Bite
- Legge dati di mercato dagli MCP (Deribit, Hyperliquid, sentiment, macro).
- Valuta condizioni di entrata su finestra temporale fissa (settimanale).
- Calcola la struttura ottimale dello spread secondo le regole.
- Verifica liquidità, cap di rischio, calendar macro.
- Calcola sizing in contratti.
- Costruisce la proposta di trade e la inoltra ad Adriano (Telegram).
- Su conferma di Adriano, invia istruzione a Cerbero core.
- Persiste lo stato della posizione (entry DVOL, credit, strikes, ecc.).
- Monitora ogni 12 ore le posizioni aperte e applica le regole di uscita.
- Su trigger di uscita, propone la chiusura ad Adriano e poi a Cerbero core.
- Logga ogni evento per audit e per il successivo aggiornamento Kelly.
Cosa NON fa
- Non esegue ordini direttamente sul broker.
- Non aggiorna autonomamente le proprie regole o i parametri.
- Non interpreta news o sentiment in modo qualitativo.
- Non sceglie un sottostante diverso da ETH (per ora).
- Non applica strategie di rolling (regola hard della strategia).
- Non considera setup intraday o eventi a frequenza inferiore alle 12 ore.
Stakeholder
| Attore | Ruolo |
|---|---|
| Adriano | Owner del capitale, decisore finale, riceve report |
| Cerbero Bite | Rule engine deterministico (questo progetto) |
| Cerbero core | Motore di esecuzione ordini sul broker |
| Milito | Consulente offline (LLM), aggiorna regole su evidenza |
| Cerbero_Brain | Wiki tecnica condivisa con Milito (ricerca lezioni) |
Vincoli ereditati
-
Cap Cerbero v4 (vedi
Cerbero_Office/CLAUDE.md):- Max 200 EUR per singolo trade
- Max 1.000 EUR di impegno totale aperto
- Max 4 posizioni concorrenti
- Max 6 trade per giorno
- Stop trading se perdita giornaliera > 3% equity
- No vendita vega 24h prima di FOMC, CPI, NFP
-
Hard Prohibitions (non aggirabili nemmeno con override Adriano):
- Mai opzioni nude
- Mai leva > 3x sui perp (irrilevante per Bite, ma resta valido)
- Mai short premium senza SL on-exchange dove tecnicamente possibile
Metriche di successo a 12 mesi
Soglie minime sotto le quali il sistema va riesaminato:
| Metrica | Target | Soglia di allarme |
|---|---|---|
| Win rate | ≥ 75% | < 65% |
| CAGR (capitale operativo) | ≥ 30% | < 10% |
| Drawdown massimo | ≤ 25% | > 35% |
| Sharpe ratio (annualizzato) | ≥ 0.8 | < 0.4 |
| Numero di violazioni di regole | 0 | ≥ 1 (incident review) |
| Errori di stato (posizioni desincronizzate) | 0 | ≥ 1 (kill switch + fix) |
I risultati sono confrontati a fine anno con la simulazione Monte Carlo
del documento Cerbero_Office/NewStrategy/analisi_dai_storici/ analisi-montecarlo-kelly.md.
Glossario rapido
- DVOL: indice di volatilità implicita ETH calcolato da Deribit, analogo al VIX per S&P 500.
- Bull Put Spread: vendita di una put OTM e acquisto di una put più OTM come protezione, su stesso sottostante e stessa scadenza. Incassi credito netto.
- DTE: Days To Expiration, giorni alla scadenza dell'opzione.
- Quarter Kelly: 25% della frazione di Kelly piena, sizing professionale standard. In questa strategia coincide con il 13% del capitale corrente.
- Vol stop: regola di uscita che chiude la posizione se la volatilità implicita esplode oltre una soglia rispetto all'entry.
- Combo order: ordine atomico su Deribit che apre/chiude entrambe le gambe dello spread simultaneamente, eliminando il leg risk.