我正在尝试使用python-binance包装到Binance API来编写一个简单的小交易机器人,主要是为了学习如何。我目前无法使用client.get_symbol_ticker()
函数来获取特定交易对的价格,可以在第827行找到here。
我需要发送的字符串格式为"AAABBB"
,其中AAA是第一个股票代码,BBB是我想要AAA价格的符号。但是,我没有正确的语法。当我传入一个字符串时:
client.get_symbol_ticker('ETHBTC')
我得到TypeError: get_symbol_ticker() takes exactly 1 argument (2 given)
如果我这样做
client.get_symbol_ticker(params = 'ETHBTC')
我得到BinanceAPIException: APIError(code=-1104): Not all sent parameters were read; read '0' parameter(s) but was sent '1'.
显然,我只是错误地调用了这个调用的语法。函数原型如下所示:
def get_symbol_ticker(self, **params):
"""Latest price for a symbol or symbols.
https://github.com/binance-exchange/binance-official-api-docs/blob/master/rest-api.md#24hr-ticker-price-change-statistics
:param symbol:
:type symbol: str
有人能告诉我调用此函数时使用的正确语法吗?
答案 0 :(得分:3)
您的电话应为client.get_symbol_ticker(symbol = 'ETHBTC')
。了解这一点的唯一方法是查看文档字符串:
:param symbol:
:type symbol: str
这告诉您它需要一个名为symbol
的关键字参数。
**params
表示“获取所有关键字参数并将其作为变量params
中的字典返回”。因此,对于上面提供的方法调用,params
将是:
{'symbol': 'ETHBTC'}