Binance предоставляет API для работы с WebSockets, которые позволяют получать потоковые данные о рынках, ордерах и других событиях в режиме реального времени. Вот несколько примеров использования Binance WebSocket API:
- Получение потоковых данных о ценах на определенную торговую пару:
pythonCopy codeimport websocket
import json
def on_message(ws, message):
data = json.loads(message)
# Обработка данных о цене
def on_error(ws, error):
print(error)
def on_close(ws):
print("Соединение закрыто")
def on_open(ws):
ws.send('{"method": "SUBSCRIBE", "params": ["btcusdt@ticker"], "id": 1}')
if __name__ == "__main__":
websocket.enableTrace(True)
ws = websocket.WebSocketApp("wss://stream.binance.com:9443/ws",
on_message = on_message,
on_error = on_error,
on_close = on_close)
ws.on_open = on_open
ws.run_forever()
В этом примере мы подписываемся на поток данных о цене для пары BTC/USDT. Когда появляются обновления, метод on_message
вызывается, и вы можете обработать полученные данные.
- Получение потоковых данных о сделках на определенной торговой паре:
pythonCopy codeimport websocket
import json
def on_message(ws, message):
data = json.loads(message)
# Обработка данных о сделке
def on_error(ws, error):
print(error)
def on_close(ws):
print("Соединение закрыто")
def on_open(ws):
ws.send('{"method": "SUBSCRIBE", "params": ["btcusdt@trade"], "id": 1}')
if __name__ == "__main__":
websocket.enableTrace(True)
ws = websocket.WebSocketApp("wss://stream.binance.com:9443/ws",
on_message = on_message,
on_error = on_error,
on_close = on_close)
ws.on_open = on_open
ws.run_forever()
В этом примере мы подписываемся на поток данных о сделках для пары BTC/USDT. Когда происходит новая сделка, метод on_message
вызывается, и вы можете обработать полученные данные.
- Получение потоковых данных о стакане (ордерах) на определенной торговой паре:
pythonCopy codeimport websocket
import json
def on_message(ws, message):
data = json.loads(message)
# Обработка данных о стакане
def on_error(ws, error):
print(error)
def on_close(ws):
print("Соединение закрыто")
def on_open(ws):
ws.send('{"method": "SUBSCRIBE", "params": ["btcusdt@depth"], "id": 1}')
if __name__ == "__main__":
websocket.enableTrace(True)
ws = websocket.WebSocketApp("wss://stream.binance.com:9443/ws",
on_message = on_message,
on_error = on_error,
on_close = on_close)
ws.on_open = on_open
ws.run_forever()
В этом примере мы подписываемся на поток данных о стакане (ордерах) для пары BTC/USDT. Когда происходят изменения в стакане, метод on_message
вызывается, и вы можете обработать полученные данные.
Это только некоторые примеры использования Binance WebSocket API. Вы можете изучить документацию Binance API для получения более подробной информации о доступных потоках данных и методах подписки.