Files
PythagorasGoal/docs/diary/2026-08-29-usde-idoneo-e-ib.md
T
Adriano Dal Pastro 993d17556a usde: gate CHIUSO IDONEO, quota rinviata a lunedi' — l'APR si legge col suo n
Il 2026-08-28 12:35Z `usde_watch` ha rilevato il primo reward (+0.052055 USDE su
500), e la regola pre-registrata il 26/08 PRIMA dell'esito ha chiuso il gate
USDE-01 su IDONEO. Si apre la decisione di QUOTA, che e' dell'operatore.

DECISIONE DELL'OPERATORE (29/08): la quota si decide lunedi' 31/08, su tre-quattro
finestre invece che su una. Il motivo e' un numero: sul solo pagamento il tasso
implicito e' 3,80% annuo, su DUE finestre — il 27/08 aveva pagato ZERO — e' 1,90%.
Fra i due c'e' tutta la decisione, e il campione e' UN pagamento.

`rendimento()`: APR sulle finestre OSSERVATE, col denominatore sul TEMPO VERO e
non sul numero di finestre pagate — cosi' una finestra che non paga ABBASSA la
stima invece di sparire (P5: quel silenzio e' uno zero). Le letture con trade nel
mezzo si escludono, non si riparano in silenzio (P12). L'APR si stampa sempre col
suo `n`, e sotto 4 finestre la riga dice «un pagamento non e' un tasso». Sulle
letture vere: 1,97% annuo su 1,9 giorni, 1/2 finestre pagate.

`quota_da_decidere()`: vera SOLO se IDONEO E il rinvio e' scaduto. Da lunedi' il
watch manda il 📌 OGNI giorno — quota attuale, tetto di allerta, APR osservato —
finche' non si decide (N9: una decisione rinviata senza promemoria e' rinviata per
sempre). Stesso schema della soglia $15k di GTAA01, con la data al posto del
capitale. Si smette togliendo `DECISIONE_QUOTA_DAL`.

6 test nuovi, incluso il controllo positivo — «la finestra sola darebbe il doppio»
— che e' esattamente la ragione per cui l'APR non si cita senza il suo n.

CONFERMATO il fix IB di ieri: il giro delle 00:30 ha 0 righe
`orders request timed out` (erano 2 per giro, 63 su 63) e tutti e sei gli ETF
scaricati. E una conferma involontaria del debito §5.13: SPY e' passato da
1996-09-04 a 1996-09-05 — la finestra rotolante ha perso un altro giorno in una
notte, come misurato.

Diario: docs/diary/2026-08-29-usde-idoneo-e-ib.md
Suite: 795 passati, 0 falliti.

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

68 lines
3.4 KiB
Markdown

# 2026-08-29 — USDE idoneo, la quota rinviata a lunedì, e il fix IB confermato
*Scritto il 2026-08-29. Numeri letti dalle serie citate.*
## 1. GATE USDE-01: CHIUSO **IDONEO**
Il 2026-08-28 alle 12:35Z `usde_watch` ha rilevato il primo reward:
```
equity USDE : 500.0521 @ 1.0001 (indice) -> $500.05
delta : +0.052055 USDE dall'ultima lettura
verdetto : IDONEO — reward rilevato il 2026-08-28T12:35:01Z
```
La regola era pre-registrata il 26/08, **prima** dell'esito: ≥1 reward entro il 29/08 → IDONEO,
e si apre la decisione di QUOTA, che è dell'operatore. Il gate ha fatto quello che doveva.
## 2. Il tasso, e perché la quota è stata rinviata
| lettura | tasso implicito |
|---|---|
| il solo pagamento (0,052055 su 500) | **3,80% annuo** |
| su **due** finestre — il 27/08 ha pagato **zero** | **1,90% annuo** |
| annunciato da Deribit (ricerca 26/08) | 9% |
**Decisione dell'operatore (29/08): la quota si decide lunedì 31/08**, su tre-quattro finestre
invece che su una. Il motivo è nella tabella: fra 3,80% e 1,90% c'è tutta la decisione, e il
campione è **un pagamento**. Il costo dell'attesa è zero — i 500 USDE rendono comunque.
📌 Perché il numero non venga letto male: `usde_watch.rendimento()` calcola l'APR sulle finestre
**osservate**, col denominatore sul **tempo vero** e non sul numero di finestre pagate — così una
finestra che non paga **abbassa** la stima invece di sparire (P5: quel silenzio è uno zero). Le
letture con trade nel mezzo si escludono (P12). L'APR si stampa sempre **col suo `n`**, e sotto
4 finestre la riga dice *«un pagamento non è un tasso»*. Sulle letture vere di oggi:
**1,97% annuo su 1,9 giorni, 1/2 finestre pagate**.
📌 Perché la decisione non si dimentichi (N9): `quota_da_decidere()` è vera **solo** se il conto è
IDONEO **e** il rinvio è scaduto. Da lunedì il watch manda il 📌 **ogni giorno** — con quota
attuale, tetto di allerta e APR osservato accanto — finché non si decide. Si smette togliendo
`DECISIONE_QUOTA_DAL`. È lo stesso schema della soglia $15k di GTAA01, con la data al posto
del capitale.
⚠️ Nota di contorno che vale una lezione: il 📌 dell'IDONEO era partito su Telegram il 28/08 alle
12:35Z, **in mezzo ai messaggi-spazzatura dei test** delle 14:47 e 14:52 (difetto riparato lo
stesso giorno). L'unico messaggio che contava è arrivato nel giorno in cui il canale era sporco.
È P9 in forma concreta.
## 3. Il fix IB è confermato
Il giro del cron delle 00:30 di stanotte: **zero** righe `open orders request timed out` (erano
2 per giro, 63 giri su 63) e tutti e sei gli ETF scaricati — `SPY n=7541`, `QQQ n=6912`,
`IWM n=6602`, `TLT n=2658`, `GLD n=5476`, `HYG n=4877`, aggiornati al 28/08. Il `readonly=True`
resta.
📌 E una conferma involontaria del debito §5.13: **SPY è passato da `1996-09-04` a `1996-09-05`**.
La finestra rotolante ha perso un altro giorno di borsa in una notte, esattamente come misurato
il 28/08 — il difetto si legge a occhio nudo nel log del cron.
## Cosa cambia
- `scripts/live/usde_watch.py`: `rendimento()` (APR sulle finestre osservate, col suo n) ·
`quota_da_decidere()` · `DECISIONE_QUOTA_DAL = "2026-08-31"` · il 📌 giornaliero da lunedì.
- `tests/test_usde_watch.py`: 6 test nuovi, incluso il controllo positivo (*la finestra sola
darebbe il doppio*) che è la ragione per cui l'APR si stampa col suo `n`.
- `CLAUDE.md`: §1 e §4 aggiornati — gate CHIUSO IDONEO, quota rinviata a lunedì.
**Suite: 795 passati, 0 falliti.**