Files
PythagorasGoal/docs/diary/2026-08-31b-venue-news-annunci.md
T
Adriano Dal Pastro 30286ea033 venue_news: sorvegliare cosa il venue ANNUNCIA — e due correzioni dalla KB
Nasce dall'annuncio sulla fine della Proof of Reserves. La notizia in se' vale
poco: si perde un segnale ad alta frequenza e DEBOLE (una PoR auto-pubblicata
prova che gli attivi esistono in un istante, non che coprano le passivita') e si
guadagna un audit annuale indipendente sotto VARA piu' il 90% degli attivi presso
Coinbase come custode. E non l'abbiamo mai sorvegliata: zero occorrenze nel
codice. Rinunciato di proposito a catturare l'ultimo dato — uno snapshot singolo
auto-riportato non regge lo standard di prova e non permetterebbe di stimare `p`.

CONSEGUENZA VERA: la decisione "100% Deribit fino a $20k" ha fra i suoi riapritori
"`p` che diventa stimabile invece che assunto". Dal 1/9 il segnale pubblico passa
da quotidiano ad ANNUALE: da una serie si stima, da un punto all'anno no. Quel
riapritore diventa praticamente irraggiungibile => la decisione e' ora gated SOLO
dal capitale.

TROVATO CERCANDO: esiste un feed RSS degli exchange-update, e conteneva quattro
annunci materiali che nessuno leggeva. Il caso che decide: le specifiche dei perp
USDC sono cambiate il 18/08, ANNUNCIATE IL 14/08. check_specs() e' nato da quella
svista e gira ogni ora, ma rileva la deriva DOPO; il feed l'avrebbe detta quattro
giorni PRIMA. La prima volta e' andata bene solo perche' i cambi erano RIDUZIONI.

Costruito scripts/live/venue_news.py (in cron_daily accanto a fee_watch):
  - NON interpreta: dice "e' uscito questo, guardalo". Nessun automatismo su un
    testo di marketing (P13). Classifica solo l'urgenza.
  - parole-chiave DERIVATE da deribit._CONTRACT e config/live.json, non
    ridichiarate (P1): chi aggiunge un asset allarga la sorveglianza da solo, ed
    e' il test che lo blinda.
  - primo giro semina senza allertare (P9); feed illeggibile -> exit 2, mai
    silenzio implicito (P5).
Debito #8 si RESTRINGE, non si chiude: il Rulebook non ha un feed.

Confermato due volte lo zero USDC: l'espansione del 31/07 non contiene l'Italia
ne' alcun paese UE, mentre San Marino e Citta' del Vaticano SONO idonei. Non
asserisco una causa (ci sono anche Canada e Giappone).

DUE CORREZIONI dalla KB "Cross collateral specifications":
(a) Il saldo negativo costa una collateral fee dello 0,05% AL GIORNO = 18,25%/anno,
    al secondo — 4,3x la resa USDE. Il 30/08 avevo scritto "lo finanzia a
    interesse" SENZA il numero: giusto e vuoto. Col numero, il criterio del
    cuscino di regolamento diventa aritmetica (-14 punti). E il ribilanciamento
    automatico non salva: scatta a $1M assoluti o al 100% della cross equity,
    irraggiungibili a $2k. Non veniamo ribilanciati: sanguiniamo la fee.
(b) L'haircut USDe ufficiale e' 5%, noi abbiamo 0.10 registrato come "verificato
    sul venue" il 26/08 senza traccia di come. NON riparato (P12/M28): si tiene
    0.10 perche' e' il lato conservativo, non e' sul percorso soldi e non morde
    fino al 90% di quota. Divergenza dichiarata in config.
Di lato: BUIDL haircut 2% (sarebbe stato il miglior collaterale del listino, se
si potesse comprare), stETH 7,5% (terza ragione indipendente per lasciarlo stare).
Nessuna fonte documenta un tetto sulle QUANTITA': il ~31,2% resta misurato e non
spiegato — e ora si sa che non e' una svista di lettura.

Suite: 800 passati (5 nuovi su venue_news).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-31 07:47:15 +00:00

153 lines
9.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 2026-08-31 — Fine della Proof of Reserves, e il guardiano che mancava
L'operatore ha passato l'annuncio *Deribit to Discontinue Daily Proof of Reserves Publication*.
La notizia in sé vale poco per noi. Quello che è emerso cercandola vale molto di più.
## 1. La notizia: frequenza giù, sostanza su, per noi nulla cambia
Dal **1 settembre 2026** la pagina Proof of Reserves sparisce e gli aggiornamenti quotidiani
cessano. Al loro posto, sotto il regime **VARA** di Dubai: audit **annuale** indipendente delle
riserve, audit annuale del bilancio, obbligo di **copertura 100%** e **segregazione** degli attivi
dei clienti. E: «*approximately 90% of client assets have been migrated to Coinbase, which acts as
a custodian for Deribit*».
**Non è un peggioramento netto, ed è importante non raccontarlo come tale.** Si perde un segnale
**ad alta frequenza e debole** (una PoR auto-pubblicata prova che gli attivi esistono in un istante,
non che coprano le passività, ed è aggirabile attorno allo snapshot) e si guadagna un segnale **a
bassa frequenza e più forte** (audit indipendente obbligatorio invece di pubblicazione volontaria),
più un miglioramento **sostanziale** di custodia: 90% degli attivi presso un custode terzo regolato
invece che nei wallet dell'exchange.
**Per noi non cambia nulla di operativo**, e per una ragione che va detta: *la PoR non l'abbiamo
mai sorvegliata*. Zero occorrenze in tutto il codice. `venue_probe` legge se il venue **risponde**,
non cosa **dichiara**. Si perde un segnale che non stavamo usando.
Ho provato a catturare l'ultimo dato prima che la pagina sparisse — è la mossa giusta per un dato
non ricostruibile con una scadenza. **Rinunciato di proposito**: la pagina è una SPA e
`get_proof_of_reserves` non esiste come metodo API («Method not found»), ma soprattutto uno
snapshot singolo e auto-riportato non regge lo standard di prova di questo progetto e **non
permetterebbe comunque di stimare `p`**. Un dato che non cambierebbe una decisione non vale il
lavoro per prenderlo.
## 2. 📌 La conseguenza vera: il riapritore della decisione più grande si è ristretto
La decisione vincolante **«100% Deribit fino a $20k»** (26/07) ha come riapritori dichiarati:
*«**$20k**, o un cambio di piano, o `p` che diventa **stimabile** invece che assunto»*.
Dal 1 settembre il segnale pubblico di solvibilità passa da **quotidiano ad annuale**. Il terzo
riapritore non è formalmente chiuso — un audit indipendente è semmai evidenza più forte — ma
diventa **praticamente irraggiungibile**: da una serie giornaliera si può costruire una stima, da
un punto all'anno no. ⇒ **In pratica quella decisione è ora gated SOLO dal capitale**: si riapre a
$20k, o non si riapre. Non cambia la decisione di oggi (fu presa con `p` esplicitamente **assunto**,
non osservato), ma chiude l'unica uscita non-capitale che aveva.
## 3. 🚨 Quello che ho trovato cercando: quattro annunci materiali che nessuno leggeva
Il debito #8 dice, testuale: *«Resta scoperto il Rulebook vero e proprio: la sonda legge se il
venue RISPONDE, non cosa il venue ANNUNCIA»*. Esiste un feed RSS pubblico
(`insights.deribit.com/exchange-updates/feed/`) con 10 voci. Alla prima lettura:
| data | annuncio | perché ci tocca |
|---|---|---|
| 27/08 | Discontinue Daily Proof of Reserves | §1 e §2 di questo diario |
| **14/08** | **Contract Specifications change for Linear USDC Perpetuals** | **i nostri due strumenti** |
| 05/08 | New SM Margin Model On Deribit | leva per taglia, tiered |
| **31/07** | **USDC Rewards Available In More Countries** | tocca una conclusione viva |
| 29/06 | New Fee Schedule On Deribit | `fee_watch` esiste per questo |
**Il caso che decide la questione è il 14/08.** Le specifiche dei perpetual USDC sono cambiate il
**18/08**; l'annuncio è del **14/08**. Il codice lo racconta già con onestà: la tabella «*non se
n'era accorta […] è andata bene per la direzione del cambiamento, non perché ce ne fossimo
accorti*» — i cambi erano **riduzioni** (tick BTC 0,5→0,1, ETH 0,05→0,01, min/step ETH
0,001→0,0001) e un valore più grosso resta conforme. `check_specs()` è **nato da quella svista** e
oggi gira ogni ora. Ma rileva la deriva **dopo**; il feed l'avrebbe detta **quattro giorni prima**.
*Il giorno che Deribit ALZA un minimo, «dopo» significa ordini rifiutati.*
Il 31/07 chiude un cerchio aperto ieri: l'espansione delle giurisdizioni idonee ai reward USDC
**non contiene l'Italia**, né alcun paese UE — mentre **San Marino e Città del Vaticano** (i due
microstati europei fuori dall'UE) **sono idonei**. La lista che avevo letto (aggiornata 20/08) è
posteriore all'espansione: **la conclusione dello zero USDC è confermata due volte**. Il pattern
UE-fuori/microstati-dentro suggerisce un driver regolatorio, ma la lista contiene anche Canada e
Giappone: **non asserisco una causa**, il fatto è l'esclusione.
## 4. Costruito: `venue_news.py`
Sorveglianza giornaliera del feed, dentro `cron_daily.sh` accanto a `fee_watch` (suo parente
stretto). Scelte che contano:
- **NON interpreta.** Dice *«è uscito questo, guardalo»*. Nessun automatismo su un testo di
marketing: P13 — una guardia sui NUMERI non copre il RAGIONAMENTO, e la prosa si legge come
opinione di un lettore fallibile. L'unica cosa che classifica è l'**urgenza**.
- **Le parole-chiave sono DERIVATE, non ridichiarate** (P1, il difetto più ricorrente del
progetto): gli strumenti vengono da `deribit._CONTRACT`, la valuta di collaterale da
`config/live.json`. *Chi aggiunge un asset al book allarga la sorveglianza senza toccare questo
file* — ed è esattamente il test che lo blinda.
- **Primo giro semina senza allertare** (P9: l'allarme massimo non si spende per un arretrato di
10 voci, o non verrà letto il giorno che è vero).
- **Feed illeggibile → codice 2 e nessun silenzio implicito** (P5: «non vedo» non è «niente di
nuovo»).
5 test sulle funzioni pure. La rete no: `scarica()` ritorna `None` su qualunque errore, ed è quello
il contratto.
**Cosa NON copre**, e va detto: il **Rulebook** vero e proprio (ADL, perdita socializzata,
*emergency powers*, conti dormienti) non ha un feed. Il debito #8 si restringe, non si chiude.
---
## 5. La Knowledge Base risponde a due domande aperte — e corregge due cose mie
L'operatore ha passato anche *yield-generating-collateral-usde-buidl-and-more*, che **non** documenta
tetti né haircut ma rimanda alla Knowledge Base. Interrogata via API Zendesk
(`support.deribit.com/api/v2/help_center/articles/search.json`), l'articolo giusto è
**«Cross collateral specifications»** (aggiornato 2026-02-20).
### (a) 🚨 Il costo del saldo negativo: **0,05% al GIORNO**
> «*While the equity of a currency in an account remains negative, a **collateral fee** will be
> charged to that account. This fee is charged daily in the same currency as the negative balance
> (**default = 0.05% per day**). The fee is charged based on the amount of time the negative equity
> is held, down to a granularity of seconds.*»
**18,25% annuo**, cioè **4,3× la resa USDE** che si starebbe comprando tenendo meno USDC. Il 30/08
avevo scritto «Deribit lo finanzia a interesse» **senza il numero** — l'affermazione era giusta e
vuota. Con il numero il criterio del **cuscino di regolamento** smette di essere prudenza e diventa
aritmetica: scendere sotto il cuscino per tenere più USDE è **14 punti**.
E il ribilanciamento automatico **non salva**: scatta solo oltre **$1.000.000** assoluti o il
**100% della cross equity** (default tabulati), soglie che a $2k non si toccano mai. Non veniamo
ribilanciati: **sanguiniamo la fee**. *La cosa che sembrava un paracadute è, alla nostra taglia,
esattamente l'assenza di un paracadute.*
### (b) 🚨 Haircut USDe: la fonte dice **5%**, noi abbiamo registrato **10%**
| valuta | haircut X:PM | X:SM |
|---|---|---|
| BTC · ETH · **USDC** | — | — |
| USDT · USYC · **BUIDL** | 2% | 2% |
| PAXG | 2,5% | 5% |
| **USDe** | **5%** | **5%** |
| stETH | 7,5% | 7,5% |
| SOL | — | 15% |
`config/live.json` dice `haircut: 0.10`, e il diario del 26/08 lo dà per «verificato sul venue»
senza lasciare traccia di **come**. L'articolo è **anteriore** a quella data, quindi non si sa
quale delle due sia stale.
**Non l'ho riparato** (P12: fra due fonti che non concordano, una riparazione silenziosa è
un'invenzione; M28: la contraddizione è informazione). Si tiene **0,10** per tre ragioni dichiarate:
è il lato **conservativo** (sottostima il margine utilizzabile), **non è sul percorso soldi** (non
entra nel sizing — lo usa solo il report di `usde_watch`), ed è già misurato che **non morde a
nessuna quota fino al 90%**. Si chiude leggendo la pagina margini del conto, che è dove Deribit
stesso dice di guardare.
### (c) Un dato di lato che vale per il futuro
**BUIDL ha haircut 2%** — sarebbe stato il *miglior* collaterale a rendimento del listino (contro
il 5% dell'USDe), se solo lo si potesse comprare. E **stETH 7,5%**, il peggiore: terza ragione
indipendente per lasciarlo stare, dopo il tasso dimezzato e l'esposizione ETH.
📌 **Nessuna delle due fonti documenta un tetto sulle quantità detenibili.** Il ~31,2% sull'USDE
resta **misurato e non spiegato** — e ora si sa che non è una svista di lettura: non è scritto da
nessuna parte.