Stabiler Pinnacle-WebSocket: stale Preise und Reconnect
Antwort: behandeln Sie den Socket als unzuverlässigen Transport. (1) Antworten Sie auf jedes ping mit {"type":"pong"}. (2) Bei close exponentielles Backoff + Jitter, erneut abonnieren, Maps bei Snapshot part === 1 leeren. (3) Verfolgen Sie seq/ts und den letzten Apply — überschreitet die Stille Ihr SLA, erzwingen Sie den Reconnect. (4) Close-Codes beachten (1001 Deploy, 4008 slow consumer). Builder nötig (99 €/Monat). Node-Beispiel: Reconnect.
Stale-price detection (client-side)#
import time
LAST = {"ts": 0.0}
STALE_SEC = 15 # your SLA — not a vendor latency claim
def on_message(msg):
if msg["type"] in ("snapshot", "delta", "ping"):
LAST["ts"] = time.time()
def watchdog():
if time.time() - LAST["ts"] > STALE_SEC:
raise TimeoutError("no frames; reconnect")
Quiet markets are normal — gate the watchdog on whether events you care about are live.
Failure modes#
| Signal | Action |
|---|---|
No pong path | Socket dies ~60 s after missed ping |
4008 slow_consumer | Narrow filters or speed up handlers |
1001 server_shutdown | Backoff reconnect (deploy) |
| Snapshot without clear | Ghost markets from the previous session |
We do not publish latency versus named competitors. Measure tick → your handler yourself.
CTA#
Builder. 3-day trial; card required, charged after day 3 unless cancelled. Docs: WebSocket.
Häufige Fragen#
Reicht Guest-Scraping?#
Account-Bans und verzögerte Guest-Boards sind typische Fehler. Ein Self-Serve-API-Key mit dokumentierten Close-Codes ist der unterstützte Weg.
Garantiert ihr Sub-Sekunden-Updates?#
Wir dokumentieren Heartbeats und Frame-Typen, keinen Marketing-RTT gegen andere Reseller. Instrumentieren Sie End-to-End.
Bildungsinhalt für Erwachsene?#
Ja (18+).
Bildungsinhalt für Erwachsene (18+). Keine Tipps, kein Gewinnversprechen. In Deutschland nur bei Anbietern auf der GGL-Whitelist wetten.