Bybit API
Создавайте собственных торговых ботов, анализируйте рынки и управляйте аккаунтом программно. Полная документация по REST и WebSocket API.
Создать API-ключБезопасность
Аутентификация с использованием API-ключа и секрета. Поддерживается HMAC SHA256 и RSA. В каждом запросе обязательны временная метка и параметры.
Высокая производительность
До 50 запросов в секунду для публичных эндпоинтов. Лимиты для приватных эндпоинтов варьируются в зависимости от типа.
Глобальная инфраструктура
API доступен по всему миру. Сервера расположены в нескольких регионах для минимальной задержки.
Данные в реальном времени
Доступ к спотовому и фьючерсному рынкам, стаканам заявок, истории сделок, балансам и многому другому.
Базовые эндпоинты
Базовый URL REST API: https://api.bybit.com
Тестнет: https://api-testnet.bybit.com
Публичные данные (без аутентификации)
Приватные эндпоинты (требуют аутентификации)
Аутентификация
# Заголовки для приватных запросов
X-BAPI-API-KEY: {api_key}
X-BAPI-TIMESTAMP: {timestamp}
X-BAPI-SIGN: {signature}
X-BAPI-RECV-WINDOW: 5000
Подпись — это HMAC SHA256 от строки: timestamp + api_key + recv_window + params
WebSocket потоки
Публичный WebSocket: wss://stream.bybit.com/v5/public/spot
Приватный WebSocket: wss://stream.bybit.com/v5/private/spot
Подписка на публичные каналы
{
"op": "subscribe",
"args": ["tickers.BTCUSDT", "orderbook.50.BTCUSDT", "kline.1m.BTCUSDT"]
}
Приватные каналы (аутентификация)
{
"op": "auth",
"args": [api_key, timestamp, signature]
}
После успешной аутентификации вы можете подписаться на order, position, wallet и другие приватные каналы.
Python: Получить цену BTC
import requests
response = requests.get("https://api.bybit.com/v5/market/tickers?category=spot&symbol=BTCUSDT")
data = response.json()
print(data['result']['list'][0]['lastPrice'])
JavaScript: Создать лимитный ордер
const CryptoJS = require('crypto-js');
const apiKey = 'YOUR_API_KEY';
const secret = 'YOUR_API_SECRET';
const timestamp = Date.now();
const params = `&category=spot&symbol=BTCUSDT&side=Buy&orderType=Limit&qty=0.001&price=50000&timeInForce=GTC`;
const signature = CryptoJS.HmacSHA256(timestamp + apiKey + '5000' + params, secret).toString();
fetch('https://api.bybit.com/v5/order/create', {
method: 'POST',
headers: {
'X-BAPI-API-KEY': apiKey,
'X-BAPI-TIMESTAMP': timestamp,
'X-BAPI-SIGN': signature,
'X-BAPI-RECV-WINDOW': '5000',
'Content-Type': 'application/json'
},
body: JSON.stringify({
category: 'spot',
symbol: 'BTCUSDT',
side: 'Buy',
orderType: 'Limit',
qty: '0.001',
price: '50000',
timeInForce: 'GTC'
})
});
Пример WebSocket на Python
import websocket
import json
def on_message(ws, message):
print(message)
ws = websocket.WebSocketApp("wss://stream.bybit.com/v5/public/spot",
on_message=on_message)
ws.run_forever()
Официальные библиотеки
Python: pip install bybit
Node.js: npm install bybit-api
Java: bybit-java
Go: bybit-go
Начните разработку с Bybit API
Создайте API-ключи в разделе «Управление API» и получите полный доступ к функционалу биржи.
Создать API-ключи