首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >python:获取所有订单,而不指定符号。

python:获取所有订单,而不指定符号。
EN

Stack Overflow用户
提问于 2021-07-06 06:21:31
回答 2查看 4.5K关注 0票数 1

尝试用python-binance模块获取我的Binance帐户订单历史记录。有一个选项可以在一个符号(见文件)内获取所有订单:

代码语言:javascript
运行
复制
orders = client.get_all_orders(symbol='BNBBTC', limit=10)

但问题是,我不能在符号参数中传递超过1枚硬币还是有另一种方法这样做?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-07-06 07:23:12

目前,不可能在一个调用中指定符号,即使没有模块python-binance,也不可能获得所有历史订单或交易。

在Binance论坛上有一个正在进行的讨论,请求这个特性。

作为一种解决办法:

  • 如果您知道您的有序符号:对循环中的每个符号多次使用函数get_all_orders()
  • 如果您不知道您的有序符号:您可以为Binance中的每个可用符号发送一个GET请求(如上面链接的讨论中所提到的)。但是要小心rateLimits
票数 3
EN

Stack Overflow用户

发布于 2021-08-13 11:57:35

我也在问自己同样的问题。嗯,一项工作是迭代所有在Binance可用的代码,寻找我们在过去交易过的代码。

如果您正在使用API的空闲计划,最好是设置一个存储文件或数据库,并存储所有结果。那么你就必须关注从那里开始的变化。

是的,这正是我要处理的问题。

(编辑):睡眠功能将是必要的,以避免超过1200个查询每分钟。

(例如):

代码语言:javascript
运行
复制
def getAllTickers(self):

        # Get all available exchange tickers
        exchangeInfo = self.client.get_exchange_info()

        # Extract the tickers general info
        exchangeSymbols = []

        for i in exchangeInfo['symbols']:
            exchangeSymbols.append(i)

        return exchangeSymbols

            
    def getMyTrades(self, strSymbol):
        return self.client.get_my_trades(symbol=strSymbol)

    def getMyTradedTickers(self):

        tickers = self.getAllTickers()
        # Extract every ticker where trade happened
        traded = []
        for i in tickers:
            tickerTransactions = self.getMyTrades(i["symbol"])
            if tickerTransactions :
                traded.append(tickerTransactions)
                print(i["symbol"], " transactions available")
            else :
                print(i["symbol"], " has no transactions")
            self.time.sleep(0.1)
        
        return traded

**为代码质量而努力。Python不是我的主要编码语言,我开始习惯它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68265498

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档