Adriano Dal Pastro 9f55652d99 usde al 68,7%: il tetto del venue del 30-31/08 non c'era piu'; il versamento di prova del 25/08 dichiarato, TWR +7,83%
Su autorizzazione dell'operatore («usa piu' USDE», «cerca % massima raggiungibile»):
- usde_convert al 31,8% (774 USDE), poi sonda a saldo crescente r0906_usde_tetto_sonda.py
  (passi 100->20->4->1, doppio rifiuto prima di scendere, conferma a saldo neutro): da 31,8%
  a 68,7% in 39 ordini @ 1,0005, ZERO rifiuti. Fermata dal cuscino di regolamento (70%,
  derivato da config), non dal venue. «Il 70% non e' raggiungibile ne' ora ne' mai» (31/08)
  e' falsificato: il tetto e' sparito, non scalato. Non spiegato, puo' tornare.
- config: venue_cap_frac -> null (misura in venue_cap_misurato), quota_max_frac 0,50 -> 0,85
  (il valore scelto dall'operatore il 30/08 per questo scenario).
- debito §5.17: nessuno sorveglia il cuscino USDC (slack $58; una perdita del libro lo consuma
  da sola).

Versamento di prova di EUR 25 il 25/08 08:00Z (dichiarato dall'operatore): +3,3% su $647, sotto
la soglia del 10% del rilevatore, contato per 12 giorni come trading.
- data/live/movimenti_dichiarati.jsonl (append-only, nel backup) letto da
  journal.movimenti_dichiarati; movimenti_capitale lo fonde coi rilevati (fonte dichiarato,
  importo dell'operatore, dopo = prima + importo; dichiarato+rilevato se coincide; fuori
  letture o riga rotta -> avvisi). Report e nota di giornale lo dicono.
- trading da arming +87,35 -> +62,45; TWR +11,98% -> +7,83%. CLAUDE.md §2 aggiornato.
- tests: +6 in test_journal (conftest isola il file). Suite 916 verdi.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KSnordG9FT4q8M4MVm85GQ
2026-09-07 05:49:15 +00:00

PythagorasGoal

Ricerca e esecuzione di strategie algoritmiche su BTC/ETH, con un libro che gira con soldi veri su Deribit mainnet dal 20 giugno 2026.

🚨 v2.0.0 — RESET del 2026-06-19. Tutto ciò che questo README diceva prima è archiviato in Old/ e non è fidato. L'intera libreria di strategie "validata out-of-sample" (le famiglie FADE/HONEST/PAIRS/TSMOM/SHAPE, i portafogli PORT01-06, gli Sharpe fra 6 e 10) era un artefatto di uno storico contaminato: print fantasma di un feed testnet più storico Binance/USDT. Ri-testate sul feed reale ricostruito da Deribit mainnet, perdono ogni anno. Documento di fondazione: docs/diary/2026-06-19-deribit-history.md.

Questo README descrive il progetto dopo il reset. È stato riscritto il 2026-09-02, dopo essere rimasto fermo al 4 giugno — quindici giorni prima del reset — mentre pubblicava i numeri che il progetto aveva già dichiarato falsi.

L'autorità sui numeri e sulle decisioni è CLAUDE.md, e il racconto completo sta in docs/memory/. Questo file è l'ingresso, non la fonte.


Cos'è vivo, adesso

libro live TP01 + SKH01 a 75/25, nettati in software su una sola posizione per asset (50/50 BTC/ETH)
venue Deribit mainnet, perpetual lineari USDC. Esecuzione armata dal 2026-06-20
capitale ~$2.050 (USDC + USDE), non i €2.000 nominali di nessun paper trader
cadenza oraria, minuto :47 (scripts/cron_book.sh)
leva lorda ~0,28x su un tetto di 1,00x. Il cap non ha mai morso: il vincolo è il segnale
protezione on-book un solo disaster-SL rotolante al 30% sulla posizione netta

Non sono nel libro live: XS01, VRP01, GTAA01, XSR01. Vivono nel portafoglio di ricerca (paper, 5 sleeve), che è una serie diversa da quella che gira — quasi tutti i numeri di portafoglio del progetto sono su quella, non su questa.

I numeri, con la loro lente

Ogni numero va scritto con la lente e la banda che gli appartengono. La tabella completa ("non citare" ↔ "citare") è in CLAUDE.md §2; qui i tre che contano.

grandezza valore onesto
rendimento del libro live TWR +10,6% dall'armamento, spezzato sul versamento del 25/08: +11,61% prima, 0,9% dopo
crescita di trading +$50 in 71 giorni, su 30 round-trip chiusi e $0,87 di fee totali
Sharpe del portafoglio di ricerca 1,95 [1,81 2,12] full, 1,54 [1,11 1,91] hold-out

⚠️ Il rendimento dell'equity non è la performance: il 96% della crescita del conto è un bonifico. Chi legge una percentuale su questo progetto deve sapere se è un TWR o un rapporto fra due saldi — è stato un difetto reale, riparato il 2026-09-02.

La riga che ordina tutto il resto

La ricerca ha smesso di essere il vincolo il 2026-07-26, e sei ondate successive lo hanno confermato invece che ribaltarlo. I vincoli sono il capitale che entra e il conto che non sparisce.

Misurato: il miglior candidato nuovo vale +0,046 €/giorno; versare €500/mese invece di €250 porta la probabilità di arrivare al traguardo in 20 anni dal 14% all'85%. E €100/mese in più equivalgono a +4,07%/anno di drift, cioè più di tutta la leva autorizzabile.

Metodo — cosa deve superare una strategia nuova

Sei requisiti, nessuno negoziabile (CLAUDE.md §8, gate in scripts/research/alt/altlib.py):

  1. ingresso eseguibile — direzione e prezzo da dati fino a close[i], mai l'estremo di una candela;
  2. backtest netto dopo fee Deribit realistiche, più la leva;
  3. out-of-sample held-out, robustezza su griglia, sweep fee;
  4. liquidità e plausibilità — un edge su un book fermo o su wick fantasma non è un edge;
  5. i gate: marginal_vs_tp01 (Sharpe marginale, non assoluto), study_family_honest con deflated-Sharpe ≥ 0,95, day_boundary_robust, anchor_luck_band, weights_tilt_null;
  6. codice, test e diario.

Il progetto ha 73 regole di prim'ordine (CLAUDE.md §6) — sul dato, sul metodo, sui costi, sulla produzione e sul piano — ognuna pagata almeno una volta. La più ricorrente, cinque occorrenze: un sorvegliante deve derivare il proprio bersaglio dal codice sorvegliato, mai ridichiararlo — un controllo puntato su una configurazione diversa da quella che gira passa sempre, e non sta controllando niente.

Il dato

  • La verità è Deribit mainnet, perché è dove si esegue. Binance è un audit indipendente, mai un'ancora per "ripulire": è USDT, ~10 bps fuori, fino al 3% sotto depeg.
  • Universo certificato: solo BTC/ETH, ogni timeframe. Gli alt sono esclusi.
  • Lo storico si aggiorna solo con rebuild_history.py e si certifica sempre con certify_feed.py. Il vecchio downloader è la causa del reset.
  • La catena opzioni si raccoglie ogni ora (collect_chain.py, minuto :25): un'ora non raccolta è persa per sempre.

Struttura

src/
  data/downloader.py        load_data(asset, tf) sui parquet certificati
  strategies/               trend_portfolio.py (TP01) · skyhook.py (SKH01) · base · indicators
  portfolio/                portfolio.py (N sleeve + weights_tilt_null) · sleeves.py · gtaa.py
  backtest/harness.py       backtest onesto, senza look-ahead
  live/                     book.py (esecutore netto) · deribit · livefeed · usde
                            venue_watch · venue_probe · venue_news · monitor_health · scale_watch
                            tradesdb · journal · analista · notifier · cli
scripts/
  live/                     book_execute · trades_db · journal · analista · balance_watch
                            paper_* (forward-monitor) · usde_watch · usde_convert · fee_watch
  research/                 r<data>_*.py — un file per esperimento, harness in alt/altlib.py
  analysis/                 rebuild_history · certify_feed · audit_feed · multi_source_check
  cron_{book,daily,chain,balance,usde,opt_snapshot,vol_term}.sh
docs/
  memory/                   LA MEMORIA — 6 file, indicizzati in testa a CLAUDE.md
  research/                 RESULTS-0822 (§1-73, un registro per filone) · BRIEF-0822 · SPEC-scale-key
  diary/                    una voce per esperimento (144)
  journal/                  libro di bordo, una voce al giorno, 4 livelli per provenienza
tests/                      910, tutti verdi
Old/                        archivio pre-reset — consultabile, non fidato

Comandi

uv sync                                                            # dipendenze
uv run python scripts/analysis/rebuild_history.py --asset BTC ETH  # storico da Deribit mainnet
uv run python scripts/analysis/certify_feed.py                     # certifica i feed
uv run python scripts/live/trades_db.py --report                   # stato del libro + TWR
uv run python scripts/live/journal.py                              # voce del giorno
uv run python scripts/live/analista.py --secco                     # analisi del giorno, senza salvare
uv run python scripts/portfolio/run_portfolio.py                   # portafoglio di ricerca
uv run pytest                                                      # 910 test

Ogni script di scripts/live/ accetta --help e rifiuta un flag che non conosce (esce 2): fino al 2026-09-02 un flag sbagliato eseguiva l'azione di default, e su tre script quell'azione scriveva.

Gate aperti

Un gate si decide alla data, coi criteri scritti prima. Elenco completo in CLAUDE.md §4.

gate data dove punta oggi
STATARB 2026-09-27 ritiro (Sharpe 1,61 sulla serie vera)
SCALA-01 — leva 1,00 → 1,25 non prima del 2026-10-01 chiave costruita e inerte; 9 condizioni, 2 fatte
XSR01 2026-10-23 sotto la lente rendita il meccanismo vale ~0
DVOLSPREAD kill 2026-10-24 serie 4,41
GTAA01 tenere/bloccare al book a $15k contributo reale +0,10/+0,12 di Sharpe, non incassabile sotto la soglia

Obiettivo, e cosa lo rende difficile

Il target dichiarato è €50/giorno partendo da €1.000. Non è raggiungibile a questo capitale: servono ~$313k (banda [$187k $1,14M]) o €1.733/mese per dieci anni per averlo al 90% di probabilità. La leva non è la scorciatoia — quella difendibile vale quanto €100-150/mese di versamento. La via è target-vol, capitale e tempo.

Onestà prima di tutto: nessun numero va creduto finché non è netto fee, out-of-sample, robusto su griglia, e su dati certificati, liquidi ed eseguibili. Il resto di questo repo esiste per rendere quella frase verificabile invece che dichiarata.

S
Description
No description provided
Readme 74 MiB
Languages
Python 98.2%
HTML 1%
JavaScript 0.7%
Shell 0.1%