Files
quant-data-collect/comsumer/order.py
yhydev@outlook.com 4214ef212f 优化代码
2025-06-15 01:50:57 +00:00

33 lines
1.1 KiB
Python

from binance import AsyncClient,BinanceSocketManager
import kafka_service
import asyncio
import json
from loguru import logger
async def start():
pass
async def start_bn_future_order_consumer(account_id, api_key, api_secret):
client = await AsyncClient.create(api_key, api_secret, testnet=True,https_proxy="http://127.0.0.1:7890")
bm = BinanceSocketManager(client, max_queue_size=100000)
ws = bm.futures_user_socket()
async with ws as stream:
while True:
msg = await ws.recv()
msg['x-account-id'] = account_id
asyncio.create_task(send_msg(msg))
async def send_msg(msg):
logger.info(f"send to kafka: {msg}")
await kafka_service.send_to_kafka("binance_future_order_update", json.dumps(msg),key="DEFAULT",send_now=True)
logger.info(f"send to kafka success: {msg}")
if __name__ == "__main__":
import asyncio
api_key = "a47059edcf978d1e1f616634c2cce1b3ae22e741f745a5152b56c039e8bfa7a4"
secret = "6f69f45a686cfc7dae71c10ebd3419517582b0f4ce0253e6c21d853e8637c112"
asyncio.run(start_bn_future_order_consumer(1, api_key, secret))