是否有人为买卖“DOGEUSDT”之类的货币对或任何其他货币对(保证金交易)制定了适当的工作功能,我已尽力而为,但最终出现了不同的错误,例如-批量失败,资金不足或最常见的错误此 API 的已知价格过滤器错误
我想出的功能如下,有人可以告诉我我错过了什么
此功能用于提出买入/空头数量,并且效果相当不错
def buy_quantity(symbol,asset): a = 0 while a < 3: try: bal = pd.DataFrame(client.get_margin_account()['userAssets']) bal = bal[bal['asset']==asset] bal = float(bal['free']) * 0.90 break except: print("can't extract asset value..retrying") a+=1 price = float(client.get_recent_trades(symbol=symbol)[0]['price']) stepSize = float(client.get_symbol_info(symbol)['filters'][2]['stepSize']) precision = int(round(-math.log(stepSize, 10), 0)) quantity = (bal / price)*0.9995 # Trading fee taken in consideration quantity = round(quantity,precision) return quantity
这个功能是补空,它基本上是试图给你借来的数量
def sell_quantity1(asset): a = 0 while a < 3: try: order = pd.DataFrame(client.get_margin_account()['userAssets']) order = order[order['asset']==asset] order = float(order['borrowed']) break except: print("can't extract borrowed order book...retrying") a+=1 order = round(order,5) return order
此功能是卖出多头头寸
def sell_quantity2(asset): a = 0 while a < 3: try: order = pd.DataFrame(client.get_margin_account()['userAssets']) order = order[order['asset']==asset] order = float(order['free']) break except: print("can't extract order book...retrying") a+=1 order = round(order,5) return order
我认为功能 2 和 3 应该像功能 1 一样正常工作,但它们没有,弹出一些或其他错误 Lot size failure, Insufficient fund, 或其他东西,我在这里缺少什么,有人可以帮助我吗?挣扎了几天
提前致谢