WebSocket API-Referenz

Echtzeit-Datenstreaming für Whale-Positionen, Funding Rates, Liquidierungen und KI-Bestätigungs-Scores. Sub-Sekunden-Latenz mit automatischer Wiederherstellung, effizienter Datenkomprimierung und Multi-Stream-Abonnements.

Übersicht

Die WebSocket API ermöglicht bidirektionale Kommunikation mit geringer Latenz für Echtzeit-Daten zu Kryptowährungsderivaten. Anstatt REST-Endpoints alle 5-30 Sekunden abzufragen, liefern WebSocket-Verbindungen Updates sofort bei Marktänderungen. Ideal für Trading-Bots, Alarmsysteme und Echtzeit-Dashboards.

Hauptvorteile von WebSocket gegenüber REST:

Sub-Sekunden-Latenz bei marktbewegenden Ereignissen (Liquidierungen, Whale-Bewegungen)
Effiziente Bandbreitennutzung durch delta-kodierte Updates
Mehrere gleichzeitige Abonnements über eine einzelne Verbindung
Serverseitige Filterung und Aggregation
Automatische Herzschlag- und Wiederherstellungsbehandlung
Geringere API-Anfragen gegen Ihr Kontingent
WebSocket-Verbindungen sind für alle API-Tarife verfügbar. Nutzer des kostenlosen Tarifs können Funding-Rates- und Liquidierungs-Streams abonnieren. Trader- und Pro-Tarife ermöglichen Whale-Positionen, Open Interest und Bestätigungs-Scores.

Authentifizierung

WebSocket-Verbindungen verwenden dieselbe Authentifizierung wie REST-Endpoints. Übergeben Sie Ihren API-Schlüssel als Query-Parameter oder senden Sie ihn in der ersten Nachricht nach der Verbindung.

Verbindungs-URL

Basis-WebSocket-URL: wss://ws.smartmoneyapi.com/stream

Fügen Sie Ihren API-Schlüssel in die Verbindungs-URL ein:

URL
wss://ws.smartmoneyapi.com/stream?token=sk_live_abc123xyz789

Verbindungslebenszyklus

Erstverbindung

Wenn Sie eine Verbindung zum WebSocket-Endpoint herstellen, validiert der Server Ihr Authentifizierungstoken und sendet eine Verbindungsbestätigung.

Serverantwort (JSON)
{ "type": "connection_ack", "connection_id": "conn_1a2b3c4d5e6f7g8h", "server_version": "1.2.4", "timestamp": "2026-03-21T14:35:22Z", "api_tier": "pro", "max_subscriptions": 50, "max_symbols_per_sub": 100 }

Herzschlag (Ping/Pong)

Der Server sendet regelmäßige Ping-Nachrichten alle 30 Sekunden. Ihr Client muss mit einer Pong-Nachricht antworten, um die Verbindung aufrechtzuerhalten. Falls der Server innerhalb von 10 Sekunden keine Pong-Antwort erhält, wird die Verbindung geschlossen.

JavaScript
const ws = new WebSocket("wss://ws.smartmoneyapi.com/stream?token=sk_live_abc123xyz789"); ws.onmessage = (event) => { const msg = JSON.parse(event.data); if (msg.type === "ping") { // Auf Ping mit Pong antworten ws.send(JSON.stringify({ type: "pong", id: msg.id })); } }; ws.onopen = () => { console.log("Mit WebSocket verbunden"); };

Abonnements

Nach der Verbindung können Sie Datenstreams über Abonnement-Nachrichten abonnieren. Jedes Abonnement generiert Updates bei Marktdatenänderungen.

Abonnement-Nachrichtenformat

JSON
{ "type": "subscribe", "channel": "whale_positions", "symbols": ["BTCUSDT", "ETHUSDT"], "params": { "min_position_size": 10, "exchanges": ["bybit", "binance"] } }

Deabonnement-Nachrichtenformat

JSON
{ "type": "unsubscribe", "channel": "whale_positions", "symbols": ["BTCUSDT"] }

Whale-Positionen-Stream

Echtzeit-Updates für große Whale-Positionen auf allen verfolgten Symbolen und Börsen. Updates werden gesendet, wenn Whales Positionen eröffnen, schließen oder ändern. Enthält Einstiegspreis, aktuellen Preis, P&L, Hebel und Liquidierungsrisiko.

JSON — Abonnieren
{ "type": "subscribe", "channel": "whale_positions", "symbols": ["BTCUSDT", "ETHUSDT", "SOLUSDT"] }

Update-Nachricht

JSON — Update
{ "type": "data", "channel": "whale_positions", "symbol": "BTCUSDT", "data": { "wallet_address": "0x1234...", "exchange": "bybit", "direction": "long", "position_size": 25.3, "entry_price": 41200.0, "current_price": 43200.5, "pnl": 50701.50, "pnl_percent": 4.86, "leverage": 8, "liquidation_price": 33760.0, "timestamp": "2026-03-21T14:35:45Z" } }

Funding-Rates-Stream

Echtzeit-Updates zu Funding Rates über Bybit, Binance und Hyperliquid. Updates alle 1 Minute oder bei signifikanten Änderungen. Enthält individuelle Börsenraten und aggregierte Metriken.

JSON — Abonnieren
{ "type": "subscribe", "channel": "funding_rates", "symbols": ["BTCUSDT", "ETHUSDT"] }

Update-Nachricht

JSON — Update
{ "type": "data", "channel": "funding_rates", "symbol": "BTCUSDT", "data": { "timestamp": "2026-03-21T14:00:00Z", "bybit": { "rate": 0.000120, "next_rate": 0.000145 }, "binance": { "rate": 0.000098, "next_rate": 0.000115 }, "hyperliquid": { "rate": 0.000140, "next_rate": 0.000160 }, "aggregated": { "mean": 0.000119, "median": 0.000120, "spread": 0.000062 } } }

Liquidierungs-Stream

Echtzeit-Feed zu Liquidierungen, die erzwungene Schließungen von gehebelten Positionen zeigen. Enthält Positionsgröße, Liquidierungspreis, Richtung (long/short) und Börse. Nützlich zur Identifizierung von Liquidierungskaskaden und marktbewegenden Ereignissen.

JSON — Abonnieren
{ "type": "subscribe", "channel": "liquidations", "params": { "min_size_usd": 50000 } }

Update-Nachricht

JSON — Update
{ "type": "data", "channel": "liquidations", "data": { "exchange": "binance", "symbol": "BTCUSDT", "direction": "long", "position_size": 12.5, "liquidation_price": 41000.0, "size_usd": 512500.0, "timestamp": "2026-03-21T14:35:12Z" } }

Open-Interest-Stream

Aggregiertes Open Interest für alle Hebelhändler pro Symbol. Verfolgen Sie OI-Anstiege (mehr Geld in Hebelpositionen) und -Rückgänge (Positionenschließungen). OI-Divergenz zur Preisbewegung identifiziert versteckte bullische/bärische Erschöpfung.

JSON — Abonnieren
{ "type": "subscribe", "channel": "open_interest", "symbols": ["BTCUSDT", "ETHUSDT"] }

Bestätigungs-Scores-Stream

Echtzeit-KI-Bestätigungs-Scores, die Whale-Positionen, On-Chain-Signale, Funding Rates und Sentiment-Daten kombinieren. Scores aktualisieren sich bei Änderungen der zugrundeliegenden Signale und liefern Live-Ein-/Ausstiegssignale für Handelsalgorithmen.

JSON — Abonnieren
{ "type": "subscribe", "channel": "confirmation_scores", "symbols": ["BTCUSDT", "ETHUSDT", "SOLUSDT"] }

Automatische Wiederherstellungslogik

Netzwerkprobleme oder Serverwartung können zu Verbindungsabbrüchen führen. Implementieren Sie exponentielle Backoff-Wiederherstellungslogik, um automatisch von Fehlern zu erholen und Serverlast zu respektieren.

Empfohlene Wiederherstellungsstrategie

JavaScript
class SmartMoneyWebSocket { constructor(token, options = {}) { this.token = token; this.maxReconnectDelay = options.maxReconnectDelay || 30000; this.reconnectDelay = 1000; this.subscriptions = new Map(); this.connect(); } connect() { this.ws = new WebSocket( `wss://ws.smartmoneyapi.com/stream?token=${this.token}` ); this.ws.onopen = () => { console.log("Verbunden"); this.reconnectDelay = 1000; // Backoff zurücksetzen this.resubscribe(); // Nach Wiederherstellung erneut abonnieren }; this.ws.onmessage = (event) => { const msg = JSON.parse(event.data); if (msg.type === "ping") { this.ws.send(JSON.stringify({ type: "pong", id: msg.id })); } this.onMessage(msg); }; this.ws.onclose = () => this.reconnect(); this.ws.onerror = (err) => console.error("WebSocket-Fehler:", err); } reconnect() { console.log(`Wiederherstellung in ${this.reconnectDelay}ms`); setTimeout(() => { this.connect(); this.reconnectDelay = Math.min( this.reconnectDelay * 1.5, this.maxReconnectDelay ); }, this.reconnectDelay); } subscribe(channel, symbols, params) { const key = `${channel}:${symbols.join(",")}`; this.subscriptions.set(key, { channel, symbols, params }); this.ws.send(JSON.stringify({ type: "subscribe", channel, symbols, params })); } resubscribe() { for (const { channel, symbols, params } of this.subscriptions.values()) { this.ws.send(JSON.stringify({ type: "subscribe", channel, symbols, params })); } } onMessage(msg) { if (msg.type === "data") { console.log(`Update: ${msg.channel}/${msg.symbol}`, msg.data); } } } const client = new SmartMoneyWebSocket("sk_live_abc123xyz789"); client.subscribe("whale_positions", ["BTCUSDT", "ETHUSDT"]); client.subscribe("funding_rates", ["BTCUSDT"]); client.subscribe("liquidations", [], { min_size_usd: 100000 });

Codebeispiele

Python-WebSocket-Client

Python
import asyncio import json import websockets async def stream_whale_positions(): uri = "wss://ws.smartmoneyapi.com/stream?token=sk_live_abc123xyz789" async with websockets.connect(uri) as websocket: # Auf Verbindungsbestätigung warten ack = await websocket.recv() print(f"Verbunden: {ack}") # Whale-Positionen abonnieren await websocket.send(json.dumps({ "type": "subscribe", "channel": "whale_positions", "symbols": ["BTCUSDT", "ETHUSDT"] })) # Auf Updates warten while True: try: msg = await websocket.recv() data = json.loads(msg) if data["type"] == "ping": # Auf Ping antworten await websocket.send(json.dumps({ "type": "pong", "id": data["id"] })) elif data["type"] == "data": print(f"Neue Position: {data['data']}") except websockets.exceptions.ConnectionClosed: print("Verbindung geschlossen, wiederherstellen...") await asyncio.sleep(1) asyncio.run(stream_whale_positions())

Performance-Tipps

Serverseitig filtern: Nutzen Sie das params-Objekt, um Daten serverseitig zu filtern (min_position_size, min_size_usd) statt clientseitig.
Abonnements bündeln: Abonnieren Sie mehrere Symbole in einer Nachricht statt einzelner Abonnements pro Symbol.
Unnötige Abonnements kündigen: Kündigen Sie ungenutzte Streams, um Bandbreite zu sparen und Nachrichtenaufkommen zu reduzieren.
Gzip-Komprimierung nutzen: Aktivieren Sie Nachrichtenkomprimierung in Ihrem WebSocket-Client für Bandbreiteneinsparungen (20-40% Reduktion).
Verbindungsstatus überwachen: Tracken Sie Ping/Pong-Latenz und automatische Wiederherstellungen, um Netzwerkprobleme zu diagnostizieren.
Nachrichten bei Abbruch puffern: Bei Verbindungsabbrüchen Strategie-Signale in einer Warteschlange speichern und bei Wiederherstellung ausführen.

Jetzt streamen

Holen Sie sich Ihren API-Schlüssel und beginnen Sie mit dem Aufbau von Echtzeit-Handelssystemen. WebSocket-Streaming ist in allen Tarifen verfügbar.

API-Schlüssel erhalten

Echtzeit-Handelssysteme erstellen

Streamen Sie Wal-Positionen, Funding Rates und KI-Bestätigungswerte mit Sub-Sekunden-Latenz.

Pläne anzeigen
Kostenlos starten — 200 Aufrufe/Tag, keine Karte

Erhalten Sie Live-Wal-Flows, Funding, Open Interest und On-Chain-Daten über 3 Börsen aus einer API. Kostenloser Tarif, keine Kreditkarte, jederzeit upgraden.

Kostenlos starten →
Probieren Sie die Live-API-Konsole → (kein Konto erforderlich)
Holen Sie sich Ihren API-Schlüssel in 30 Sekunden

Bereit zum Bauen? Holen Sie sich einen kostenlosen API-Schlüssel (200 Aufrufe/Tag, keine Karte) und beginnen Sie mit dem Abrufen von Live-Wal-, Funding- und On-Chain-Daten.

Holen Sie sich Ihren API-Schlüssel →