Hyperliquid geprueft: Orderbuch-Stimme raus, Funding gemessen (traegt nicht),

Kontext in die Meldungen (v=145)

Direkt gegen die HL-API geprueft statt aus dem Code geschlossen.

ANGEBOT: 4 Oel-Maerkte (2 liquide: xyz:CL OI 3,07 Mio, xyz:BRENTOIL 2,25 Mio),
je Markt mark/oracle/funding/open_interest/day_volume + l2Book (20 Level je
Seite). Historie: fundingHistory 5.095 Stundenwerte ueber 7 Monate inkl.
premium. Open Interest hat KEINE Historie -> waere sammelpflichtig.

Netz-Frage geklaert: config sagt testnet (leeres Buch, 0 Bids/0 Asks), aber es
sind zwei Schalter — [hyperliquid] network steuert das Handeln (aus),
[sim] price_network die Daten (mainnet, live bestaetigt).

(1) Mehr Orderbuch-Daten: NEIN. Zweimal unabhaengig gemessen — bookflow_report
    0,2-1,0 bp gegen eine ~3-bp-Schwelle und KIPPT; Lead-Lag: Pepperstone
    fuehrt, HL trifft nach 6 s zu 51 %.
(2) Modul "Orderbuch" Gewicht 0,5 -> 0. Ueber 2.688 Episoden beidhaelftig
    negativ (-0,054/-0,066, 49 % Treffer). Chip bleibt.
(3) analyze_hl_funding.py: Funding/Premium gegen den CFD, 2 Haelften.
    ⚠ Der erste Lauf meldete mehrere "robuste" Buckets und war FALSCH —
    ueberlappende Forward-Fenster (aus n=506 werden ~21 unabhaengige Faelle)
    und global gebildete Quintile (Bucket mit der Zeit konfundiert). Dass
    Funding- und Premium-Tabelle fast identisch waren, war der dritte Hinweis:
    HL rechnet das Funding aus dem Premium. Entueberlappt haelt kein Bucket.
(4) hl_ctx in den Meldungen (#hl-note) als reine Anzeige.
    ⚠ Zwei Bau-Fallen behoben: der Aufruf erbte den 2-s-Timeout der Waende und
    lief still ins Leere (braucht real 7,2 s), und er haette den Trend-Loop
    blockiert -> Daemon-Thread wie beim Wirtschaftskalender.

Live verifiziert: hl_ctx befuellt, Orderbuch weight=0 bei erhaltenem Chip,
v=145 ausgeliefert, eine Instanz auf Port 8000.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Axel Hocks
2026-08-06 23:38:01 +02:00
co-authored by Claude Opus 5
parent 874ee16e00
commit 2cdd1ba0e8
7 changed files with 375 additions and 4 deletions
+54 -1
View File
@@ -3661,7 +3661,60 @@ dort bereits nachvalidiert, ØR +0,305.) **Eine** Oberfläche:
49 % Treffer) bei Gewicht 0,5 — der einzige konsistent falsche Beitrag.
**Muster** (+1,27/+0,67, 58 %, n=88) und **Liq-Trend** (+0,20/+0,32, n=132)
sehen gut aus, sind aber zu dünn. Alle übrigen kippen zwischen den Hälften.
- Asset-Version aktuell **v=144** (in `web/index.html` hochzählen, siehe Workflows).
- **⚠⚠ HYPERLIQUID: WAS ES LIEFERT UND WAS DAVON TRÄGT (2026-08-06, User-Frage
„können wir mehr HL-Daten nutzen?").** Direkt gegen die API geprüft, nicht aus
dem Code geschlossen.
**Angebot:** vier Öl-Märkte, zwei mit echter Liquidität — `xyz:CL` (unser Feed,
OI 3,07 Mio, Tagesvolumen 316 Mio) und `xyz:BRENTOIL` (OI 2,25 Mio); `flx:OIL`
und `cash:WTI` sind tot (OI 0). Je Markt `mark_px` · **`oracle_px`** ·
**`funding`** · **`open_interest`** · `day_volume`, dazu `l2Book` mit 20 Levels
je Seite. **Historie:** `fundingHistory` gibt **5.095 Stundenwerte über 7 Monate**
(inkl. `premium`), `candleSnapshot` H1-Kerzen, `predictedFundings` venue-übergreifend.
**Open Interest hat KEINE Historie** — nur der Momentanwert; OI wäre
sammelpflichtig und bleibt offen.
**Netz-Frage geklärt (sah zuerst nach einem Defekt aus):** `config.ini` sagt
`network = testnet`, und **Testnet hat ein LEERES Buch** (0 Bids/0 Asks, OI 2,55
gegen 3,07 Mio). Es sind aber **zwei** Schalter: `[hyperliquid] network` steuert
das **Handeln** (bewusst aus), `[sim] price_network` die **Daten** und steht per
Default auf mainnet — live bestätigt (`/api/market` meldet `network: mainnet`).
⚠ Bleibt eine Falle: ein Wort in der falschen Sektion, und der Bot zeichnet
stillschweigend Wände aus einem leeren Buch.
**(1) MEHR ORDERBUCH-DATEN = NEIN, zweimal unabhängig gemessen.** Das HL-Projekt
selbst (`bookflow_report.txt`): Bid/Ask-Druck auf den CFD 0,61/0,52 bp und
**KIPPT**; Wände halten in 4750 %; die eigene Schwelle dort lautet **„< ~3 bp
ist von den Kosten gefressen"** — gemessen sind es 0,21,0 bp. Dazu der
Lead-Lag-Befund: **Pepperstone führt** (Peak k=1 ≈ 6 s), HL-Richtung trifft nach
6 s zu **51 %** (n=545). Alles Preis-Abgeleitete von HL läuft hinterher.
**(2) MODUL „ORDERBUCH" ENTMACHTET — Gewicht 0,5 → 0.** Unabhängige Bestätigung
aus `analyze_verdict_modules.py`: über **2.688 Episoden beidhälftig NEGATIV**
(0,054/0,066 ×ATR, 49 % Treffer) — der einzige konsistent falsche Beitrag im
Feld. Chip bleibt, Stimme entfällt. Zurück: `ow = 0.5`.
**(3) FUNDING/PREMIUM GEMESSEN = TRÄGT NICHT (`analyze_hl_funding.py`).**
Positionierung statt Preis, also nicht vom Lead-Lag-Einwand betroffen — und dank
`fundingHistory` sofort prüfbar. 5.095 Stundenwerte, 3.626 mit passender H1-Bar,
gegen den **Pepperstone-CFD**, 2 Hälften, gegen die Drift.
⚠⚠ **Der erste Lauf meldete mehrere „robuste" Buckets — und war falsch.** Zwei
Fehler in meinem eigenen Skript: **(a) überlappende Forward-Fenster** (stündliche
Beobachtungen, 4/12/24-h-Horizont → aufeinanderfolgende Zeilen teilen fast ihr
ganzes Fenster; aus n=506 werden ~21 unabhängige Fälle) und **(b) global
gebildete Quintile**, wodurch die Bucket-Zugehörigkeit mit der Zeit konfundiert
war (Q5 hatte 506 Fälle in H1, aber 219 in H2 = Regimewechsel, nicht Merkmal).
⚠ Dritter Hinweis, der stutzig machte: **Funding- und Premium-Tabelle waren
nahezu identisch** — HL rechnet das Funding AUS dem Premium; es war eine
Messung, doppelt berichtet.
**Entüberlappt und mit Quintilen je Hälfte hält KEIN Bucket** die Regel; die
verbleibenden ✅ sitzen bei n=1530 und sind Rauschen. **Kein Verdict-Gewicht.**
**(4) HL-KONTEXT IN DEN MELDUNGEN (reine Anzeige, v=145).** `hl_walls.market()`
(lokales Dashboard, keine neue externe Abhängigkeit) → Snapshot **`hl_ctx`** →
Zeile **`#hl-note`**: „Perp 0,03 $ zum Oracle · Funding 0,0083 %/h · OI
3,07 Mio". Kein Gewicht, kein Trigger; der Tooltip nennt die Messung.
**Zwei Bau-Fallen, beide behoben:** der Aufruf lief zunächst immer ins Leere,
weil er den **2-s-Timeout der Wände** erbte — `/api/market` fragt HL live ab und
braucht real **7,2 s** (eigener `_MARKET_TIMEOUT_S=12`); und der stille `except`
machte daraus ein wortloses `None`. Danach hätte er den **Trend-Loop 7 s
blockiert** → läuft jetzt im **Daemon-Thread**, wie der Wirtschaftskalender und
aus demselben Grund.
- Asset-Version aktuell **v=145** (in `web/index.html` hochzählen, siehe Workflows).
Schriftgrößen 2026-07-24 global **+4px** (2× je +2px auf User-Wunsch; Body-Basis
14→18px). ⚠ Betrifft in `style.css` sowohl `font-size:Npx` (71×) ALS AUCH die
`font:<weight> Npx/…`-**Shorthand** (3×: `.ms-chip`/`.ms-bos-lbl`/`.sqm-badge`