{"type": "subscribe", "channels": ["level2"], "symbols": ["AAPL-USD","SP500-USD"]}
{"type": "subscribe", "channels": ["level2"], "symbols": ["*"]}
# Python (websocket-client) # pip install websocket-client import json import websocket def on_open(ws): sub = { "type": "subscribe", "channels": ["level2"], "symbols": ["SP500-USD"] # or ["*"] } ws.send(json.dumps(sub)) def on_message(ws, message): data = json.loads(message) print("OrderBook update:", json.dumps(data, indent=2)) def on_error(ws, error): print("Error:", error) def on_close(ws, close_status_code, close_msg): print("Closed:", close_status_code, close_msg) if __name__ == "__main__": ws = websocket.WebSocketApp( "wss://mds.qfex.com", on_open=on_open, on_message=on_message, on_error=on_error, on_close=on_close, ) ws.run_forever()
{ "type": "level2", "symbol": "AAPL-USD", "bid": [ ["10101.10", "0.45054140"], ["10101.00", "0.55054140"] ], "ask": [ ["10102.55", "0.57753524"], ["10102.65", "0.57753524"] ], "sequence": 30272539, "time": "2025-09-04T09:26:39.545268322Z" }
{"type":"unsubscribe","channels":["level2"],"symbols":["SP500-USD"]}
symbols
*