Binance Testnet user_socket() problem.
ANWB2020 opened this issue · 0 comments
ANWB2020 commented
Binance Python: 1.0.10
Python: 3.10
Hello,
I have published this issue also on Binance Developer., but didn't get answer.
My issue:
I don't get response from user_socket and do not know if my code is right.
I use Python Binance and asyncIO for parallel processing.
I’m expecting from my program:
-
sending an order via order_market_buy() (ok and tested via get_my_trades())
-
response from user_socket() after change in balance. (that's not running, I receive nothing)
What's wrong with my code? Do you have any suggestions for my following code?
import asyncio
from binance import AsyncClient, BinanceSocketManager
import os
import datetime
api_key = os.environ.get('binance_api_key_test')
api_secret = os.environ.get('binance_api_secret_test')
async def user_socket(client):
bm = BinanceSocketManager(client)
ts = bm.user_socket()
async with ts as tscm:
while True:
res = await tscm.recv()
print("user socket: ", res)
async def set_order_market_buy(symbol, quantity, client):
await asyncio.sleep(5) # waiting user_socket
await client.order_market_buy(
symbol=symbol,
quantity=quantity)
result = await client.get_my_trades(symbol=symbol, limit=1)
print("last order: ", datetime.datetime.fromtimestamp(result[0]['time']/1000)) # converts trade time in normal date
await client.close_connection()
async def aux():
client = await AsyncClient.create(api_key, api_secret)
client.API_URL = 'https://testnet.binance.vision/api'
user_socket2 = asyncio.create_task(user_socket(client=client))
task_order = asyncio.create_task(set_order_market_buy(symbol='BTCUSDT', quantity=0.001, client=client))
await user_socket2
await task_order
if __name__ == "__main__":
asyncio.run(aux())