python - 为什么 HITBTC V2 REST API 返回 2001 错误(不正确的对)?
问题描述
我正在尝试使用 HITBTC API 的 V2 下订单(此处的文档)。我正在尝试通过 POST 请求下订单,并且一切都很好授权,但是在下订单时,以下函数返回服务器发回的内容,即以下 JSON:
{'error': {'code': 2001, 'message': 'Symbol not found', 'description': 'Try get /api/2/public/symbol, to get list of all available symbols.'}}
我的问题在于,我传递了我希望以该符号调用指定的格式订购的对,该符号返回 JSON,如下所示:
{"id":"NOAHBTC","baseCurrency":"NOAH","quoteCurrency":"BTC","quantityIncrement":"1000","tickSize":"0.000000001","takeLiquidityRate":"0.001","provideLiquidityRate":"-0.0001","feeCurrency":"BTC"}
我正在传递一个格式与“id”格式完全相同的字符串。
def HITBTCorder(pair, side, quantity, price, session):
'''
Creates an order on HITBTC, returns status (filled or not filled)
Side: 'buy' or 'sell'
'''
orderData = json.dumps({'symbol': pair, 'side': side, 'quantity': quantity, 'price': price})
print(orderData)
response = session.post('https://api.hitbtc.com/api/2/order', data = orderData)
responseDict = json.loads(response.text)
return responseDict
我正在运行的代码如下所示:
session = requests.session()
session.auth = ('APIPUBLIC', 'APISECRET')
response = trade.HITBTCorder("NOAHBTC", 'buy', 1000, tickers.HITBTCprice("NOAHBTC"), session)
知道如何让它工作吗?
解决方案
你可以更换
orderData = json.dumps({'symbol': pair, 'side': side, 'quantity': quantity, 'price': price})
至:
orderData = json.dumps({'symbol': pair.lower(), 'side': side, 'quantity': quantity, 'price': price})
因为symbol
需要以小写形式发送。
推荐阅读
- c# - 如何在 C# 中使用 Mongo 的 Aggregate 框架在列表字段中累积项目?
- c# - C# DataGridView 添加数据不适用于特殊字符列标题
- rust - Rust - shared_memory crate 返回 MapOpenFailed(2) - 怎么办
- pytest - 使用 pytest 测试 Django 干净表单方法的正确方法
- python - OpenCV相机捕捉到没有光
- c++ - 是否有任何用于移动设备的 C++ 图形库?
- flutter - Flutter Cupertino 开关
- node.js - 是否有用于 Nest.js 的 Open API 代码生成器的模块
- python - 将股票指标添加到 Pandas DataFrame - ValueError:系列的真值不明确。使用 a.empty、a.bool()、a.item()、a.any() 或
- python - 如何从 restful api django 获取详细信息?