diff --git a/cryptofeed/exchanges/bybit.py b/cryptofeed/exchanges/bybit.py index 815f45183..403c62c0b 100644 --- a/cryptofeed/exchanges/bybit.py +++ b/cryptofeed/exchanges/bybit.py @@ -17,9 +17,9 @@ from yapic import json from cryptofeed.connection import AsyncConnection, RestEndpoint, Routes, WebsocketEndpoint -from cryptofeed.defines import BID, ASK, BUY, BYBIT, CANCELLED, CANCELLING, CANDLES, FAILED, FILLED, FUNDING, L2_BOOK, LIMIT, LIQUIDATIONS, MAKER, MARKET, OPEN, PARTIAL, SELL, SUBMITTING, TAKER, TRADES, OPEN_INTEREST, INDEX, ORDER_INFO, FILLS, FUTURES, PERPETUAL, SPOT, TICKER +from cryptofeed.defines import BID, ASK, BUY, BYBIT, CANCELLED, CANCELLING, CANDLES, FAILED, FILLED, FUNDING, L1_BOOK, L2_BOOK, LIMIT, LIQUIDATIONS, MAKER, MARKET, OPEN, PARTIAL, SELL, SUBMITTING, TAKER, TRADES, OPEN_INTEREST, INDEX, ORDER_INFO, FILLS, FUTURES, PERPETUAL, SPOT, TICKER from cryptofeed.feed import Feed -from cryptofeed.types import OrderBook, Trade, Index, OpenInterest, Funding, OrderInfo, Fill, Candle, Liquidation, Ticker +from cryptofeed.types import OrderBook, Trade, Index, OpenInterest, Funding, OrderInfo, Fill, Candle, Liquidation, Ticker, L1Book LOG = logging.getLogger('feedhandler') @@ -27,6 +27,7 @@ class Bybit(Feed): id = BYBIT websocket_channels = { + L1_BOOK: '', L2_BOOK: '', # Assigned in self.subscribe TRADES: 'publicTrade', FILLS: 'execution', @@ -39,8 +40,8 @@ class Bybit(Feed): TICKER: 'tickers' } websocket_endpoints = [ - WebsocketEndpoint('wss://stream.bybit.com/v5/public/linear', instrument_filter=('TYPE', (FUTURES, PERPETUAL)), channel_filter=(websocket_channels[L2_BOOK], websocket_channels[TRADES], websocket_channels[INDEX], websocket_channels[OPEN_INTEREST], websocket_channels[FUNDING], websocket_channels[CANDLES], websocket_channels[LIQUIDATIONS], websocket_channels[TICKER]), sandbox='wss://stream-testnet.bybit.com/v5/public/linear', options={'compression': None}), - WebsocketEndpoint('wss://stream.bybit.com/v5/public/spot', instrument_filter=('TYPE', (SPOT)), channel_filter=(websocket_channels[L2_BOOK], websocket_channels[TRADES], websocket_channels[CANDLES],), sandbox='wss://stream-testnet.bybit.com/v5/public/spot', options={'compression': None}), + WebsocketEndpoint('wss://stream.bybit.com/v5/public/linear', instrument_filter=('TYPE', (FUTURES, PERPETUAL)), channel_filter=(websocket_channels[L1_BOOK], websocket_channels[L2_BOOK], websocket_channels[TRADES], websocket_channels[INDEX], websocket_channels[OPEN_INTEREST], websocket_channels[FUNDING], websocket_channels[CANDLES], websocket_channels[LIQUIDATIONS], websocket_channels[TICKER]), sandbox='wss://stream-testnet.bybit.com/v5/public/linear', options={'compression': None}), + WebsocketEndpoint('wss://stream.bybit.com/v5/public/spot', instrument_filter=('TYPE', (SPOT)), channel_filter=(websocket_channels[L1_BOOK], websocket_channels[L2_BOOK], websocket_channels[TRADES], websocket_channels[CANDLES],), sandbox='wss://stream-testnet.bybit.com/v5/public/spot', options={'compression': None}), WebsocketEndpoint('wss://stream.bybit.com/realtime_private', channel_filter=(websocket_channels[ORDER_INFO], websocket_channels[FILLS]), instrument_filter=('QUOTE', ('USDT',)), sandbox='wss://stream-testnet.bybit.com/realtime_private', options={'compression': None}), ] rest_endpoints = [ @@ -231,6 +232,8 @@ async def message_handler(self, msg: str, conn, timestamp: float): LOG.error("%s: Error from exchange %s", conn.uuid, msg) elif msg["topic"].startswith('publicTrade'): await self._trade(msg, timestamp, market) + elif msg["topic"].startswith('orderbook.1'): + await self._top_of_book(msg, timestamp, market) elif msg["topic"].startswith('orderbook'): await self._book(msg, timestamp, market) elif msg['topic'].startswith('kline'): @@ -279,6 +282,13 @@ async def subscribe(self, connection: AsyncConnection): PERPETUAL: "orderbook.200", } sub = [f"{l2_book_channel[sym.type]}.{pair}"] + elif self.exchange_channel_to_std(chan) == L1_BOOK: + l1_book_channel = { + SPOT: "orderbook.1", + FUTURES: "orderbook.1", + PERPETUAL: "orderbook.1", + } + sub = [f"{l1_book_channel[sym.type]}.{pair}"] else: sub = [f"{chan}.{pair}"] @@ -404,6 +414,46 @@ async def _book(self, msg: dict, timestamp: float, market: str): await self.book_callback(L2_BOOK, self._l2_book[pair], timestamp, timestamp=self.timestamp_normalize(int(msg['ts'])), raw=msg, delta=delta) + async def _top_of_book(self, msg: dict, timestamp: float, market: str): + ''' + { + 'topic': 'orderbook.1.BTCUSDT', + 'type': 'snapshot', + 'ts': 1749822878982, + 'data': { + 's': 'BTCUSDT', + 'b': [['104714.40', '0.727']], + 'a': [['104714.50', '16.541']], + 'u': 58267067, + 'seq': 416909700197 + }, + 'cts': 1749822878980 + } + ''' + pair = msg['topic'].split('.')[-1] + update_type = msg['type'] + data = msg['data'] + + if market == 'spot': + pair = self.convert_to_spot_name(self, data['s']) + if not pair: + return + + symbol = self.exchange_symbol_to_std_symbol(pair) + + if update_type == 'snapshot': + l1 = L1Book( + self.id, + symbol, + Decimal(data['b'][0][0]) if 'b' in data else Decimal(0), + Decimal(data['b'][0][1]) if 'b' in data else Decimal(0), + Decimal(data['a'][0][0]) if 'a' in data else Decimal(0), + Decimal(data['a'][0][1]) if 'a' in data else Decimal(0), + int(msg['ts']), + raw=msg + ) + await self.callback(L1_BOOK, l1, timestamp) + async def _ticker_open_interest_funding_index(self, msg: dict, timestamp: float, conn: AsyncConnection): ''' { diff --git a/cryptofeed/feed.py b/cryptofeed/feed.py index 5a11312e1..a099fadc2 100644 --- a/cryptofeed/feed.py +++ b/cryptofeed/feed.py @@ -14,7 +14,7 @@ from cryptofeed.callback import Callback from cryptofeed.connection import AsyncConnection, HTTPAsyncConn, WSAsyncConn from cryptofeed.connection_handler import ConnectionHandler -from cryptofeed.defines import BALANCES, CANDLES, FUNDING, INDEX, L2_BOOK, L3_BOOK, LIQUIDATIONS, OPEN_INTEREST, ORDER_INFO, POSITIONS, TICKER, TRADES, FILLS +from cryptofeed.defines import BALANCES, CANDLES, FUNDING, INDEX, L1_BOOK, L2_BOOK, L3_BOOK, LIQUIDATIONS, OPEN_INTEREST, ORDER_INFO, POSITIONS, TICKER, TRADES, FILLS from cryptofeed.exceptions import BidAskOverlapping from cryptofeed.exchange import Exchange from cryptofeed.types import OrderBook @@ -125,6 +125,7 @@ def __init__(self, candle_interval='1m', candle_closed_only=True, timeout=120, t self._l2_book = {} self.callbacks = {FUNDING: Callback(None), INDEX: Callback(None), + L1_BOOK: Callback(None), L2_BOOK: Callback(None), L3_BOOK: Callback(None), LIQUIDATIONS: Callback(None), diff --git a/cryptofeed/types.pyx b/cryptofeed/types.pyx index e4e117519..94c2da04d 100644 --- a/cryptofeed/types.pyx +++ b/cryptofeed/types.pyx @@ -132,6 +132,60 @@ cdef class Ticker: def __hash__(self): return hash(self.__repr__()) +cdef class L1Book: + cdef readonly str exchange + cdef readonly str symbol + cdef readonly object bid + cdef readonly object bid_size + cdef readonly object ask + cdef readonly object ask_size + cdef readonly object timestamp + cdef readonly object raw + + def __init__(self, exchange, symbol, bid, bid_size, ask, ask_size, timestamp, raw=None): + assert isinstance(bid, Decimal) + assert isinstance(bid_size, Decimal) + assert isinstance(ask, Decimal) + assert isinstance(ask_size, Decimal) + assert timestamp is None or isinstance(timestamp, float) + + self.exchange = exchange + self.symbol = symbol + self.bid = bid + self.bid_size = bid_size + self.ask = ask + self.ask_size = ask_size + self.timestamp = timestamp + self.raw = raw + + @staticmethod + def from_dict(data: dict) -> L1Book: + return L1Book( + data['exchange'], + data['symbol'], + Decimal(data['bid']), + Decimal(data['bid_size']), + Decimal(data['ask']), + Decimal(data['ask_size']), + data['timestamp'] + ) + + cpdef dict to_dict(self, numeric_type=None, none_to=False): + if numeric_type is None: + data = {'exchange': self.exchange, 'symbol': self.symbol, 'bid': self.bid, 'bid_size': self.bid_size, 'ask': self.ask, 'ask_size': self.ask_size, 'timestamp': self.timestamp} + else: + data = {'exchange': self.exchange, 'symbol': self.symbol, 'bid': numeric_type(self.bid), 'bid_size': numeric_type(self.bid_size), 'ask': numeric_type(self.ask), 'ask_size': numeric_type(self.ask_size), 'timestamp': self.timestamp} + return data if not none_to else convert_none_values(data, none_to) + + def __repr__(self): + return f"exchange: {self.exchange} symbol: {self.symbol} bid: {self.bid} bid_size: {self.bid_size} ask: {self.ask} ask_size: {self.ask_size} timestamp: {self.timestamp}" + + def __eq__(self, cmp): + return self.exchange == cmp.exchange and self.symbol == cmp.symbol and self.bid == cmp.bid and self.bid_size == cmp.bid_size and self.ask == cmp.ask and self.ask_size == cmp.ask_size and self.timestamp == cmp.timestamp + + def __hash__(self): + return hash(self.__repr__()) + cdef class Liquidation: cdef readonly str exchange @@ -623,49 +677,6 @@ cdef class Balance: def __hash__(self): return hash(self.__repr__()) - -cdef class L1Book: - cdef readonly str exchange - cdef readonly str symbol - cdef readonly object bid_price - cdef readonly object bid_size - cdef readonly object ask_price - cdef readonly object ask_size - cdef readonly double timestamp - cdef readonly dict raw - - def __init__(self, exchange, symbol, bid_price, bid_size, ask_price, ask_size, timestamp, raw=None): - assert isinstance(bid_price, Decimal) - assert isinstance(bid_size, Decimal) - assert isinstance(ask_price, Decimal) - assert isinstance(ask_size, Decimal) - - self.exchange = exchange - self.symbol = symbol - self.bid_price = bid_price - self.bid_size = bid_size - self.ask_price = ask_price - self.ask_size = ask_size - self.timestamp = timestamp - self.raw = raw - - cpdef dict to_dict(self, numeric_type=None, none_to=False): - if numeric_type is None: - data = {'exchange': self.exchange, 'symbol': self.symbol, 'bid_price': self.bid_price, 'bid_size': self.bid_size, 'ask_price': self.ask_price, 'ask_size': self.ask_size, 'timestamp': self.timestamp} - else: - data = {'exchange': self.exchange, 'symbol': self.symbol, 'bid_price': numeric_type(self.bid_price), 'bid_size': numeric_type(self.bid_size), 'ask_price': numeric_type(self.ask_price), 'ask_size': numeric_type(self.ask_size), 'timestamp': self.timestamp} - return data if not none_to else convert_none_values(data, none_to) - - def __repr__(self): - return f'exchange: {self.exchange} symbol: {self.symbol} bid_price: {self.bid_price} bid_size: {self.bid_size}, ask_price: {self.ask_price} ask_size: {self.ask_size} timestamp: {self.timestamp}' - - def __eq__(self, cmp): - return self.exchange == cmp.exchange and self.symbol == cmp.symbol and self.bid_price == cmp.bid_price and self.bid_size == cmp.bid_size and self.ask_price == cmp.ask_price and self.ask_size == cmp.ask_size and self.timestamp == cmp.timestamp - - def __hash__(self): - return hash(self.__repr__()) - - cdef class Transaction: cdef readonly str exchange cdef readonly str currency diff --git a/sample_data/BYBIT.0 b/sample_data/BYBIT.0 index 972c402a9..9a1c10c1c 100644 --- a/sample_data/BYBIT.0 +++ b/sample_data/BYBIT.0 @@ -1,2 +1,2 @@ https://api.bybit.com/v2/public/symbols -> 1618677785.481953: {"ret_code":0,"ret_msg":"OK","ext_code":"","ext_info":"","result":[{"name":"BTCUSD","alias":"BTCUSD","status":"Trading","base_currency":"BTC","quote_currency":"USD","price_scale":2,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":100,"leverage_step":"0.01"},"price_filter":{"min_price":"0.5","max_price":"999999.5","tick_size":"0.5"},"lot_size_filter":{"max_trading_qty":1000000,"min_trading_qty":1,"qty_step":1}},{"name":"ETHUSD","alias":"ETHUSD","status":"Trading","base_currency":"ETH","quote_currency":"USD","price_scale":2,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":50,"leverage_step":"0.01"},"price_filter":{"min_price":"0.05","max_price":"99999.95","tick_size":"0.05"},"lot_size_filter":{"max_trading_qty":1000000,"min_trading_qty":1,"qty_step":1}},{"name":"EOSUSD","alias":"EOSUSD","status":"Trading","base_currency":"EOS","quote_currency":"USD","price_scale":3,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":50,"leverage_step":"0.01"},"price_filter":{"min_price":"0.001","max_price":"1999.999","tick_size":"0.001"},"lot_size_filter":{"max_trading_qty":1000000,"min_trading_qty":1,"qty_step":1}},{"name":"XRPUSD","alias":"XRPUSD","status":"Trading","base_currency":"XRP","quote_currency":"USD","price_scale":4,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":50,"leverage_step":"0.01"},"price_filter":{"min_price":"0.0001","max_price":"199.9999","tick_size":"0.0001"},"lot_size_filter":{"max_trading_qty":1000000,"min_trading_qty":1,"qty_step":1}},{"name":"BTCUSDT","alias":"BTCUSDT","status":"Trading","base_currency":"BTC","quote_currency":"USDT","price_scale":2,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":100,"leverage_step":"0.01"},"price_filter":{"min_price":"0.5","max_price":"999999.5","tick_size":"0.5"},"lot_size_filter":{"max_trading_qty":100,"min_trading_qty":0.001,"qty_step":0.001}},{"name":"BCHUSDT","alias":"BCHUSDT","status":"Trading","base_currency":"BCH","quote_currency":"USDT","price_scale":2,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":50,"leverage_step":"0.01"},"price_filter":{"min_price":"0.5","max_price":"100000","tick_size":"0.05"},"lot_size_filter":{"max_trading_qty":600,"min_trading_qty":0.01,"qty_step":0.01}},{"name":"ETHUSDT","alias":"ETHUSDT","status":"Trading","base_currency":"ETH","quote_currency":"USDT","price_scale":2,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":50,"leverage_step":"0.01"},"price_filter":{"min_price":"0.5","max_price":"100000","tick_size":"0.05"},"lot_size_filter":{"max_trading_qty":1000,"min_trading_qty":0.01,"qty_step":0.01}},{"name":"LTCUSDT","alias":"LTCUSDT","status":"Trading","base_currency":"LTC","quote_currency":"USDT","price_scale":2,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":25,"leverage_step":"0.01"},"price_filter":{"min_price":"0.01","max_price":"20000","tick_size":"0.01"},"lot_size_filter":{"max_trading_qty":2000,"min_trading_qty":0.1,"qty_step":0.1}},{"name":"LINKUSDT","alias":"LINKUSDT","status":"Trading","base_currency":"LINK","quote_currency":"USDT","price_scale":3,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":25,"leverage_step":"0.01"},"price_filter":{"min_price":"0.001","max_price":"2000","tick_size":"0.001"},"lot_size_filter":{"max_trading_qty":10000,"min_trading_qty":0.1,"qty_step":0.1}},{"name":"XTZUSDT","alias":"XTZUSDT","status":"Trading","base_currency":"XTZ","quote_currency":"USDT","price_scale":3,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":25,"leverage_step":"0.01"},"price_filter":{"min_price":"0.001","max_price":"2000","tick_size":"0.001"},"lot_size_filter":{"max_trading_qty":20000,"min_trading_qty":0.1,"qty_step":0.1}},{"name":"ADAUSDT","alias":"ADAUSDT","status":"Trading","base_currency":"ADA","quote_currency":"USDT","price_scale":4,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":25,"leverage_step":"0.01"},"price_filter":{"min_price":"0.0001","max_price":"200","tick_size":"0.0001"},"lot_size_filter":{"max_trading_qty":240000,"min_trading_qty":1,"qty_step":1}},{"name":"DOTUSDT","alias":"DOTUSDT","status":"Trading","base_currency":"DOT","quote_currency":"USDT","price_scale":3,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":25,"leverage_step":"0.01"},"price_filter":{"min_price":"0.005","max_price":"10000","tick_size":"0.005"},"lot_size_filter":{"max_trading_qty":15000,"min_trading_qty":0.1,"qty_step":0.1}},{"name":"UNIUSDT","alias":"UNIUSDT","status":"Trading","base_currency":"UNI","quote_currency":"USDT","price_scale":4,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":25,"leverage_step":"0.01"},"price_filter":{"min_price":"0.0001","max_price":"1000","tick_size":"0.0001"},"lot_size_filter":{"max_trading_qty":10000,"min_trading_qty":0.1,"qty_step":0.1}},{"name":"BTCUSDU21","alias":"BTCUSD0924","status":"Trading","base_currency":"BTC","quote_currency":"USD","price_scale":2,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":100,"leverage_step":"0.01"},"price_filter":{"min_price":"0.5","max_price":"999999.5","tick_size":"0.5"},"lot_size_filter":{"max_trading_qty":1000000,"min_trading_qty":1,"qty_step":1}},{"name":"BTCUSDM21","alias":"BTCUSD0625","status":"Trading","base_currency":"BTC","quote_currency":"USD","price_scale":2,"taker_fee":"0.00075","maker_fee":"-0.00025","leverage_filter":{"min_leverage":1,"max_leverage":100,"leverage_step":"0.01"},"price_filter":{"min_price":"0.5","max_price":"999999.5","tick_size":"0.5"},"lot_size_filter":{"max_trading_qty":1000000,"min_trading_qty":1,"qty_step":1}}],"time_now":"1618677785.322543"} -configuration: {"trades":["BCH-USDT-PERP","XTZ-USDT-PERP","UNI-USDT-PERP","EOS-USD-PERP","LTC-USDT-PERP","DOT-USDT-PERP","LINK-USDT-PERP","ADA-USDT-PERP","ETH-USDT-PERP","BTC-USD-PERP"],"l2_book":["BCH-USDT-PERP","XTZ-USDT-PERP","UNI-USDT-PERP","EOS-USD-PERP","LTC-USDT-PERP","DOT-USDT-PERP","LINK-USDT-PERP","ADA-USDT-PERP","ETH-USDT-PERP","BTC-USD-PERP"]} +configuration: {"trades":["BCH-USDT-PERP","XTZ-USDT-PERP","UNI-USDT-PERP","EOS-USD-PERP","LTC-USDT-PERP","DOT-USDT-PERP","LINK-USDT-PERP","ADA-USDT-PERP","ETH-USDT-PERP","BTC-USD-PERP"],"l1_book":["BAND-USDT-PERP","RAD-USDT-PERP","SNT-USDT-PERP","OP-USDC","TUSD-USDT","KCS-USDT","CPOOL-USDT","ARB-USDC","MASA-USDT","AIOZ-USDT-PERP"],"l2_book":["BCH-USDT-PERP","XTZ-USDT-PERP","UNI-USDT-PERP","EOS-USD-PERP","LTC-USDT-PERP","DOT-USDT-PERP","LINK-USDT-PERP","ADA-USDT-PERP","ETH-USDT-PERP","BTC-USD-PERP"]} diff --git a/sample_data/BYBIT.ws.1.0 b/sample_data/BYBIT.ws.1.0 new file mode 100644 index 000000000..cfcfe682f --- /dev/null +++ b/sample_data/BYBIT.ws.1.0 @@ -0,0 +1,207 @@ +wss://stream.bybit.com/v5/public/linear <-> 1749833471.8455276 +wss://stream.bybit.com/v5/public/linear <- 1749833474.000351: {"op":"subscribe","args":["orderbook.1.BANDUSDT"]} +wss://stream.bybit.com/v5/public/linear <- 1749833474.0012143: {"op":"subscribe","args":["orderbook.1.RADUSDT"]} +wss://stream.bybit.com/v5/public/linear <- 1749833474.0012143: {"op":"subscribe","args":["orderbook.1.SNTUSDT"]} +wss://stream.bybit.com/v5/public/linear <- 1749833474.0012143: {"op":"subscribe","args":["orderbook.1.AIOZUSDT"]} +1749833474.2851315: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833474773,"data":{"s":"BANDUSDT","b":[["0.6131","17.9"]],"a":[["0.6134","35.4"]],"u":24042997,"seq":209972815373},"cts":1749833474768} +1749833474.2851315: {"success":true,"ret_msg":"","conn_id":"a38867ec-70b5-4044-a765-54b36bdd6fd9","req_id":"","op":"subscribe"} +1749833474.4662817: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833474905,"data":{"s":"RADUSDT","b":[["0.6443","112.8"]],"a":[["0.6445","38.5"]],"u":5510741,"seq":210977790179},"cts":1749833474726} +1749833474.4662817: {"success":true,"ret_msg":"","conn_id":"a38867ec-70b5-4044-a765-54b36bdd6fd9","req_id":"","op":"subscribe"} +1749833474.4662817: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833474894,"data":{"s":"SNTUSDT","b":[["0.02868","1730"]],"a":[["0.02870","3850"]],"u":12509455,"seq":205781288707},"cts":1749833474890} +1749833474.4662817: {"success":true,"ret_msg":"","conn_id":"a38867ec-70b5-4044-a765-54b36bdd6fd9","req_id":"","op":"subscribe"} +1749833474.4662817: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833475283,"data":{"s":"AIOZUSDT","b":[["0.3533","203"]],"a":[["0.3537","334"]],"u":9716662,"seq":93990143512},"cts":1749833475002} +1749833474.4662817: {"success":true,"ret_msg":"","conn_id":"a38867ec-70b5-4044-a765-54b36bdd6fd9","req_id":"","op":"subscribe"} +1749833476.880934: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833477782,"data":{"s":"AIOZUSDT","b":[["0.3533","203"]],"a":[["0.3537","334"]],"u":9716662,"seq":93990147924},"cts":1749833477401} +1749833477.0069447: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833477905,"data":{"s":"RADUSDT","b":[["0.6443","112.8"]],"a":[["0.6445","38.5"]],"u":5510741,"seq":210977794828},"cts":1749833477788} +1749833477.2418294: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833478143,"data":{"s":"SNTUSDT","b":[["0.02868","1730"]],"a":[["0.02870","3420"]],"u":12509456,"seq":205781292396},"cts":1749833478140} +1749833477.3325474: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833478232,"data":{"s":"BANDUSDT","b":[["0.6131","17.9"]],"a":[["0.6134","35.4"]],"u":24042997,"seq":209972818520},"cts":1749833478201} +1749833478.4910007: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833479392,"data":{"s":"BANDUSDT","b":[["0.6130","34.6"]],"a":[["0.6134","35.4"]],"u":24042998,"seq":209972819652},"cts":1749833479388} +1749833478.5317526: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833479432,"data":{"s":"BANDUSDT","b":[["0.6128","358.2"]],"a":[["0.6134","35.4"]],"u":24042999,"seq":209972820124},"cts":1749833479429} +1749833478.5410616: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833479442,"data":{"s":"BANDUSDT","b":[["0.6129","27.4"]],"a":[["0.6134","35.4"]],"u":24043000,"seq":209972820243},"cts":1749833479439} +1749833478.5509708: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833479452,"data":{"s":"BANDUSDT","b":[["0.6129","27.4"]],"a":[["0.6133","29.2"]],"u":24043001,"seq":209972820336},"cts":1749833479448} +1749833478.6207557: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833479521,"data":{"s":"AIOZUSDT","b":[["0.3532","57"]],"a":[["0.3536","41"]],"u":9716663,"seq":93990153248},"cts":1749833479518} +1749833478.6297317: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833479530,"data":{"s":"AIOZUSDT","b":[["0.3532","57"]],"a":[["0.3536","98"]],"u":9716664,"seq":93990153322},"cts":1749833479524} +1749833478.6919506: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833479593,"data":{"s":"BANDUSDT","b":[["0.6129","480.2"]],"a":[["0.6133","29.2"]],"u":24043002,"seq":209972820894},"cts":1749833479583} +1749833478.760227: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833479660,"data":{"s":"AIOZUSDT","b":[["0.3532","57"]],"a":[["0.3536","113"]],"u":9716665,"seq":93990154035},"cts":1749833479654} +1749833478.8599825: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833479760,"data":{"s":"AIOZUSDT","b":[["0.3532","57"]],"a":[["0.3536","98"]],"u":9716666,"seq":93990154668},"cts":1749833479758} +1749833478.8811536: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833479782,"data":{"s":"SNTUSDT","b":[["0.02868","13450"]],"a":[["0.02870","3420"]],"u":12509457,"seq":205781296292},"cts":1749833479775} +1749833478.993264: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833479892,"data":{"s":"SNTUSDT","b":[["0.02868","1730"]],"a":[["0.02870","3420"]],"u":12509458,"seq":205781296405},"cts":1749833479890} +1749833479.0130808: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833479913,"data":{"s":"SNTUSDT","b":[["0.02868","11820"]],"a":[["0.02870","3420"]],"u":12509459,"seq":205781296420},"cts":1749833479902} +1749833479.5707612: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833480464,"data":{"s":"RADUSDT","b":[["0.6442","12.7"]],"a":[["0.6445","38.5"]],"u":5510742,"seq":210977798938},"cts":1749833480452} +1749833479.5740204: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833480474,"data":{"s":"RADUSDT","b":[["0.6443","81.9"]],"a":[["0.6445","38.5"]],"u":5510743,"seq":210977798966},"cts":1749833480471} +1749833480.071588: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833480972,"data":{"s":"BANDUSDT","b":[["0.6130","36.2"]],"a":[["0.6133","29.2"]],"u":24043003,"seq":209972822893},"cts":1749833480968} +1749833480.110879: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833481002,"data":{"s":"BANDUSDT","b":[["0.6130","489.0"]],"a":[["0.6133","29.2"]],"u":24043004,"seq":209972823110},"cts":1749833480998} +1749833480.161153: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833481062,"data":{"s":"BANDUSDT","b":[["0.6130","489.0"]],"a":[["0.6134","35.4"]],"u":24043005,"seq":209972823309},"cts":1749833481059} +1749833480.1814258: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833481082,"data":{"s":"AIOZUSDT","b":[["0.3532","57"]],"a":[["0.3536","41"]],"u":9716667,"seq":93990158107},"cts":1749833481071} +1749833480.1822016: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833481082,"data":{"s":"BANDUSDT","b":[["0.6131","36.6"]],"a":[["0.6134","35.4"]],"u":24043006,"seq":209972823340},"cts":1749833481080} +1749833480.2014067: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833481102,"data":{"s":"SNTUSDT","b":[["0.02868","13110"]],"a":[["0.02870","3420"]],"u":12509460,"seq":205781298889},"cts":1749833481095} +1749833480.2014067: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833481102,"data":{"s":"BANDUSDT","b":[["0.6131","489.4"]],"a":[["0.6134","35.4"]],"u":24043007,"seq":209972823391},"cts":1749833481099} +1749833480.4006047: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833481301,"data":{"s":"AIOZUSDT","b":[["0.3532","57"]],"a":[["0.3536","98"]],"u":9716668,"seq":93990158759},"cts":1749833481294} +1749833480.4008882: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833481302,"data":{"s":"SNTUSDT","b":[["0.02868","11820"]],"a":[["0.02870","3420"]],"u":12509461,"seq":205781299209},"cts":1749833481296} +1749833481.2838948: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833482172,"data":{"s":"BANDUSDT","b":[["0.6131","489.4"]],"a":[["0.6135","37.0"]],"u":24043008,"seq":209972824586},"cts":1749833482170} +1749833481.2838948: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833482173,"data":{"s":"SNTUSDT","b":[["0.02868","11820"]],"a":[["0.02870","2990"]],"u":12509462,"seq":205781300886},"cts":1749833482169} +1749833481.2838948: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833482182,"data":{"s":"SNTUSDT","b":[["0.02868","13110"]],"a":[["0.02870","2990"]],"u":12509463,"seq":205781300905},"cts":1749833482174} +1749833481.2838948: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833482182,"data":{"s":"BANDUSDT","b":[["0.6131","489.4"]],"a":[["0.6135","34.6"]],"u":24043009,"seq":209972824617},"cts":1749833482179} +1749833481.410951: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833482312,"data":{"s":"SNTUSDT","b":[["0.02868","14400"]],"a":[["0.02871","690"]],"u":12509464,"seq":205781301125},"cts":1749833482310} +1749833481.4221709: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833482322,"data":{"s":"SNTUSDT","b":[["0.02869","690"]],"a":[["0.02872","45830"]],"u":12509465,"seq":205781301139},"cts":1749833482320} +1749833481.4314442: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833482332,"data":{"s":"SNTUSDT","b":[["0.02869","1980"]],"a":[["0.02871","8360"]],"u":12509466,"seq":205781301161},"cts":1749833482330} +1749833481.440769: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833482342,"data":{"s":"SNTUSDT","b":[["0.02869","690"]],"a":[["0.02871","8360"]],"u":12509467,"seq":205781301170},"cts":1749833482335} +1749833481.5120087: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833482413,"data":{"s":"SNTUSDT","b":[["0.02869","690"]],"a":[["0.02871","26320"]],"u":12509468,"seq":205781301259},"cts":1749833482407} +1749833481.5211582: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833482422,"data":{"s":"SNTUSDT","b":[["0.02868","11820"]],"a":[["0.02871","26320"]],"u":12509469,"seq":205781301274},"cts":1749833482416} +1749833481.5314379: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833482432,"data":{"s":"SNTUSDT","b":[["0.02868","11820"]],"a":[["0.02871","29280"]],"u":12509470,"seq":205781301281},"cts":1749833482425} +1749833481.668725: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833482562,"data":{"s":"SNTUSDT","b":[["0.02868","12960"]],"a":[["0.02871","29280"]],"u":12509471,"seq":205781301378},"cts":1749833482553} +1749833481.8056533: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833482663,"data":{"s":"SNTUSDT","b":[["0.02868","11820"]],"a":[["0.02871","29280"]],"u":12509472,"seq":205781301461},"cts":1749833482655} +1749833482.3618515: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833483262,"data":{"s":"SNTUSDT","b":[["0.02868","12960"]],"a":[["0.02871","29280"]],"u":12509473,"seq":205781302214},"cts":1749833483254} +1749833482.372034: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833483272,"data":{"s":"SNTUSDT","b":[["0.02868","12960"]],"a":[["0.02871","30570"]],"u":12509474,"seq":205781302236},"cts":1749833483266} +1749833482.4616487: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833483362,"data":{"s":"SNTUSDT","b":[["0.02868","11820"]],"a":[["0.02871","30570"]],"u":12509475,"seq":205781302340},"cts":1749833483354} +1749833482.5119941: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833483402,"data":{"s":"SNTUSDT","b":[["0.02868","11820"]],"a":[["0.02871","29280"]],"u":12509476,"seq":205781302375},"cts":1749833483397} +1749833482.9230676: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833483822,"data":{"s":"SNTUSDT","b":[["0.02868","11820"]],"a":[["0.02871","30570"]],"u":12509477,"seq":205781302756},"cts":1749833483815} +1749833483.00952: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833483907,"data":{"s":"RADUSDT","b":[["0.6443","81.9"]],"a":[["0.6445","38.5"]],"u":5510743,"seq":210977803652},"cts":1749833483901} +1749833483.0708456: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833483972,"data":{"s":"SNTUSDT","b":[["0.02868","1730"]],"a":[["0.02871","30570"]],"u":12509478,"seq":205781303122},"cts":1749833483961} +1749833483.0812109: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833483982,"data":{"s":"SNTUSDT","b":[["0.02868","7760"]],"a":[["0.02870","690"]],"u":12509479,"seq":205781303140},"cts":1749833483975} +1749833483.1017873: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833484002,"data":{"s":"SNTUSDT","b":[["0.02868","7760"]],"a":[["0.02870","13130"]],"u":12509480,"seq":205781303155},"cts":1749833483996} +1749833483.3009853: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833484202,"data":{"s":"SNTUSDT","b":[["0.02868","7760"]],"a":[["0.02870","14420"]],"u":12509481,"seq":205781303311},"cts":1749833484196} +1749833483.3619413: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833484262,"data":{"s":"SNTUSDT","b":[["0.02868","7760"]],"a":[["0.02870","13130"]],"u":12509482,"seq":205781303344},"cts":1749833484256} +1749833483.881101: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833484781,"data":{"s":"AIOZUSDT","b":[["0.3532","57"]],"a":[["0.3536","98"]],"u":9716668,"seq":93990164858},"cts":1749833484401} +1749833484.1399539: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833484971,"data":{"s":"AIOZUSDT","b":[["0.3532","127"]],"a":[["0.3536","98"]],"u":9716669,"seq":93990167271},"cts":1749833484967} +1749833484.1399539: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833484982,"data":{"s":"AIOZUSDT","b":[["0.3532","127"]],"a":[["0.3536","41"]],"u":9716670,"seq":93990167318},"cts":1749833484977} +1749833484.3142335: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833485070,"data":{"s":"AIOZUSDT","b":[["0.3533","79"]],"a":[["0.3536","41"]],"u":9716671,"seq":93990167661},"cts":1749833485066} +1749833484.3530233: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833485232,"data":{"s":"BANDUSDT","b":[["0.6131","489.4"]],"a":[["0.6135","34.6"]],"u":24043009,"seq":209972828218},"cts":1749833485188} +1749833484.6409762: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833485542,"data":{"s":"SNTUSDT","b":[["0.02868","7760"]],"a":[["0.02870","14420"]],"u":12509483,"seq":205781306277},"cts":1749833485536} +1749833485.3216088: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833486222,"data":{"s":"SNTUSDT","b":[["0.02868","7760"]],"a":[["0.02870","13130"]],"u":12509484,"seq":205781307674},"cts":1749833486215} +1749833485.5868855: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833486483,"data":{"s":"BANDUSDT","b":[["0.6132","38.0"]],"a":[["0.6136","35.4"]],"u":24043010,"seq":209972829294},"cts":1749833486477} +1749833485.592383: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833486493,"data":{"s":"BANDUSDT","b":[["0.6132","264.4"]],"a":[["0.6136","35.4"]],"u":24043011,"seq":209972829306},"cts":1749833486491} +1749833485.6014442: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833486502,"data":{"s":"BANDUSDT","b":[["0.6132","490.8"]],"a":[["0.6136","35.4"]],"u":24043012,"seq":209972829330},"cts":1749833486499} +1749833486.210205: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833487111,"data":{"s":"AIOZUSDT","b":[["0.3534","77"]],"a":[["0.3537","185"]],"u":9716672,"seq":93990171967},"cts":1749833487106} +1749833486.2319813: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833487132,"data":{"s":"BANDUSDT","b":[["0.6133","38.4"]],"a":[["0.6136","35.4"]],"u":24043013,"seq":209972830013},"cts":1749833487130} +1749833486.2512906: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833487152,"data":{"s":"BANDUSDT","b":[["0.6133","491.2"]],"a":[["0.6136","35.4"]],"u":24043014,"seq":209972830080},"cts":1749833487149} +1749833486.281494: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833487183,"data":{"s":"AIOZUSDT","b":[["0.3534","77"]],"a":[["0.3537","144"]],"u":9716673,"seq":93990172265},"cts":1749833487176} +1749833486.4012933: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833487292,"data":{"s":"BANDUSDT","b":[["0.6133","491.2"]],"a":[["0.6137","34.6"]],"u":24043015,"seq":209972830441},"cts":1749833487288} +1749833486.505099: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833487405,"data":{"s":"RADUSDT","b":[["0.6443","81.9"]],"a":[["0.6445","38.5"]],"u":5510743,"seq":210977809149},"cts":1749833487116} +1749833486.560341: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833487462,"data":{"s":"BANDUSDT","b":[["0.6133","38.4"]],"a":[["0.6137","34.6"]],"u":24043016,"seq":209972831092},"cts":1749833487459} +1749833486.5806665: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833487482,"data":{"s":"BANDUSDT","b":[["0.6133","38.4"]],"a":[["0.6137","38.4"]],"u":24043017,"seq":209972831115},"cts":1749833487479} +1749833486.6073718: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833487502,"data":{"s":"BANDUSDT","b":[["0.6133","38.4"]],"a":[["0.6136","38.8"]],"u":24043018,"seq":209972831127},"cts":1749833487495} +1749833486.6225965: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833487524,"data":{"s":"RADUSDT","b":[["0.6444","77.6"]],"a":[["0.6445","38.5"]],"u":5510744,"seq":210977810425},"cts":1749833487514} +1749833486.632226: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833487532,"data":{"s":"BANDUSDT","b":[["0.6132","38.0"]],"a":[["0.6136","38.8"]],"u":24043019,"seq":209972831158},"cts":1749833487527} +1749833486.7328787: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833487634,"data":{"s":"RADUSDT","b":[["0.6443","81.9"]],"a":[["0.6445","38.5"]],"u":5510745,"seq":210977810625},"cts":1749833487614} +1749833486.8225403: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833487724,"data":{"s":"RADUSDT","b":[["0.6444","77.6"]],"a":[["0.6445","38.5"]],"u":5510746,"seq":210977810797},"cts":1749833487715} +1749833486.9227018: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833487824,"data":{"s":"RADUSDT","b":[["0.6443","81.9"]],"a":[["0.6445","38.5"]],"u":5510747,"seq":210977811000},"cts":1749833487814} +1749833487.1520412: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833488052,"data":{"s":"BANDUSDT","b":[["0.6131","36.6"]],"a":[["0.6135","39.6"]],"u":24043020,"seq":209972831738},"cts":1749833488050} +1749833488.1730938: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833489072,"data":{"s":"BANDUSDT","b":[["0.6131","36.6"]],"a":[["0.6134","40.4"]],"u":24043021,"seq":209972832870},"cts":1749833489067} +1749833488.1815193: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833489082,"data":{"s":"BANDUSDT","b":[["0.6130","68.7"]],"a":[["0.6134","40.4"]],"u":24043022,"seq":209972832872},"cts":1749833489071} +1749833488.201106: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833489102,"data":{"s":"BANDUSDT","b":[["0.6130","391.9"]],"a":[["0.6134","40.4"]],"u":24043023,"seq":209972832896},"cts":1749833489100} +1749833488.491887: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833489393,"data":{"s":"SNTUSDT","b":[["0.02868","7760"]],"a":[["0.02870","13130"]],"u":12509484,"seq":205781312520},"cts":1749833489234} +1749833489.1889763: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833490090,"data":{"s":"AIOZUSDT","b":[["0.3534","77"]],"a":[["0.3537","201"]],"u":9716674,"seq":93990179144},"cts":1749833490085} +1749833489.3316815: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833490232,"data":{"s":"SNTUSDT","b":[["0.02868","7760"]],"a":[["0.02870","13040"]],"u":12509485,"seq":205781313493},"cts":1749833490227} +1749833490.0038514: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833490904,"data":{"s":"RADUSDT","b":[["0.6443","81.9"]],"a":[["0.6445","38.5"]],"u":5510747,"seq":210977815741},"cts":1749833490601} +1749833490.1405263: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833491040,"data":{"s":"AIOZUSDT","b":[["0.3533","41"]],"a":[["0.3537","201"]],"u":9716675,"seq":93990181701},"cts":1749833491036} +1749833490.4015226: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833491302,"data":{"s":"BANDUSDT","b":[["0.6131","42.4"]],"a":[["0.6134","40.4"]],"u":24043024,"seq":209972835285},"cts":1749833491296} +1749833490.4221835: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833491322,"data":{"s":"BANDUSDT","b":[["0.6131","365.6"]],"a":[["0.6134","40.4"]],"u":24043025,"seq":209972835408},"cts":1749833491318} +1749833490.610825: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833491512,"data":{"s":"SNTUSDT","b":[["0.02868","16300"]],"a":[["0.02870","13040"]],"u":12509486,"seq":205781315830},"cts":1749833491507} +1749833490.620798: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833491522,"data":{"s":"SNTUSDT","b":[["0.02868","18740"]],"a":[["0.02870","13040"]],"u":12509487,"seq":205781315842},"cts":1749833491514} +1749833491.1137588: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833492012,"data":{"s":"SNTUSDT","b":[["0.02868","18740"]],"a":[["0.02870","600"]],"u":12509488,"seq":205781316365},"cts":1749833492002} +1749833491.1137588: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833492012,"data":{"s":"BANDUSDT","b":[["0.6132","43.2"]],"a":[["0.6135","39.6"]],"u":24043026,"seq":209972836020},"cts":1749833492006} +1749833491.1212027: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833492022,"data":{"s":"SNTUSDT","b":[["0.02868","21320"]],"a":[["0.02870","600"]],"u":12509489,"seq":205781316836},"cts":1749833492017} +1749833491.2028015: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833492102,"data":{"s":"SNTUSDT","b":[["0.02868","21320"]],"a":[["0.02870","12260"]],"u":12509490,"seq":205781317451},"cts":1749833492095} +1749833491.334607: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833492122,"data":{"s":"SNTUSDT","b":[["0.02868","20030"]],"a":[["0.02870","12260"]],"u":12509491,"seq":205781317556},"cts":1749833492115} +1749833491.334607: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833492132,"data":{"s":"SNTUSDT","b":[["0.02868","20030"]],"a":[["0.02870","600"]],"u":12509492,"seq":205781317627},"cts":1749833492123} +1749833491.3360202: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833492142,"data":{"s":"SNTUSDT","b":[["0.02868","21320"]],"a":[["0.02870","600"]],"u":12509493,"seq":205781318194},"cts":1749833492138} +1749833491.3360202: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833492142,"data":{"s":"BANDUSDT","b":[["0.6133","43.4"]],"a":[["0.6135","39.6"]],"u":24043027,"seq":209972836888},"cts":1749833492139} +1749833491.3360202: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833492152,"data":{"s":"BANDUSDT","b":[["0.6133","43.4"]],"a":[["0.6136","38.8"]],"u":24043028,"seq":209972837037},"cts":1749833492145} +1749833491.3360202: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833492160,"data":{"s":"AIOZUSDT","b":[["0.3533","112"]],"a":[["0.3537","201"]],"u":9716676,"seq":93990185503},"cts":1749833492158} +1749833491.3360202: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833492162,"data":{"s":"BANDUSDT","b":[["0.6133","43.4"]],"a":[["0.6137","38.4"]],"u":24043029,"seq":209972837333},"cts":1749833492158} +1749833491.3360202: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833492180,"data":{"s":"AIOZUSDT","b":[["0.3533","112"]],"a":[["0.3537","144"]],"u":9716677,"seq":93990185934},"cts":1749833492172} +1749833491.336624: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833492182,"data":{"s":"SNTUSDT","b":[["0.02868","20030"]],"a":[["0.02870","600"]],"u":12509494,"seq":205781319318},"cts":1749833492178} +1749833491.336624: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833492202,"data":{"s":"SNTUSDT","b":[["0.02868","18740"]],"a":[["0.02870","600"]],"u":12509495,"seq":205781319691},"cts":1749833492196} +1749833491.336624: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833492224,"data":{"s":"RADUSDT","b":[["0.6444","77.6"]],"a":[["0.6445","38.5"]],"u":5510748,"seq":210977822552},"cts":1749833492215} +1749833491.336624: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833492233,"data":{"s":"BANDUSDT","b":[["0.6133","43.4"]],"a":[["0.6136","43.4"]],"u":24043030,"seq":209972838214},"cts":1749833492227} +1749833491.3433893: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833492242,"data":{"s":"BANDUSDT","b":[["0.6132","43.2"]],"a":[["0.6136","43.4"]],"u":24043031,"seq":209972838283},"cts":1749833492235} +1749833491.3614526: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833492262,"data":{"s":"SNTUSDT","b":[["0.02868","20030"]],"a":[["0.02870","600"]],"u":12509496,"seq":205781320362},"cts":1749833492258} +1749833491.3709037: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833492272,"data":{"s":"SNTUSDT","b":[["0.02868","21170"]],"a":[["0.02870","600"]],"u":12509497,"seq":205781320368},"cts":1749833492261} +1749833491.5407321: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833492324,"data":{"s":"RADUSDT","b":[["0.6443","81.9"]],"a":[["0.6445","38.5"]],"u":5510749,"seq":210977823341},"cts":1749833492315} +1749833491.5407321: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833492352,"data":{"s":"BANDUSDT","b":[["0.6133","43.4"]],"a":[["0.6136","43.4"]],"u":24043032,"seq":209972838724},"cts":1749833492342} +1749833491.5407321: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833492362,"data":{"s":"SNTUSDT","b":[["0.02868","20030"]],"a":[["0.02870","600"]],"u":12509498,"seq":205781320877},"cts":1749833492356} +1749833491.5407321: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833492370,"data":{"s":"AIOZUSDT","b":[["0.3533","112"]],"a":[["0.3537","201"]],"u":9716678,"seq":93990187833},"cts":1749833492363} +1749833491.5407321: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833492424,"data":{"s":"RADUSDT","b":[["0.6444","77.6"]],"a":[["0.6445","38.5"]],"u":5510750,"seq":210977823795},"cts":1749833492415} +1749833491.6228266: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833492524,"data":{"s":"RADUSDT","b":[["0.6443","81.9"]],"a":[["0.6445","38.5"]],"u":5510751,"seq":210977824065},"cts":1749833492514} +1749833491.8178551: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833492702,"data":{"s":"SNTUSDT","b":[["0.02868","21320"]],"a":[["0.02870","600"]],"u":12509499,"seq":205781321941},"cts":1749833492695} +1749833492.2710235: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833493142,"data":{"s":"BANDUSDT","b":[["0.6132","43.2"]],"a":[["0.6136","43.4"]],"u":24043033,"seq":209972840262},"cts":1749833493134} +1749833492.4138277: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833493302,"data":{"s":"SNTUSDT","b":[["0.02868","18740"]],"a":[["0.02870","600"]],"u":12509500,"seq":205781323804},"cts":1749833493295} +1749833493.17834: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833494033,"data":{"s":"SNTUSDT","b":[["0.02868","18740"]],"a":[["0.02870","170"]],"u":12509501,"seq":205781324960},"cts":1749833494030} +1749833493.17834: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833494042,"data":{"s":"SNTUSDT","b":[["0.02868","20030"]],"a":[["0.02871","20920"]],"u":12509502,"seq":205781324971},"cts":1749833494035} +1749833493.17834: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833494052,"data":{"s":"SNTUSDT","b":[["0.02868","21320"]],"a":[["0.02871","20920"]],"u":12509503,"seq":205781324983},"cts":1749833494045} +1749833493.17834: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833494062,"data":{"s":"SNTUSDT","b":[["0.02868","20030"]],"a":[["0.02871","20920"]],"u":12509504,"seq":205781324991},"cts":1749833494055} +1749833493.4093537: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833494163,"data":{"s":"SNTUSDT","b":[["0.02868","22460"]],"a":[["0.02871","20920"]],"u":12509505,"seq":205781325129},"cts":1749833494156} +1749833493.4100184: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833494262,"data":{"s":"SNTUSDT","b":[["0.02868","21170"]],"a":[["0.02871","20920"]],"u":12509506,"seq":205781325259},"cts":1749833494256} +1749833493.4642007: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833494362,"data":{"s":"SNTUSDT","b":[["0.02868","22460"]],"a":[["0.02871","20920"]],"u":12509507,"seq":205781325317},"cts":1749833494356} +1749833493.5829248: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833494462,"data":{"s":"SNTUSDT","b":[["0.02868","21170"]],"a":[["0.02871","20920"]],"u":12509508,"seq":205781325374},"cts":1749833494456} +1749833493.5829248: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833494473,"data":{"s":"SNTUSDT","b":[["0.02868","19880"]],"a":[["0.02871","20920"]],"u":12509509,"seq":205781325381},"cts":1749833494465} +1749833493.6009715: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833494502,"data":{"s":"SNTUSDT","b":[["0.02868","19880"]],"a":[["0.02871","22210"]],"u":12509510,"seq":205781325416},"cts":1749833494496} +1749833493.6607862: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833494562,"data":{"s":"SNTUSDT","b":[["0.02868","19880"]],"a":[["0.02871","20920"]],"u":12509511,"seq":205781325481},"cts":1749833494556} +1749833493.7638803: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833494662,"data":{"s":"SNTUSDT","b":[["0.02868","18740"]],"a":[["0.02871","20920"]],"u":12509512,"seq":205781325562},"cts":1749833494653} +1749833493.9810007: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833494882,"data":{"s":"BANDUSDT","b":[["0.6133","44.8"]],"a":[["0.6136","43.4"]],"u":24043034,"seq":209972842340},"cts":1749833494878} +1749833494.0129244: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833494912,"data":{"s":"BANDUSDT","b":[["0.6133","44.8"]],"a":[["0.6135","11.4"]],"u":24043035,"seq":209972842371},"cts":1749833494910} +1749833494.1006196: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495002,"data":{"s":"SNTUSDT","b":[["0.02868","18740"]],"a":[["0.02871","22210"]],"u":12509513,"seq":205781325945},"cts":1749833494996} +1749833494.2619405: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495163,"data":{"s":"SNTUSDT","b":[["0.02868","19880"]],"a":[["0.02871","22210"]],"u":12509514,"seq":205781326109},"cts":1749833495153} +1749833494.287871: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495182,"data":{"s":"SNTUSDT","b":[["0.02868","19880"]],"a":[["0.02871","20920"]],"u":12509515,"seq":205781326125},"cts":1749833495175} +1749833494.3417356: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495242,"data":{"s":"SNTUSDT","b":[["0.02868","19880"]],"a":[["0.02871","11620"]],"u":12509516,"seq":205781326176},"cts":1749833495240} +1749833494.351215: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495252,"data":{"s":"SNTUSDT","b":[["0.02868","22460"]],"a":[["0.02872","16370"]],"u":12509517,"seq":205781326188},"cts":1749833495245} +1749833494.361225: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495263,"data":{"s":"SNTUSDT","b":[["0.02869","690"]],"a":[["0.02872","16370"]],"u":12509518,"seq":205781326194},"cts":1749833495255} +1749833494.3711984: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495272,"data":{"s":"SNTUSDT","b":[["0.02869","1980"]],"a":[["0.02872","13150"]],"u":12509519,"seq":205781326244},"cts":1749833495266} +1749833494.3923917: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495282,"data":{"s":"SNTUSDT","b":[["0.02869","1980"]],"a":[["0.02872","17760"]],"u":12509520,"seq":205781326251},"cts":1749833495275} +1749833494.4207015: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495322,"data":{"s":"SNTUSDT","b":[["0.02870","1740"]],"a":[["0.02872","17760"]],"u":12509521,"seq":205781326303},"cts":1749833495319} +1749833494.4612002: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495362,"data":{"s":"SNTUSDT","b":[["0.02870","1920"]],"a":[["0.02872","17760"]],"u":12509522,"seq":205781326367},"cts":1749833495357} +1749833494.5211215: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495422,"data":{"s":"SNTUSDT","b":[["0.02870","180"]],"a":[["0.02872","17760"]],"u":12509523,"seq":205781326423},"cts":1749833495416} +1749833494.560971: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495462,"data":{"s":"SNTUSDT","b":[["0.02869","15080"]],"a":[["0.02872","17760"]],"u":12509524,"seq":205781326515},"cts":1749833495459} +1749833494.57092: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495473,"data":{"s":"SNTUSDT","b":[["0.02869","16370"]],"a":[["0.02872","17760"]],"u":12509525,"seq":205781326521},"cts":1749833495464} +1749833494.6210568: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495522,"data":{"s":"SNTUSDT","b":[["0.02870","1740"]],"a":[["0.02872","17760"]],"u":12509526,"seq":205781326589},"cts":1749833495515} +1749833494.660978: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495562,"data":{"s":"SNTUSDT","b":[["0.02870","2880"]],"a":[["0.02872","17760"]],"u":12509527,"seq":205781326634},"cts":1749833495560} +1749833494.722166: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495622,"data":{"s":"SNTUSDT","b":[["0.02870","1140"]],"a":[["0.02872","17760"]],"u":12509528,"seq":205781326680},"cts":1749833495615} +1749833494.7624118: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495662,"data":{"s":"SNTUSDT","b":[["0.02869","15080"]],"a":[["0.02872","17760"]],"u":12509529,"seq":205781326701},"cts":1749833495653} +1749833494.8034317: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495702,"data":{"s":"SNTUSDT","b":[["0.02869","16370"]],"a":[["0.02872","17760"]],"u":12509530,"seq":205781326729},"cts":1749833495696} +1749833494.8210416: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495723,"data":{"s":"SNTUSDT","b":[["0.02870","1740"]],"a":[["0.02872","17760"]],"u":12509531,"seq":205781326739},"cts":1749833495714} +1749833494.8790827: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833495781,"data":{"s":"AIOZUSDT","b":[["0.3533","112"]],"a":[["0.3537","201"]],"u":9716678,"seq":93990193987},"cts":1749833495385} +1749833494.9210153: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495822,"data":{"s":"SNTUSDT","b":[["0.02869","15080"]],"a":[["0.02872","17760"]],"u":12509532,"seq":205781326779},"cts":1749833495815} +1749833494.9316447: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495833,"data":{"s":"SNTUSDT","b":[["0.02869","16370"]],"a":[["0.02872","17760"]],"u":12509533,"seq":205781326791},"cts":1749833495824} +1749833495.004364: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833495905,"data":{"s":"RADUSDT","b":[["0.6443","81.9"]],"a":[["0.6445","38.5"]],"u":5510751,"seq":210977829367},"cts":1749833495901} +1749833495.0213184: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833495922,"data":{"s":"SNTUSDT","b":[["0.02870","1740"]],"a":[["0.02872","17760"]],"u":12509534,"seq":205781326887},"cts":1749833495914} +1749833495.120848: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833496022,"data":{"s":"SNTUSDT","b":[["0.02869","15080"]],"a":[["0.02872","17760"]],"u":12509535,"seq":205781327006},"cts":1749833496015} +1749833495.1318185: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833496032,"data":{"s":"SNTUSDT","b":[["0.02869","16370"]],"a":[["0.02872","17760"]],"u":12509536,"seq":205781327014},"cts":1749833496024} +1749833495.224725: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833496122,"data":{"s":"SNTUSDT","b":[["0.02870","1740"]],"a":[["0.02872","17760"]],"u":12509537,"seq":205781327108},"cts":1749833496116} +1749833495.2611072: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833496163,"data":{"s":"SNTUSDT","b":[["0.02870","2880"]],"a":[["0.02872","17760"]],"u":12509538,"seq":205781327131},"cts":1749833496156} +1749833495.3202753: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833496222,"data":{"s":"SNTUSDT","b":[["0.02870","1140"]],"a":[["0.02872","17760"]],"u":12509539,"seq":205781327172},"cts":1749833496214} +1749833495.3622594: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833496263,"data":{"s":"SNTUSDT","b":[["0.02869","3680"]],"a":[["0.02872","17760"]],"u":12509540,"seq":205781327236},"cts":1749833496254} +1749833495.4743342: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833496373,"data":{"s":"SNTUSDT","b":[["0.02869","4820"]],"a":[["0.02872","17760"]],"u":12509541,"seq":205781327341},"cts":1749833496361} +1749833495.560838: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833496463,"data":{"s":"SNTUSDT","b":[["0.02869","3680"]],"a":[["0.02872","17760"]],"u":12509542,"seq":205781327402},"cts":1749833496459} +1749833495.76451: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833496663,"data":{"s":"SNTUSDT","b":[["0.02869","3680"]],"a":[["0.02872","13150"]],"u":12509543,"seq":205781327528},"cts":1749833496656} +1749833496.4608653: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833497362,"data":{"s":"SNTUSDT","b":[["0.02869","4820"]],"a":[["0.02872","13150"]],"u":12509544,"seq":205781328483},"cts":1749833497354} +1749833496.5662737: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833497463,"data":{"s":"SNTUSDT","b":[["0.02869","3680"]],"a":[["0.02872","13150"]],"u":12509545,"seq":205781328593},"cts":1749833497453} +1749833496.6617875: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833497562,"data":{"s":"SNTUSDT","b":[["0.02869","4820"]],"a":[["0.02872","13150"]],"u":12509546,"seq":205781328794},"cts":1749833497554} +1749833496.767043: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833497662,"data":{"s":"SNTUSDT","b":[["0.02869","3680"]],"a":[["0.02872","13150"]],"u":12509547,"seq":205781328987},"cts":1749833497654} +1749833496.7909791: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833497692,"data":{"s":"SNTUSDT","b":[["0.02869","3680"]],"a":[["0.02872","12830"]],"u":12509548,"seq":205781329013},"cts":1749833497688} +1749833496.8221445: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833497723,"data":{"s":"SNTUSDT","b":[["0.02870","1740"]],"a":[["0.02872","12830"]],"u":12509549,"seq":205781329040},"cts":1749833497715} +1749833496.9207346: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833497822,"data":{"s":"SNTUSDT","b":[["0.02869","3680"]],"a":[["0.02872","12830"]],"u":12509550,"seq":205781329114},"cts":1749833497815} +1749833497.2614036: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833498163,"data":{"s":"SNTUSDT","b":[["0.02869","4820"]],"a":[["0.02872","12830"]],"u":12509551,"seq":205781329337},"cts":1749833498154} +1749833497.33159: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833498232,"data":{"s":"BANDUSDT","b":[["0.6133","44.8"]],"a":[["0.6135","11.4"]],"u":24043035,"seq":209972845167},"cts":1749833498201} +1749833497.5415277: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833498443,"data":{"s":"SNTUSDT","b":[["0.02869","4820"]],"a":[["0.02871","100"]],"u":12509552,"seq":205781329716},"cts":1749833498439} +1749833497.564161: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833498462,"data":{"s":"SNTUSDT","b":[["0.02869","3680"]],"a":[["0.02871","100"]],"u":12509553,"seq":205781329732},"cts":1749833498455} +1749833497.8815079: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833498782,"data":{"s":"AIOZUSDT","b":[["0.3533","112"]],"a":[["0.3537","201"]],"u":9716678,"seq":93990197997},"cts":1749833498388} +1749833498.5040395: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833499405,"data":{"s":"RADUSDT","b":[["0.6443","81.9"]],"a":[["0.6445","38.5"]],"u":5510751,"seq":210977833268},"cts":1749833498901} +1749833499.7401757: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833500642,"data":{"s":"BANDUSDT","b":[["0.6132","43.2"]],"a":[["0.6135","11.4"]],"u":24043036,"seq":209972846967},"cts":1749833500639} +1749833499.802763: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833500702,"data":{"s":"BANDUSDT","b":[["0.6132","462.8"]],"a":[["0.6135","11.4"]],"u":24043037,"seq":209972847692},"cts":1749833500699} +1749833499.8232627: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833500710,"data":{"s":"AIOZUSDT","b":[["0.3533","41"]],"a":[["0.3537","201"]],"u":9716679,"seq":93990203134},"cts":1749833500707} +1749833499.880789: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833500782,"data":{"s":"SNTUSDT","b":[["0.02869","4370"]],"a":[["0.02871","100"]],"u":12509554,"seq":205781334032},"cts":1749833500778} +1749833499.900924: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833500802,"data":{"s":"SNTUSDT","b":[["0.02869","5460"]],"a":[["0.02871","1070"]],"u":12509555,"seq":205781334262},"cts":1749833500798} +1749833499.924773: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833500812,"data":{"s":"SNTUSDT","b":[["0.02869","5460"]],"a":[["0.02872","12830"]],"u":12509556,"seq":205781334312},"cts":1749833500805} +1749833499.9515798: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833500842,"data":{"s":"SNTUSDT","b":[["0.02869","5460"]],"a":[["0.02872","14120"]],"u":12509557,"seq":205781334547},"cts":1749833500836} +1749833499.9592104: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833500860,"data":{"s":"AIOZUSDT","b":[["0.3533","41"]],"a":[["0.3537","216"]],"u":9716680,"seq":93990204559},"cts":1749833500857} +1749833499.9697955: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833500871,"data":{"s":"AIOZUSDT","b":[["0.3532","57"]],"a":[["0.3536","41"]],"u":9716681,"seq":93990204651},"cts":1749833500868} +1749833499.9812603: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833500882,"data":{"s":"AIOZUSDT","b":[["0.3531","57"]],"a":[["0.3535","41"]],"u":9716682,"seq":93990204708},"cts":1749833500878} +1749833500.031783: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833500931,"data":{"s":"AIOZUSDT","b":[["0.3531","57"]],"a":[["0.3535","98"]],"u":9716683,"seq":93990205001},"cts":1749833500925} +1749833500.7603686: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833501661,"data":{"s":"AIOZUSDT","b":[["0.3531","57"]],"a":[["0.3535","113"]],"u":9716684,"seq":93990206694},"cts":1749833501656} +1749833501.061864: {"topic":"orderbook.1.AIOZUSDT","type":"snapshot","ts":1749833501960,"data":{"s":"AIOZUSDT","b":[["0.3531","57"]],"a":[["0.3535","98"]],"u":9716685,"seq":93990207343},"cts":1749833501956} +1749833501.900822: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833502802,"data":{"s":"SNTUSDT","b":[["0.02869","5460"]],"a":[["0.02872","12830"]],"u":12509558,"seq":205781338104},"cts":1749833502798} +1749833502.0066037: {"topic":"orderbook.1.RADUSDT","type":"snapshot","ts":1749833502904,"data":{"s":"RADUSDT","b":[["0.6443","81.9"]],"a":[["0.6445","38.5"]],"u":5510751,"seq":210977840520},"cts":1749833502501} +1749833502.4204218: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833503322,"data":{"s":"SNTUSDT","b":[["0.02869","5460"]],"a":[["0.02872","14120"]],"u":12509559,"seq":205781339013},"cts":1749833503315} +1749833502.431578: {"topic":"orderbook.1.SNTUSDT","type":"snapshot","ts":1749833503332,"data":{"s":"SNTUSDT","b":[["0.02869","5460"]],"a":[["0.02872","15410"]],"u":12509560,"seq":205781339044},"cts":1749833503325} +1749833502.8338249: {"topic":"orderbook.1.BANDUSDT","type":"snapshot","ts":1749833503733,"data":{"s":"BANDUSDT","b":[["0.6132","462.8"]],"a":[["0.6135","11.4"]],"u":24043037,"seq":209972851307},"cts":1749833503701} diff --git a/sample_data/BYBIT.ws.2.0 b/sample_data/BYBIT.ws.2.0 new file mode 100644 index 000000000..0f79187cb --- /dev/null +++ b/sample_data/BYBIT.ws.2.0 @@ -0,0 +1,152 @@ +wss://stream.bybit.com/v5/public/spot <-> 1749833471.8476062 +wss://stream.bybit.com/v5/public/spot <- 1749833474.076928: {"op":"subscribe","args":["orderbook.1.OPUSDC"]} +wss://stream.bybit.com/v5/public/spot <- 1749833474.076928: {"op":"subscribe","args":["orderbook.1.TUSDUSDT"]} +wss://stream.bybit.com/v5/public/spot <- 1749833474.076928: {"op":"subscribe","args":["orderbook.1.KCSUSDT"]} +wss://stream.bybit.com/v5/public/spot <- 1749833474.0779257: {"op":"subscribe","args":["orderbook.1.CPOOLUSDT"]} +wss://stream.bybit.com/v5/public/spot <- 1749833474.0779257: {"op":"subscribe","args":["orderbook.1.ARBUSDC"]} +wss://stream.bybit.com/v5/public/spot <- 1749833474.0779257: {"op":"subscribe","args":["orderbook.1.MASAUSDT"]} +1749833474.3249528: {"success":true,"ret_msg":"subscribe","conn_id":"1764937c-c1f0-4e2b-969d-82fee8151f2c","op":"subscribe"} +1749833474.3249528: {"topic":"orderbook.1.OPUSDC","ts":1749833472906,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3886.45"]],"a":[["0.58","4043.62"]],"u":1399781,"seq":122620616678},"cts":1749833472901} +1749833474.5014625: {"success":true,"ret_msg":"subscribe","conn_id":"1764937c-c1f0-4e2b-969d-82fee8151f2c","op":"subscribe"} +1749833474.5014625: {"topic":"orderbook.1.TUSDUSDT","ts":1749833473132,"type":"snapshot","data":{"s":"TUSDUSDT","b":[["0.9967","1489"]],"a":[["0.997","333.27"]],"u":31002,"seq":105958334573},"cts":1749833453706} +1749833474.5014625: {"success":true,"ret_msg":"subscribe","conn_id":"1764937c-c1f0-4e2b-969d-82fee8151f2c","op":"subscribe"} +1749833474.5014625: {"topic":"orderbook.1.KCSUSDT","ts":1749833474560,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.251","1.01"]],"a":[["11.259","0.78"]],"u":462748,"seq":105958357724},"cts":1749833469015} +1749833474.5014625: {"success":true,"ret_msg":"subscribe","conn_id":"1764937c-c1f0-4e2b-969d-82fee8151f2c","op":"subscribe"} +1749833474.5014625: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833475045,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","361.73"]],"u":5796290,"seq":103781178500},"cts":1749833475043} +1749833474.5014625: {"success":true,"ret_msg":"subscribe","conn_id":"1764937c-c1f0-4e2b-969d-82fee8151f2c","op":"subscribe"} +1749833474.5014625: {"topic":"orderbook.1.ARBUSDC","ts":1749833475044,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","905"]],"a":[["0.345","405"]],"u":1909171,"seq":70732575004},"cts":1749833475038} +1749833474.5014625: {"success":true,"ret_msg":"subscribe","conn_id":"1764937c-c1f0-4e2b-969d-82fee8151f2c","op":"subscribe"} +1749833474.5014625: {"topic":"orderbook.1.MASAUSDT","ts":1749833472455,"type":"snapshot","data":{"s":"MASAUSDT","b":[["0.02169","535.96"]],"a":[["0.02173","535.96"]],"u":1933707,"seq":136075693918},"cts":1749833471983} +1749833474.554107: {"topic":"orderbook.1.MASAUSDT","ts":1749833475455,"type":"snapshot","data":{"s":"MASAUSDT","b":[["0.02169","535.96"]],"a":[["0.02173","535.96"]],"u":1933707,"seq":136075702567},"cts":1749833474978} +1749833475.004116: {"topic":"orderbook.1.OPUSDC","ts":1749833475906,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3886.45"]],"a":[["0.58","4043.62"]],"u":1399781,"seq":122620619961},"cts":1749833473631} +1749833475.391653: {"topic":"orderbook.1.TUSDUSDT","ts":1749833476132,"type":"snapshot","data":{"s":"TUSDUSDT","b":[["0.9967","1489"]],"a":[["0.997","333.27"]],"u":31002,"seq":105958334573},"cts":1749833453706} +1749833476.2259893: {"topic":"orderbook.1.OPUSDC","ts":1749833477126,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4043.62"]],"u":1399782,"seq":122620625392},"cts":1749833477116} +1749833476.6422553: {"topic":"orderbook.1.ARBUSDC","ts":1749833477544,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","905"]],"a":[["0.345","3304.1"]],"u":1909172,"seq":70732575887},"cts":1749833477539} +1749833476.662123: {"topic":"orderbook.1.KCSUSDT","ts":1749833477560,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.251","1.01"]],"a":[["11.259","0.78"]],"u":462748,"seq":105958357724},"cts":1749833469015} +1749833476.6711237: {"topic":"orderbook.1.KCSUSDT","ts":1749833477570,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.258","4.8"]],"a":[["11.259","0.78"]],"u":462749,"seq":105958369448},"cts":1749833477565} +1749833476.6790855: {"topic":"orderbook.1.KCSUSDT","ts":1749833477581,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.253","1.01"]],"a":[["11.259","0.78"]],"u":462750,"seq":105958369458},"cts":1749833477577} +1749833476.6983664: {"topic":"orderbook.1.KCSUSDT","ts":1749833477601,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.253","1.01"]],"a":[["11.258","7.67"]],"u":462751,"seq":105958369468},"cts":1749833477599} +1749833476.7083402: {"topic":"orderbook.1.KCSUSDT","ts":1749833477610,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.252","1.01"]],"a":[["11.258","7.67"]],"u":462752,"seq":105958369472},"cts":1749833477602} +1749833477.1448185: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833478045,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","361.73"]],"u":5796290,"seq":103781181883},"cts":1749833477956} +1749833477.2950883: {"topic":"orderbook.1.KCSUSDT","ts":1749833478191,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.252","1.01"]],"a":[["11.257","2.58"]],"u":462753,"seq":105958369946},"cts":1749833478185} +1749833477.2981167: {"topic":"orderbook.1.KCSUSDT","ts":1749833478201,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.247","1.01"]],"a":[["11.257","2.58"]],"u":462754,"seq":105958369950},"cts":1749833478193} +1749833477.3091223: {"topic":"orderbook.1.KCSUSDT","ts":1749833478210,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.247","1.01"]],"a":[["11.256","1"]],"u":462755,"seq":105958369958},"cts":1749833478203} +1749833477.5648837: {"topic":"orderbook.1.MASAUSDT","ts":1749833478465,"type":"snapshot","data":{"s":"MASAUSDT","b":[["0.02169","535.96"]],"a":[["0.02173","535.96"]],"u":1933707,"seq":136075706475},"cts":1749833477957} +1749833478.2292013: {"topic":"orderbook.1.TUSDUSDT","ts":1749833479132,"type":"snapshot","data":{"s":"TUSDUSDT","b":[["0.9967","1489"]],"a":[["0.997","333.27"]],"u":31002,"seq":105958334573},"cts":1749833453706} +1749833478.26175: {"topic":"orderbook.1.ARBUSDC","ts":1749833479163,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","500"]],"a":[["0.345","3304.1"]],"u":1909173,"seq":70732576236},"cts":1749833479162} +1749833478.270092: {"topic":"orderbook.1.ARBUSDC","ts":1749833479174,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","905"]],"a":[["0.345","3304.1"]],"u":1909174,"seq":70732576259},"cts":1749833479168} +1749833478.2810626: {"topic":"orderbook.1.ARBUSDC","ts":1749833479184,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","905"]],"a":[["0.345","8074.17"]],"u":1909175,"seq":70732576269},"cts":1749833479173} +1749833478.461376: {"topic":"orderbook.1.ARBUSDC","ts":1749833479363,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","905"]],"a":[["0.3449","405"]],"u":1909176,"seq":70732576349},"cts":1749833479362} +1749833478.4704788: {"topic":"orderbook.1.ARBUSDC","ts":1749833479373,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","905"]],"a":[["0.3449","3304.96"]],"u":1909177,"seq":70732576426},"cts":1749833479371} +1749833478.480215: {"topic":"orderbook.1.ARBUSDC","ts":1749833479383,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.3449","3304.96"]],"u":1909178,"seq":70732576473},"cts":1749833479380} +1749833478.4910007: {"topic":"orderbook.1.ARBUSDC","ts":1749833479393,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3447","905"]],"a":[["0.3449","3304.96"]],"u":1909179,"seq":70732576516},"cts":1749833479389} +1749833478.492995: {"topic":"orderbook.1.OPUSDC","ts":1749833479396,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4060.87"]],"u":1399783,"seq":122620629206},"cts":1749833479390} +1749833478.5407155: {"topic":"orderbook.1.ARBUSDC","ts":1749833479444,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.3449","3304.96"]],"u":1909180,"seq":70732576672},"cts":1749833479437} +1749833480.145196: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833481045,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","361.73"]],"u":5796290,"seq":103781187169},"cts":1749833481037} +1749833480.3071294: {"topic":"orderbook.1.KCSUSDT","ts":1749833481210,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.247","1.01"]],"a":[["11.256","1"]],"u":462755,"seq":105958370826},"cts":1749833479151} +1749833480.5661073: {"topic":"orderbook.1.MASAUSDT","ts":1749833481467,"type":"snapshot","data":{"s":"MASAUSDT","b":[["0.02169","535.96"]],"a":[["0.02173","535.96"]],"u":1933707,"seq":136075713334},"cts":1749833480961} +1749833481.0803885: {"topic":"orderbook.1.ARBUSDC","ts":1749833481983,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.3449","405"]],"u":1909181,"seq":70732577621},"cts":1749833481981} +1749833481.2298317: {"topic":"orderbook.1.TUSDUSDT","ts":1749833482133,"type":"snapshot","data":{"s":"TUSDUSDT","b":[["0.9967","1489"]],"a":[["0.997","333.27"]],"u":31002,"seq":105958334573},"cts":1749833453706} +1749833481.4441051: {"topic":"orderbook.1.OPUSDC","ts":1749833482347,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4043.62"]],"u":1399784,"seq":122620635901},"cts":1749833482344} +1749833481.714849: {"topic":"orderbook.1.ARBUSDC","ts":1749833482613,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.345","13875.23"]],"u":1909182,"seq":70732577838},"cts":1749833482603} +1749833481.8056533: {"topic":"orderbook.1.ARBUSDC","ts":1749833482674,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.345","8074.87"]],"u":1909183,"seq":70732577869},"cts":1749833482670} +1749833481.8808048: {"topic":"orderbook.1.ARBUSDC","ts":1749833482784,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.345","3304.8"]],"u":1909184,"seq":70732577895},"cts":1749833482779} +1749833482.1339095: {"topic":"orderbook.1.OPUSDC","ts":1749833483036,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4060.87"]],"u":1399785,"seq":122620636795},"cts":1749833483025} +1749833482.167168: {"topic":"orderbook.1.OPUSDC","ts":1749833483066,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4043.62"]],"u":1399786,"seq":122620636839},"cts":1749833483063} +1749833482.2501194: {"topic":"orderbook.1.ARBUSDC","ts":1749833483154,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.345","7478.12"]],"u":1909185,"seq":70732578010},"cts":1749833483150} +1749833482.3298306: {"topic":"orderbook.1.ARBUSDC","ts":1749833483233,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.3449","405"]],"u":1909186,"seq":70732578037},"cts":1749833483226} +1749833482.3638463: {"topic":"orderbook.1.OPUSDC","ts":1749833483267,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4060.87"]],"u":1399787,"seq":122620637249},"cts":1749833483257} +1749833482.540455: {"topic":"orderbook.1.ARBUSDC","ts":1749833483443,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.345","7478.12"]],"u":1909187,"seq":70732578072},"cts":1749833483435} +1749833482.881911: {"topic":"orderbook.1.ARBUSDC","ts":1749833483784,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.3449","405"]],"u":1909188,"seq":70732578112},"cts":1749833483775} +1749833483.142392: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833484045,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","361.73"]],"u":5796290,"seq":103781191321},"cts":1749833483975} +1749833483.3078778: {"topic":"orderbook.1.KCSUSDT","ts":1749833484210,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.247","1.01"]],"a":[["11.256","1"]],"u":462755,"seq":105958370826},"cts":1749833479151} +1749833483.5617723: {"topic":"orderbook.1.MASAUSDT","ts":1749833484465,"type":"snapshot","data":{"s":"MASAUSDT","b":[["0.02169","535.96"]],"a":[["0.02173","535.96"]],"u":1933707,"seq":136075718434},"cts":1749833483975} +1749833483.9010487: {"topic":"orderbook.1.ARBUSDC","ts":1749833484804,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.345","7478.12"]],"u":1909189,"seq":70732578335},"cts":1749833484800} +1749833483.9379077: {"topic":"orderbook.1.ARBUSDC","ts":1749833484834,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.345","3304.8"]],"u":1909190,"seq":70732578375},"cts":1749833484829} +1749833483.9809997: {"topic":"orderbook.1.ARBUSDC","ts":1749833484883,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","405"]],"a":[["0.345","405"]],"u":1909191,"seq":70732578445},"cts":1749833484876} +1749833484.3142335: {"topic":"orderbook.1.TUSDUSDT","ts":1749833485132,"type":"snapshot","data":{"s":"TUSDUSDT","b":[["0.9967","1489"]],"a":[["0.997","333.27"]],"u":31002,"seq":105958334573},"cts":1749833453706} +1749833484.3142335: {"topic":"orderbook.1.ARBUSDC","ts":1749833485193,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","905"]],"a":[["0.345","405"]],"u":1909192,"seq":70732578749},"cts":1749833485185} +1749833484.3142335: {"topic":"orderbook.1.ARBUSDC","ts":1749833485204,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","405"]],"a":[["0.345","405"]],"u":1909193,"seq":70732578754},"cts":1749833485196} +1749833485.3662121: {"topic":"orderbook.1.OPUSDC","ts":1749833486266,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4060.87"]],"u":1399787,"seq":122620643075},"cts":1749833483257} +1749833486.1429417: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833487046,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","361.73"]],"u":5796290,"seq":103781195612},"cts":1749833486979} +1749833486.2608335: {"topic":"orderbook.1.ARBUSDC","ts":1749833487164,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","405"]],"a":[["0.3451","7205.08"]],"u":1909194,"seq":70732579421},"cts":1749833487161} +1749833486.3110435: {"topic":"orderbook.1.KCSUSDT","ts":1749833487210,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.247","1.01"]],"a":[["11.256","1"]],"u":462755,"seq":105958370826},"cts":1749833479151} +1749833486.5613372: {"topic":"orderbook.1.MASAUSDT","ts":1749833487465,"type":"snapshot","data":{"s":"MASAUSDT","b":[["0.02169","535.96"]],"a":[["0.02173","535.96"]],"u":1933707,"seq":136075725193},"cts":1749833486979} +1749833486.8003113: {"topic":"orderbook.1.ARBUSDC","ts":1749833487703,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","405"]],"a":[["0.345","405"]],"u":1909195,"seq":70732579813},"cts":1749833487699} +1749833487.2302673: {"topic":"orderbook.1.TUSDUSDT","ts":1749833488133,"type":"snapshot","data":{"s":"TUSDUSDT","b":[["0.9967","1489"]],"a":[["0.997","333.27"]],"u":31002,"seq":105958334573},"cts":1749833453706} +1749833487.257195: {"topic":"orderbook.1.KCSUSDT","ts":1749833488160,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.248","1"]],"a":[["11.256","1"]],"u":462756,"seq":105958381058},"cts":1749833488154} +1749833487.2683074: {"topic":"orderbook.1.KCSUSDT","ts":1749833488170,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.249","1"]],"a":[["11.256","1"]],"u":462757,"seq":105958381075},"cts":1749833488162} +1749833487.3743324: {"topic":"orderbook.1.OPUSDC","ts":1749833488276,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3815.31"]],"a":[["0.58","4060.87"]],"u":1399788,"seq":122620651269},"cts":1749833488265} +1749833487.6033347: {"topic":"orderbook.1.OPUSDC","ts":1749833488506,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4060.87"]],"u":1399789,"seq":122620651709},"cts":1749833488497} +1749833489.143099: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833490045,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","361.73"]],"u":5796290,"seq":103781200119},"cts":1749833489972} +1749833489.564657: {"topic":"orderbook.1.MASAUSDT","ts":1749833490465,"type":"snapshot","data":{"s":"MASAUSDT","b":[["0.02169","535.96"]],"a":[["0.02173","535.96"]],"u":1933707,"seq":136075731533},"cts":1749833489972} +1749833489.799979: {"topic":"orderbook.1.ARBUSDC","ts":1749833490703,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","405"]],"a":[["0.345","405"]],"u":1909195,"seq":70732580223},"cts":1749833488707} +1749833490.2312365: {"topic":"orderbook.1.TUSDUSDT","ts":1749833491132,"type":"snapshot","data":{"s":"TUSDUSDT","b":[["0.9967","1489"]],"a":[["0.997","333.27"]],"u":31002,"seq":105958381154},"cts":1749833488208} +1749833490.268127: {"topic":"orderbook.1.KCSUSDT","ts":1749833491170,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.249","1"]],"a":[["11.256","1"]],"u":462757,"seq":105958383563},"cts":1749833491133} +1749833490.6038432: {"topic":"orderbook.1.OPUSDC","ts":1749833491507,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4060.87"]],"u":1399789,"seq":122620652958},"cts":1749833488497} +1749833491.1127608: {"topic":"orderbook.1.ARBUSDC","ts":1749833492003,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","405"]],"a":[["0.3451","7205.08"]],"u":1909196,"seq":70732581576},"cts":1749833491999} +1749833491.1137588: {"topic":"orderbook.1.OPUSDC","ts":1749833492016,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3888.68"]],"a":[["0.58","4060.87"]],"u":1399790,"seq":122620658613},"cts":1749833492008} +1749833491.2127752: {"topic":"orderbook.1.ARBUSDC","ts":1749833492113,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","905"]],"a":[["0.3451","7205.08"]],"u":1909197,"seq":70732581823},"cts":1749833492107} +1749833491.334607: {"topic":"orderbook.1.ARBUSDC","ts":1749833492133,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","405"]],"a":[["0.3451","4202.26"]],"u":1909198,"seq":70732581882},"cts":1749833492129} +1749833491.336461: {"topic":"orderbook.1.ARBUSDC","ts":1749833492143,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","405"]],"a":[["0.3452","11702.79"]],"u":1909199,"seq":70732581979},"cts":1749833492139} +1749833491.336461: {"topic":"orderbook.1.ARBUSDC","ts":1749833492163,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","905"]],"a":[["0.3452","1485.6"]],"u":1909200,"seq":70732582125},"cts":1749833492159} +1749833491.336461: {"topic":"orderbook.1.OPUSDC","ts":1749833492166,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3888.68"]],"a":[["0.58","3060.87"]],"u":1399791,"seq":122620660458},"cts":1749833492158} +1749833491.336461: {"topic":"orderbook.1.ARBUSDC","ts":1749833492183,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","905"]],"a":[["0.3451","405"]],"u":1909201,"seq":70732582224},"cts":1749833492178} +1749833491.336461: {"topic":"orderbook.1.OPUSDC","ts":1749833492186,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3888.68"]],"a":[["0.58","3043.62"]],"u":1399792,"seq":122620660998},"cts":1749833492182} +1749833491.336612: {"topic":"orderbook.1.OPUSDC","ts":1749833492206,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","3043.62"]],"u":1399793,"seq":122620661251},"cts":1749833492200} +1749833491.3521862: {"topic":"orderbook.1.ARBUSDC","ts":1749833492254,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","905"]],"a":[["0.3452","405"]],"u":1909202,"seq":70732582451},"cts":1749833492248} +1749833491.3604956: {"topic":"orderbook.1.ARBUSDC","ts":1749833492263,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3451","405"]],"a":[["0.3452","405"]],"u":1909203,"seq":70732582480},"cts":1749833492257} +1749833491.5407321: {"topic":"orderbook.1.ARBUSDC","ts":1749833492334,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3451","405"]],"a":[["0.3453","405"]],"u":1909204,"seq":70732582571},"cts":1749833492327} +1749833491.5407321: {"topic":"orderbook.1.ARBUSDC","ts":1749833492413,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","905"]],"a":[["0.3453","3302.8"]],"u":1909205,"seq":70732582671},"cts":1749833492411} +1749833491.5407321: {"topic":"orderbook.1.ARBUSDC","ts":1749833492423,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","905"]],"a":[["0.3452","405"]],"u":1909206,"seq":70732582679},"cts":1749833492416} +1749833491.5407321: {"topic":"orderbook.1.ARBUSDC","ts":1749833492434,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","905"]],"a":[["0.3452","3303.1"]],"u":1909207,"seq":70732582716},"cts":1749833492426} +1749833491.6139393: {"topic":"orderbook.1.ARBUSDC","ts":1749833492483,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","905"]],"a":[["0.3451","405"]],"u":1909208,"seq":70732582791},"cts":1749833492477} +1749833491.6139393: {"topic":"orderbook.1.ARBUSDC","ts":1749833492513,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","500"]],"a":[["0.3451","405"]],"u":1909209,"seq":70732582840},"cts":1749833492510} +1749833491.8178551: {"topic":"orderbook.1.OPUSDC","ts":1749833492686,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4043.62"]],"u":1399794,"seq":122620663590},"cts":1749833492678} +1749833492.156456: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833493056,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","361.73"]],"u":5796290,"seq":103781205215},"cts":1749833492938} +1749833492.2270029: {"topic":"orderbook.1.ARBUSDC","ts":1749833493094,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","905"]],"a":[["0.3451","405"]],"u":1909210,"seq":70732583129},"cts":1749833493087} +1749833492.2270029: {"topic":"orderbook.1.ARBUSDC","ts":1749833493123,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","905"]],"a":[["0.3451","405"]],"u":1909211,"seq":70732583168},"cts":1749833493121} +1749833492.2710235: {"topic":"orderbook.1.ARBUSDC","ts":1749833493143,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","405"]],"a":[["0.3451","405"]],"u":1909212,"seq":70732583212},"cts":1749833493139} +1749833492.2710235: {"topic":"orderbook.1.ARBUSDC","ts":1749833493164,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","905"]],"a":[["0.3451","405"]],"u":1909213,"seq":70732583222},"cts":1749833493158} +1749833492.2819948: {"topic":"orderbook.1.ARBUSDC","ts":1749833493183,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","405"]],"a":[["0.3451","405"]],"u":1909214,"seq":70732583240},"cts":1749833493178} +1749833492.5632164: {"topic":"orderbook.1.MASAUSDT","ts":1749833493465,"type":"snapshot","data":{"s":"MASAUSDT","b":[["0.02169","535.96"]],"a":[["0.02173","535.96"]],"u":1933707,"seq":136075740330},"cts":1749833492941} +1749833493.2299087: {"topic":"orderbook.1.TUSDUSDT","ts":1749833494133,"type":"snapshot","data":{"s":"TUSDUSDT","b":[["0.9967","1489"]],"a":[["0.997","333.27"]],"u":31002,"seq":105958383634},"cts":1749833491204} +1749833493.4100184: {"topic":"orderbook.1.KCSUSDT","ts":1749833494170,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.249","1"]],"a":[["11.256","1"]],"u":462757,"seq":105958387193},"cts":1749833492884} +1749833494.7873034: {"topic":"orderbook.1.OPUSDC","ts":1749833495686,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4043.62"]],"u":1399794,"seq":122620668068},"cts":1749833492678} +1749833494.9439542: {"topic":"orderbook.1.OPUSDC","ts":1749833495847,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4808.42"]],"u":1399795,"seq":122620669610},"cts":1749833495840} +1749833494.9544644: {"topic":"orderbook.1.OPUSDC","ts":1749833495856,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4043.62"]],"u":1399796,"seq":122620669626},"cts":1749833495846} +1749833495.1522694: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833496055,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","361.73"]],"u":5796290,"seq":103781209208},"cts":1749833495953} +1749833495.2820454: {"topic":"orderbook.1.ARBUSDC","ts":1749833496184,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","405"]],"a":[["0.3451","405"]],"u":1909214,"seq":70732584044},"cts":1749833495555} +1749833495.5628326: {"topic":"orderbook.1.MASAUSDT","ts":1749833496465,"type":"snapshot","data":{"s":"MASAUSDT","b":[["0.02169","535.96"]],"a":[["0.02173","535.96"]],"u":1933707,"seq":136075744147},"cts":1749833495954} +1749833496.2377832: {"topic":"orderbook.1.TUSDUSDT","ts":1749833497132,"type":"snapshot","data":{"s":"TUSDUSDT","b":[["0.9967","1489"]],"a":[["0.997","333.27"]],"u":31002,"seq":105958388848},"cts":1749833494207} +1749833496.2479286: {"topic":"orderbook.1.OPUSDC","ts":1749833497146,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","3028.94"]],"a":[["0.58","4060.87"]],"u":1399797,"seq":122620671477},"cts":1749833497141} +1749833496.2678885: {"topic":"orderbook.1.KCSUSDT","ts":1749833497171,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.249","1"]],"a":[["11.256","1"]],"u":462757,"seq":105958387193},"cts":1749833492884} +1749833496.4106722: {"topic":"orderbook.1.ARBUSDC","ts":1749833497314,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","905"]],"a":[["0.3451","405"]],"u":1909215,"seq":70732584485},"cts":1749833497309} +1749833497.6031935: {"topic":"orderbook.1.OPUSDC","ts":1749833498506,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","2792.69"]],"a":[["0.58","4923.94"]],"u":1399798,"seq":122620673895},"cts":1749833498502} +1749833497.6131148: {"topic":"orderbook.1.OPUSDC","ts":1749833498516,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.578","25129.24"]],"a":[["0.58","6650.79"]],"u":1399799,"seq":122620673913},"cts":1749833498515} +1749833497.6230884: {"topic":"orderbook.1.OPUSDC","ts":1749833498526,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.578","24550.37"]],"a":[["0.58","6650.79"]],"u":1399800,"seq":122620673924},"cts":1749833498524} +1749833497.6370513: {"topic":"orderbook.1.OPUSDC","ts":1749833498537,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.578","25427.23"]],"a":[["0.58","6650.79"]],"u":1399801,"seq":122620673940},"cts":1749833498534} +1749833497.6666255: {"topic":"orderbook.1.OPUSDC","ts":1749833498566,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.578","25427.23"]],"a":[["0.58","4060.87"]],"u":1399802,"seq":122620673987},"cts":1749833498561} +1749833498.0488951: {"topic":"orderbook.1.OPUSDC","ts":1749833498946,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","236.25"]],"a":[["0.58","4828.53"]],"u":1399803,"seq":122620674635},"cts":1749833498944} +1749833498.0598652: {"topic":"orderbook.1.OPUSDC","ts":1749833498956,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","1236.25"]],"a":[["0.58","4828.53"]],"u":1399804,"seq":122620674654},"cts":1749833498949} +1749833498.1541498: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833499056,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","361.73"]],"u":5796290,"seq":103781212759},"cts":1749833498952} +1749833498.250915: {"topic":"orderbook.1.ARBUSDC","ts":1749833499154,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.345","405"]],"a":[["0.3451","405"]],"u":1909216,"seq":70732585121},"cts":1749833499149} +1749833498.5621874: {"topic":"orderbook.1.MASAUSDT","ts":1749833499465,"type":"snapshot","data":{"s":"MASAUSDT","b":[["0.02169","535.96"]],"a":[["0.02173","535.96"]],"u":1933707,"seq":136075747078},"cts":1749833498953} +1749833499.0035493: {"topic":"orderbook.1.ARBUSDC","ts":1749833499903,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","905"]],"a":[["0.3451","405"]],"u":1909217,"seq":70732585292},"cts":1749833499899} +1749833499.2592611: {"topic":"orderbook.1.TUSDUSDT","ts":1749833500133,"type":"snapshot","data":{"s":"TUSDUSDT","b":[["0.9967","1489"]],"a":[["0.997","333.27"]],"u":31002,"seq":105958391471},"cts":1749833497204} +1749833499.2703035: {"topic":"orderbook.1.KCSUSDT","ts":1749833500170,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.249","1"]],"a":[["11.256","1"]],"u":462757,"seq":105958393563},"cts":1749833499484} +1749833499.7620068: {"topic":"orderbook.1.ARBUSDC","ts":1749833500664,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3449","405"]],"a":[["0.3451","405"]],"u":1909218,"seq":70732585553},"cts":1749833500660} +1749833499.880789: {"topic":"orderbook.1.ARBUSDC","ts":1749833500784,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","5475.77"]],"a":[["0.3451","405"]],"u":1909219,"seq":70732585783},"cts":1749833500775} +1749833499.924773: {"topic":"orderbook.1.OPUSDC","ts":1749833500816,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","2240.01"]],"a":[["0.58","4828.53"]],"u":1399805,"seq":122620679220},"cts":1749833500815} +1749833500.071002: {"topic":"orderbook.1.ARBUSDC","ts":1749833500973,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","5475.77"]],"a":[["0.3451","8301"]],"u":1909220,"seq":70732586057},"cts":1749833500965} +1749833500.0819721: {"topic":"orderbook.1.ARBUSDC","ts":1749833500984,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","5475.77"]],"a":[["0.345","405"]],"u":1909221,"seq":70732586069},"cts":1749833500976} +1749833501.2506495: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833502055,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","361.73"]],"u":5796290,"seq":103781217537},"cts":1749833501985} +1749833501.3627803: {"topic":"orderbook.1.OPUSDC","ts":1749833502266,"type":"snapshot","data":{"s":"OPUSDC","b":[["0.579","2003.76"]],"a":[["0.58","6491.52"]],"u":1399806,"seq":122620682776},"cts":1749833502259} +1749833501.5621145: {"topic":"orderbook.1.MASAUSDT","ts":1749833502466,"type":"snapshot","data":{"s":"MASAUSDT","b":[["0.02169","535.96"]],"a":[["0.02173","535.96"]],"u":1933707,"seq":136075753689},"cts":1749833501989} +1749833501.8313239: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833502735,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","404.43"]],"u":5796291,"seq":103781218421},"cts":1749833502731} +1749833501.852295: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833502755,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","42.7"]],"u":5796292,"seq":103781218486},"cts":1749833502752} +1749833501.9445944: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833502845,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11716","1707.06"]],"u":5796293,"seq":103781218769},"cts":1749833502838} +1749833501.9686935: {"topic":"orderbook.1.CPOOLUSDT","ts":1749833502865,"type":"snapshot","data":{"s":"CPOOLUSDT","b":[["0.11687","152.26"]],"a":[["0.11715","554.75"]],"u":5796294,"seq":103781218852},"cts":1749833502862} +1749833502.2351718: {"topic":"orderbook.1.TUSDUSDT","ts":1749833503132,"type":"snapshot","data":{"s":"TUSDUSDT","b":[["0.9967","1489"]],"a":[["0.997","333.27"]],"u":31002,"seq":105958394154},"cts":1749833500204} +1749833502.289943: {"topic":"orderbook.1.KCSUSDT","ts":1749833503170,"type":"snapshot","data":{"s":"KCSUSDT","b":[["11.249","1"]],"a":[["11.256","1"]],"u":462757,"seq":105958398299},"cts":1749833502894} +1749833503.0809627: {"topic":"orderbook.1.ARBUSDC","ts":1749833503984,"type":"snapshot","data":{"s":"ARBUSDC","b":[["0.3448","5475.77"]],"a":[["0.345","405"]],"u":1909221,"seq":70732586266},"cts":1749833501662} diff --git a/tests/unit/test_exchange.py b/tests/unit/test_exchange.py index 0acc28c4c..7b8799320 100644 --- a/tests/unit/test_exchange.py +++ b/tests/unit/test_exchange.py @@ -36,7 +36,7 @@ BITSTAMP: {TRADES: 10, L2_BOOK: 627}, #BITTREX: {TICKER: 162, CANDLES: 20, L2_BOOK: 1014}, BLOCKCHAIN: {L2_BOOK: 78}, - BYBIT: {TRADES: 251, L2_BOOK: 4278}, + BYBIT: {TRADES: 251, L1_BOOK:337, L2_BOOK: 4278}, COINBASE: {L2_BOOK: 9729, TICKER: 107, TRADES: 107}, CRYPTODOTCOM: {L2_BOOK: 1525, TICKER: 1484, TRADES: 1143, CANDLES: 10}, DELTA: {L2_BOOK: 309, CANDLES: 10}, diff --git a/tests/unit/test_serialization.py b/tests/unit/test_serialization.py index 13d9b1ca7..601d21a57 100644 --- a/tests/unit/test_serialization.py +++ b/tests/unit/test_serialization.py @@ -8,7 +8,7 @@ from time import time import json -from cryptofeed.types import OrderInfo, OrderBook, Trade, Ticker, Liquidation, Funding, Candle +from cryptofeed.types import OrderInfo, OrderBook, Trade, Ticker, Liquidation, Funding, Candle, L1Book from cryptofeed.defines import BUY, PENDING, LIMIT, UNFILLED @@ -45,6 +45,22 @@ def test_order_book(): assert ob.book.to_dict() == ob2.book.to_dict() assert ob == ob2 +def test_l1_book(): + l1 = L1Book( + 'BYBIT', + 'ADA-USDT', + Decimal(0.65), + Decimal(1000), + Decimal(0.67), + Decimal(1500), + int(time()) + ) + d = l1.to_dict() + d = json.dumps(d) + d = json.loads(d) + l1_2 = L1Book.from_dict(d) + assert l1 == l1_2 + def test_trade(): t = Trade(