【问题标题】:FTX API to create orderFTX API 创建订单
【发布时间】:2022-08-18 01:51:24
【问题描述】:

它显示错误 {\"success\":false,\"error\":\"Missing parameter market\"}

import time
import hmac
from requests import Request
import requests
import json
api_key=\'\'
api_secret=\'\'
payload = json.dumps({
    \"market\": \'XRP/USDT\',
    \"side\": \'BUY\',
    \"price\": 0.7,
    \"size\": 1,
    \"type\": \"limit\",
    \"reduceOnly\": False,
    \"ioc\": False,
    \"postOnly\": False,
    \"clientId\": None
    })
ts = int(time.time() * 1000)
request = Request(\'POST\', \'https://ftx.com/api/orders\')
prepared = request.prepare()
signature_payload = f\'{ts}{prepared.method}{prepared.path_url}{payload}\'.encode()
print(signature_payload)
signature = hmac.new(api_secret.encode(), signature_payload, \'sha256\').hexdigest()
prepared.headers[\'FTX-KEY\'] = api_key
prepared.headers[\'FTX-SIGN\'] = signature
prepared.headers[\'FTX-TS\'] = str(ts)
url=\'https://ftx.com/api/orders\'
response = requests.request(\"POST\", url,headers=prepared.headers,data=payload)
print(response.text)

你能推荐如何解决吗?我尝试了很多方法,但它不起作用

    标签: python api


    【解决方案1】:

    你可以试试

    prepared.headers['Content-Type'] = 'application/json'
    

    【讨论】:

      【解决方案2】:

      您好,我知道这个问题有点老了,但也许其他人需要答案。 我准备好了,它对我有用。

      from requests import Request, Session
      import hmac
      import json
      import time
      from pprint import pprint
      
      
      API_KEY = ""
      API_SECRET = ""
      SUBACCOUNT = ""
      
      
      def place_order(market, side, price, size, order_type, reduceOnly, postOnly, ioc=False):
          endpoint = "https://ftx.com/api/orders"
      
          ts = int(time.time() * 1000)
          s = Session()
          data = json.dumps({
            "market": market,
            "side": side,
            "price": price,
            "type": order_type,
            "size": size,
            "reduceOnly": reduceOnly,
            "ioc": ioc,
            "postOnly": postOnly
          })
          request = Request("POST", endpoint, data=data)
          prepared = request.prepare()
          signature_payload = f"{ts}{prepared.method}{prepared.path_url}{data}".encode()
          signature = hmac.new(API_SECRET.encode(), signature_payload, "sha256").hexdigest()
      
          prepared.headers["FTX-KEY"] = API_KEY
          prepared.headers["FTX-SIGN"] = signature
          prepared.headers["FTX-TS"] = str(ts)
          prepared.headers["FTX-SUBACCOUNT"] = SUBACCOUNT
      
          response = s.send(prepared)
          data = response.json()
          pprint(data)
          return data
      

      【讨论】:

        猜你喜欢
        • 2022-06-11
        • 1970-01-01
        • 1970-01-01
        • 2020-10-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-03-12
        • 2021-11-03
        相关资源
        最近更新 更多