1. 程式人生 > >okex 加密貨幣自動化交易 Python量化 通過api交易的方法(五)

okex 加密貨幣自動化交易 Python量化 通過api交易的方法(五)

本期實現一個自動化交易的demo,之前一直應用的都是get方法,涉及到交易的就需要post方法傳參

以下是我個人vps上一直在跑的一個程式,作用是幫助我止盈,因為在交易中及時止損還是偶爾能做到,但是因為沒有及時止盈把利潤損失了是我個人很難以接受的。於是寫了該程式持續幫我監測倉位盈利情況,一旦利潤到達33%就掛單賣出。
裡面被xxxx代替的就是我的交易的祕鑰,各位從okex申請到後一定要妥善保管,這個交易用的key除了提幣什麼許可權都有,包括劃轉到不同錢包,去購買某空氣幣等。
我們看官方的api,我們呼叫的是
POST /api/v1/future_position_4fix 逐倉使用者持倉查詢
請求引數和返回值如下
這裡寫圖片描述


我們只用到了盈虧比
下面程式碼就是每分鐘執行一次,檢視是否持有多倉或者空倉,然後再判斷盈虧比是否達到33%,達到的話就下單執行賣出止盈

# coding: utf-8
from client import OkexClient, OkexTradeClient

authClient = OkexTradeClient("xxxxxxxxxxxxxx", "xxxxxxxxxxxx")

symbol = "eos_usd"

res = authClient.status_position_4fix(symbol, "this_week")['holding']
print res
if
len(res): if res[0]['buy_available']: print res[0]['buy_available'] if float(res[0]['buy_profit_lossratio']) >= 33: print res[0]['buy_profit_lossratio'] authClient.place_order(symbol, "this_week", '1', str(res[0]['buy_available']), '3', '1', '20') if res[0
]['sell_available']: if float(res[0]['sell_profit_lossratio']) >= 33: authClient.place_order(symbol, "this_week", '1', str(res[0]['sell_available']), '4', '1', '20')