Sample code for 30+ languages & platforms
Chilkat2-Python

Bitfinex v2 REST Submit Order

See more Bitfinex v2 REST Examples

Submit an order.

Chilkat Chilkat2-Python Downloads

Chilkat2-Python
import sys
import chilkat2

success = False

# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

http = chilkat2.Http()

crypt = chilkat2.Crypt2()

apiPath = "v2/auth/w/order/submit"
apiKey = "MY_API_KEY"
apiSecret = "MY_API_SECRET"

dt = chilkat2.CkDateTime()
dt.SetFromCurrentSystemTime()

sbNonce = chilkat2.StringBuilder()
sbNonce.Append(dt.GetAsUnixTimeStr(False))
sbNonce.Append("000")
nonce = sbNonce.GetAsString()

json = chilkat2.JsonObject()
json.UpdateString("type","LIMIT")
json.UpdateString("symbol","tBTCUSD")
json.UpdateString("price","15")
json.UpdateString("amount","0.001")
json.UpdateInt("flags",0)
body = json.Emit()

sbSignature = chilkat2.StringBuilder()
sbSignature.Append("/api/")
sbSignature.Append(apiPath)
sbSignature.Append(nonce)
sbSignature.Append(body)

crypt.EncodingMode = "hex_lower"
crypt.HashAlgorithm = "sha384"
crypt.MacAlgorithm = "hmac"
crypt.SetMacKeyString(apiSecret)

sig = crypt.MacStringENC(sbSignature.GetAsString())

http.SetRequestHeader("bfx-apikey",apiKey)
http.SetRequestHeader("bfx-signature",sig)
http.SetRequestHeader("bfx-nonce",nonce)

resp = chilkat2.HttpResponse()
success = http.HttpStr("POST","https://api.bitfinex.com/v2/auth/w/order/submit",body,"utf-8","application/json",resp)
if (success == False):
    print(http.LastErrorText)
    sys.exit()

print("Response body:")
print(resp.BodyStr)