diff --git a/docs/research/RESULTS-0822.md b/docs/research/RESULTS-0822.md index 4b2e75f..e31809f 100644 --- a/docs/research/RESULTS-0822.md +++ b/docs/research/RESULTS-0822.md @@ -721,7 +721,7 @@ stessi hanno nominato senza poterli eseguire**. Stesso contratto di consegna, st | 53 | SKEPTIC-LEVA | il gradino di leva 1,25x sopravvive a un attacco deliberato, col funding dentro? | **REGGE 5/6, INCRINA 1/6** β€” il **1,25x sopravvive**, il **1,50x NO**; k massimo difendibile **1,40**. L'incrinatura e' il ramo `eq_fallback`, dove **la scala non apre il buco: lo MOLTIPLICA** | | 54 | PREVDAY-GATE | il piu' forte candidato misurato sta in monitor da giugno senza gate: quanto vale al gate onesto? | **GATE PREVDAY-01 SCRITTO β€” 8/10 condizioni oggi**, e le due che mancano sono la stessa cosa: 🚨 **la cella che GIRA non e' quella che la selezione onesta sceglie** β€” e la selezione compra il libro **LONG-FLAT**, cioe' butta via la gamba per cui PREVDAY fu promosso | | 55 | COSTO-CAPITALE | i muri sono calcolati a costo d'esecuzione COSTANTE, ma il costo cresce col capitale: dove sta il muro vero? | _in corso_ | -| 56 | XS-AMPIEZZA | su un universo povero (11 gambe), si recupera ampiezza EFFETTIVA senza aggiungere gambe? | _in corso_ | +| 56 | XS-AMPIEZZA | su un universo povero (11 gambe), si recupera ampiezza EFFETTIVA senza aggiungere gambe? | **NO β€” e la caduta NON era ampiezza (solo il 14%)**: e' **selettivita'** (recuperabile ma sotto l'MDE) **piu' un IC che su quelle 11 gambe vale ZERO**. 🚨 E `k=5` **non e' invariante di scala** | | β€” | **NOTIFIER** (audit di fatto) | 🚨 **PUNTO SINGOLO DI GUASTO nella rete di sicurezza** | il `send()` di Telegram e' **un solo tentativo da 10s, senza retry, con l'esito MAI registrato** β€” e lo stato `alerted=True` viene scritto **prima** dell'invio: un 🚨 di `venue_watch` perso e' perso **per l'intero episodio**. Tasso di fallimento **misurato 6,9%** (2/29, IC95 [1,9%, 22,0%]) | | 22 | MAKER | l'esecuzione passiva e' una fonte di ritorno, al netto del costo di non essere eseguiti? | **SCARTATO** β€” il segno dipende da `<` contro `<=` | | 23 | BOCPD | un rilevatore di cambio di regime vero batte il miglior lookback COSTANTE? | **SCARTATO** β€” filone chiuso definitivamente | @@ -3319,3 +3319,114 @@ gamba short compensasse il funding). **VERDETTO: `IL GATE E' SCRITTO E OGGI PASSA 8 CONDIZIONI SU 10 β€” LE DUE CHE MANCANO SONO LA STESSA COSA: LA CELLA CHE GIRA NON E' QUELLA CHE LA SELEZIONE ONESTA SCEGLIE`**. **Nessun cambio al libro live proposto.** + +--- + +## 56 β€” XS-AMPIEZZA (recuperare ampiezza su un universo povero) + +`scripts/research/r0823_xs_ampiezza.py` (**235 s**). **Sola lettura provata** (`git status` su +`src/ config/ scripts/live/ scripts/cron_*.sh tests/ data/ docs/` **vuoto**, 0 ordini, GET pubbliche +con pacing e astensione). βœ… Replica **bit-exact** contro `sleeves._xsec_returns` +(`max|dif| = 0,0`) prima di ogni delta. Griglia dichiarata prima: 4 kind Γ— 5 k Γ— 2 lookback Γ— 2 H = +**80 celle**. + +### N_eff β€” il gate, in cima perche' decide + +| universo / costruzione | gambe | rbar | **N_eff (autovalori)** | Sh FULL | +|---|---|---|---|---| +| **19 HL (canonico)** | 19 | βˆ’0,028 | **9,34** | 1,336 | +| 14 quotate Deribit | 14 | βˆ’0,049 | **8,03** | 0,893 | +| **11 Deribit β‰₯1 anno** | 11 | βˆ’0,067 | **7,23** | 0,193 | +| 11 β€” demean / resid / equal-risk / whitening | 11 | β€” | 7,13-7,21 | 0,193 / 0,550 / 0,088 / 0,051 | +| 11 β€” nudo L=30 / **k=2** | 11 | β€” | 8,47 / 8,30 | 0,243 / **0,669** | + +🚨 **N_eff scende del 23% mentre lo Sharpe scende dell'86%**: sotto `IR = IC·√ampiezza` la sola +ampiezza predirebbe 1,175, cioe' **il 14% del divario**. E **nessuna costruzione la muove** +(7,13-8,47). β‡’ **L'etichetta "62% e' AMPIEZZA" di Β§50 descriveva il NUMERO DI GAMBE, non l'ampiezza +effettiva.** + +⚠️ **La formula importata da XSR01 DEGENERA qui, e l'agente l'ha detto invece di usarla:** con +`rbar` negativa `N/(1+(Nβˆ’1)Β·rbar)` **esplode sopra N** (fino a 33 su 11 gambe). Non e' un difetto di +quella formula β€” su un paniere di **coppie** rbar e' positiva, mentre le gambe di un long/short +cross-sezionale sono **anti-correlate per costruzione**. Si legge il **participation ratio**. + +πŸ“Œ **E il demeaning β€” la mossa che CREO' XSR01 β€” su XS01 e' un NO-OP ALGEBRICO:** XS01 mette ++0,5/k e βˆ’0,5/k, quindi **`sum(w) = 0` per costruzione** (`max|Ξ£w| = 2,8e-17`, serie identiche a +2,2e-16). *Non e' un risultato debole: e' un'identita' valida a ogni universo e ogni k.* + +### Il canale che porta tutto e' `k` β€” e solo sull'universo povero + +Differenze **appaiate sulle 10 fasi** del ciclo H=10: + +| confronto | mediana | fasi >0 | +|---|---|---| +| **k=2 MENO canonico k=5 (11 gambe)** | **+0,832** | **100%** | +| k=3 MENO canonico k=5 (11) | +0,650 | 100% | +| resid k=2 MENO k=2 (11) | +0,125 | 80% | +| equal-risk / whitening / nudo / H=20 | βˆ’0,06 / βˆ’0,02 / βˆ’0,37 / βˆ’0,69 | 20/50/20/**0%** | +| **k=2 MENO canonico k=5 (19 gambe)** | **βˆ’0,080** | **30%** | + +🚨 **`k=5` NON E' UN PARAMETRO INVARIANTE DI SCALA.** Fu tarato su A=19, dove seleziona il **26% +per lato**; su A=11 e' il **45%** β€” con k=5 si tengono **10 posizioni su 11**, e lo spread z +longβˆ’short crolla da **2,08 a 1,43**. Plateau monotono su k∈{1,2,3}, **piatto su 19 gambe**. + +**Il null a fee zero, e il p-value de-luckato** (mai fatto prima in questo progetto): canonico k=5 +p=0,355 Β· k=2 p=0,165 Β· **resid k=2 alla fase 0 p=0,005** β€” ⚠️ ma quella fase sta al **90Β° pctl** per +quella cella, e de-luckando sulle 10 fasi **p mediano 0,130, sotto 0,05 solo nel 40%**. +*Il verdetto del null cambia con l'ancora, e l'ancora e' una scelta.* βœ… Controllo positivo: +canonico su 19 gambe p=0,010. + +🚨 **DOVE STA DAVVERO IL DIVARIO: L'IC.** + +| universo | IC | t | +|---|---|---| +| 19 HL | **+0,0565** | **+2,29** | +| 14 quotate | +0,0108 | +0,44 | +| **11 Deribit β‰₯1 anno** | **βˆ’0,0270** | βˆ’0,88 | +| 9 alt maturi (11 senza BTC/ETH) | **βˆ’0,0652** | **βˆ’2,07** | +| le 8 mancanti da sole | +0,0075 | +0,26 | + +Su **40 sottoinsiemi casuali da 11**: mediana +0,059, minimo +0,0115 β†’ **Deribit al 0Β° percentile, +fuori dalla banda**. Β§50 lo chiamava *"sfortuna di listino"* al 9Β° pctl dello **Sharpe**; **sull'IC +e' strutturale**. +πŸ“Œ **E poiche' ne' i major ne' le mancanti hanno IC da soli, l'informazione vive nel CONTRASTO FRA +LE FASCE: XS01 e' in buona parte una rotazione major-maturi contro alt-recenti, non una selezione +dentro una fascia.** *(E' la descrizione piu' precisa di XS01 prodotta finora, e arriva da un +tentativo di ripararlo.)* + +**MDE e gate.** 966 giorni, **936 attivi (97%)**, in-sample = il solo **2024**. SE(Sharpe): FULL +0,66 Β· **in-sample 1,75** Β· hold-out 0,83 β†’ **MDE hold-out 2,34**. Lo spread di coda che dovrebbe +pagare il recupero ha **t 0,24 (k=2) / 0,57 (resid k=2)** contro 1,91 dell'universo pieno. Cella al +buio `white k=1` β†’ IS +1,90 / **HOLD βˆ’0,53**; **DSR 0,158 FAIL** (massimo atteso dal rumore +**1,065** contro candidato 0,459); `marginal_vs_tp01` NEUTRAL. + +🚨 **ERRORE CATTURATO SU SE STESSO, e vale come regola: la selezione in-sample-only NON e' stabile +alla dichiarazione della griglia.** Con k∈{2,3,4,5} (64 celle) la cella al buio era `resid k=2` β€” +IS +1,46 / **HOLD +1,33** / FULL 1,38, **un candidato che REGGE**. Aggiungendo k=1 (estensione del +plateau, **decisa prima di guardare**) diventa una cella che fa **HOLD βˆ’0,53**. **Con ~1 anno di +in-sample la procedura onesta e' una monetina.** + +⚠️ **Secondo errore catturato:** la prima misura d'eseguibilita' usava `|Ξ”W|` e dava *"ticket $19, +100% eseguito"*. La posizione in dollari e' `WΒ·scale`, e il vol-target muove il nozionale ogni +giorno anche a pesi fermi. Corretta: a $635 **83% del nozionale** eseguito (96% a $5k) β€” e +**riproduce per via indipendente le due popolazioni di Β§45** (ribilanci di segnale 11,9% degli +ordini / **62,5% del nozionale**; deriva del vol-target 88,1% / 37,5%). **Il muro non e' il +capitale, e' l'IC.** + +**Eseguibilita' dal venue:** 14/19 quotate, di cui SUI (18/08), **APT (21/08, nessuna quota)** e +AAVE (15/08) listate negli ultimi 8 giorni; **11 da β‰₯1 anno**; lotti **$0,01-7,72**. Solo **2 delle +11** (BTC, ETH) netterebbero col libro live: **le altre 9 pagano min-order proprio** e vorrebbero +righe nuove in `_CONTRACT`. + +**Attesa a priori del coordinatore: giusta nella conclusione, SBAGLIATA nel meccanismo** β€” dicevo +*"il 62% e' ampiezza e l'ampiezza non si compra"*; l'ampiezza **non e' quasi per niente il +problema**. + +πŸ“Œ **DA PORTARSI VIA: congelare un meccanismo su un universo nuovo vuol dire congelare il +QUANTILE, non il numero di posizioni.** Su XS01 la differenza vale **~0,8 di Sharpe**. *(Stessa +famiglia della lezione SOL del 22/08: il criterio di selezione di SKH01 non sopravvive a un asset +nuovo.)* + +**VERDETTO: `NO β€” E LA CADUTA NON ERA AMPIEZZA: E' SELETTIVITA' (RECUPERABILE, MA SOTTO L'MDE) PIU' +UN IC CHE SU QUELLE 11 GAMBE VALE ZERO`**. XS01 resta bloccato dal venue, **e adesso si sa +perche'**. **Libro, pesi, cron, config INVARIATI.**