docs(spec): rimuovi depth_zero_pct + nota su book_depth_top3 NULL-by-design
Allinea la spec all'implementazione: dataclass ChainAuditReport senza depth_zero_pct, tabella checks senza la riga book_depth_top3=0, output example senza la riga depth_top3. Aggiunta nota che spiega perché il check è stato rimosso (colonna popolata solo dal path entry_cycle). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -78,7 +78,6 @@ class ChainAuditReport:
|
|||||||
bid_gt_ask_count: int
|
bid_gt_ask_count: int
|
||||||
iv_null_count: int
|
iv_null_count: int
|
||||||
iv_null_pct: Decimal
|
iv_null_pct: Decimal
|
||||||
depth_zero_pct: Decimal
|
|
||||||
|
|
||||||
def audit_market_snapshots(conn, *, asset, since, now) -> MarketAuditReport: ...
|
def audit_market_snapshots(conn, *, asset, since, now) -> MarketAuditReport: ...
|
||||||
def audit_option_chain(conn, *, asset, since, now) -> ChainAuditReport: ...
|
def audit_option_chain(conn, *, asset, since, now) -> ChainAuditReport: ...
|
||||||
@@ -95,7 +94,13 @@ def audit_option_chain(conn, *, asset, since, now) -> ChainAuditReport: ...
|
|||||||
| option_chain_snapshots | quote/snap < 50% mediana 24h | qualsiasi | rilevatore di chain truncate (mismatch with width filter) |
|
| option_chain_snapshots | quote/snap < 50% mediana 24h | qualsiasi | rilevatore di chain truncate (mismatch with width filter) |
|
||||||
| option_chain_snapshots | bid > ask | qualsiasi | dato corrotto, da indagare |
|
| option_chain_snapshots | bid > ask | qualsiasi | dato corrotto, da indagare |
|
||||||
| option_chain_snapshots | IV null/non-parseable | conteggio + % | IV è chiave per BS skew calibration |
|
| option_chain_snapshots | IV null/non-parseable | conteggio + % | IV è chiave per BS skew calibration |
|
||||||
| option_chain_snapshots | `book_depth_top3 = 0` | % per snapshot | proxy di illiquidità |
|
|
||||||
|
> **Nota:** il check `book_depth_top3 = 0` originariamente previsto è
|
||||||
|
> stato rimosso. La colonna è NULL by design sugli snapshot (il collector
|
||||||
|
> `option_chain_snapshot_cycle` non chiama l'orderbook per ogni strike
|
||||||
|
> per non saturare l'API Deribit); viene popolata solo dal path
|
||||||
|
> `entry_cycle` per gli strike candidati al picker. Il check di liquidità
|
||||||
|
> ha senso solo lì, non in questo audit.
|
||||||
|
|
||||||
Le soglie sono costanti modulo (non config YAML) per ridurre il blast
|
Le soglie sono costanti modulo (non config YAML) per ridurre il blast
|
||||||
radius dei cambi: il backtest e l'audit girano in contesti diversi,
|
radius dei cambi: il backtest e l'audit girano in contesti diversi,
|
||||||
@@ -140,7 +145,6 @@ l'umano. Far diventare l'audit un gate CI è out of scope.
|
|||||||
quotes/snap: median 55 p10 50 p90 60
|
quotes/snap: median 55 p10 50 p90 60
|
||||||
bid > ask: 0
|
bid > ask: 0
|
||||||
IV null: 12 quotes (0.03%)
|
IV null: 12 quotes (0.03%)
|
||||||
depth_top3 = 0: 1.2% of quotes
|
|
||||||
|
|
||||||
=== BTC — ...
|
=== BTC — ...
|
||||||
```
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user