繁体   English   中英

在python下单kucoin API

[英]make an order kucoin API in python

import requests, json, time


url = 'https://api.kucoin.com/api/v1/orders'

headers = {
    "KC-API-KEY": '',
    "KC-API-PASSPHRASE": '',
    "clientOid": "AAA",
    "side": "sell",
    "symbol": "BTC-USDT",
    "type": "market",
    "size": "0.001",
    
}
response = requests.post(url, headers=headers)
print(response.status_code)
print(response.json())

我正在尝试下订单,但它不起作用。 我缺少一些参数吗?

错误:

{'code': '400001', 'msg': 'Please check the header of your request for KC-API-KEY, KC-API-SIGN, KC-API-TIMESTAMP, KC-API-PASSPHRASE'}

你是否考虑过使用像 Python-kucoin 这样的包装库? https://python-kucoin.readthedocs.io/en/stable/index.html

它真的很棒,肯定会帮助你。 看看文档

from kucoin.client import Client

api_key = '<api_key>'
api_secret = '<api_secret>'
api_passphrase = '<api_passphrase>'

client = Client(api_key, api_secret, api_passphrase)

# place a market buy order
order = client.create_market_order('BTC-USDT', Client.SIDE_BUY, size=0.001)

根据官方文档,所有私有请求必须包含以下标头:

  • KC-API-KEY
  • KC-API-SIGN
  • KC-API-TIMESTAMP
  • KC-API-密码
  • KC-API-版本

这是下订单限制的端点示例:

import base64, hmac, hashlib, json

# constants
API_KEY = "YOUR_API_KEY"
API_SECRET = "YOUR_API_SECRET"
API_PASSPHRASE = "YOUR_API_PASSPHRASE"

url = "https://api.kucoin.com/api/v1/orders"

now = int(time.time() * 1000)

data = {"clientOid": "AAA", "side": "sell", "symbol": "BTC-USDT", "type": "market", "size": "0.001"}
data_json = json.dumps(data)

str_to_sign = str(now) + 'POST' + '/api/v1/orders' + data_json

signature = base64.b64encode(hmac.new(API_SECRET.encode(
    'utf-8'), str_to_sign.encode('utf-8'), hashlib.sha256).digest())

passphrase = base64.b64encode(hmac.new(API_SECRET.encode(
    'utf-8'), API_PASSPHRASE.encode('utf-8'), hashlib.sha256).digest())

headers = {
    "KC-API-SIGN": signature,
    "KC-API-TIMESTAMP": str(now),
    "KC-API-KEY": API_KEY,
    "KC-API-PASSPHRASE": passphrase,
    "KC-API-KEY-VERSION": "2",
    "Content-Type": "application/json"
}

try:
    res = requests.post(
        url, headers=headers, data=data_json).json()

    print(res)

except Exception as err:
    print(err)

希望它会有所帮助。

尝试从以下位置删除空格:data = {"clientOid": "AAA", "side": "sell", "symbol": "BTC-USDT", "type": "market", "size": "0.001" }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM