fairdesk / fairdesk-api-docs

API docs for fairdesk exchange
5 stars 7 forks source link

[Python] Future place order demo in python #6

Open mossding opened 1 year ago

mossding commented 1 year ago
import hashlib
import hmac
import json
import time

import requests

def send_fairdesk():
    try:
        api_key = '***'
        secret_key = '****'

        baseurl = "https://api.fairdesk.com"
        path = "/api/v1/private/trade/place-order"
        url = baseurl + path

        payload = json.dumps({
            "quantity": "0.001",
            "price": "22601.5",
            "side": "BUY",
            "type": "LIMIT",
            "timeInForce": "GTC",
            "symbol": "btcusdt",
            "clientOrderId": "WEB97h8absNss976",
            "orderRespType": "ACK"
        })

        time_stamp = str((int(time.time() + 60) * 10 ** 3))
        param_str = path + str(time_stamp) + payload
        hash = hmac.new(bytes(secret_key, "utf-8"),
                        param_str.encode("utf-8"), hashlib.sha256)
        signature = hash.hexdigest()

        headers = {
            'x-fairdesk-access-key': api_key,
            'x-fairdesk-request-signature': signature,
            'x-fairdesk-request-expiry': time_stamp,
            'Content-Type': 'application/json'
        }
        response = requests.request("POST", url, headers=headers, data=payload)
        print(response.text)
    except:
        print('error')
        response.text()

if __name__ == '__main__':
    send_fairdesk()
mossding commented 1 year ago

Copy trading place order payload data example

{
    "symbol":"btcusdt",
    "clientOrderId":"WEB_YrnHXO00S_RC",
    "isolated":true,
    "orderRespType":"ACK",
    "positionSide":"EACH",
    "price":"21914",
    "quantity":"0.001",
    "side":"BUY",
    "timeInForce":"GTC",
    "type":"LIMIT",
    "reduceOnly":false,
    "copyTradeFlag":true,
    "leverage":25 
}