Quant Zone 教學:用 FTX Quant Zone 跑無限網格交易

Benson Sun
7 min readSep 30, 2021

最近有很多人問我能不能用 Quant Zone 跑網格,答案是可以的,只是 Quant Zone 不適合跑太多格的網格,因為每一格都要手動設定,很麻煩。但 Quant Zone 很適合跑會自動 rebalance 的無限網格。

具體邏輯是怎麼樣的呢?

假設要做 ETH 無限網格,把資金分成2份,一半是USD,一半拿來買 ETH,如果 ETH 上漲了,ETH 佔整體部位就會超過50%,這時候賣掉一點幣,讓 ETH 部位保持在50%。相反地,如果 ETH 下跌了,也會用 USD 買一點 ETH,讓 ETH 部位維持在50%。

這種下跌自動抄底,上漲自動賣幣,無需設定區間的網格,就類似在去中心化交易所提供 50/50池子的流動性,很接近 Pionex 的無限網格的概念。

PS:如果還沒註冊 FTX,歡迎用我的推薦連結(https://ftx.com/#a=BensonTW)註冊,有5%手續費折扣

教學步驟

Step1:到錢包,點選右邊「+」創建子帳號

Step2:隨便取個名字,譬如 ETH-Grid,然後點選創建子帳戶

Step3:切換到該子帳號,然後選擇「量化空間」

Step4:選擇「建立新策略」

Step5:策略名稱可以隨意設定,我是設定「Set Parameter」,條件填入 true

接下來要設定五個變量,我們先設定 ETH%跟USD%,這兩個變量都設定 0.5,這裡的意思是你想要把兩邊部位平衡在50%。

然後再設定兩個變量,命名為 ETH_Current%,這個變量是用來計算 ETH 的價值佔整體部位的比例,變量設定如下:

price("ETH/USD")*balance("ETH")/(price("ETH/USD")*balance("ETH")+balance("USD"))

第二個變量命名為 USD_Current%,這個變量是用來計算 USD 佔整體部位的比例,變量設定如下:

balance("USD")/(price("ETH/USD")*balance("ETH")+balance("USD"))

再來設定最後一個變量,命名為 rebalance%,設定為0.01,這個變量的意思是部位要偏離多少才會開始再平衡部位,設定0.01就是1%。

接下來按下「保存草稿」

Step6:再創建另一個策略,命名為 Buy ETH,條件設定為:

get_variable("ETH_Current%")<get_variable("ETH%")-get_variable("rebalance%")

這裡的意思是當目前 ETH 佔整體部位的%,小於平衡目標%且偏離 rebalance%時,才會觸發買入的條件(舉例: ETH 目標是50%,掉到49%時才會開始買)

然後設定執行邏輯,市價委託買入 ETH/USD,訂單數量設定為:

balance("USD")/price("ETH/USD")/100

這個意思是觸發再平衡條件時,就用USD的百分之一購買ETH,會一直買到部位平衡後停手。

然後一樣按保存草稿。

Step7:再創建另一個策略,命名為 Sell ETH,條件設定為:

get_variable("ETH_Current%")>get_variable("ETH%")+get_variable("rebalance%")

這裡的意思是當目前 ETH 佔整體部位的%,大於平衡目標%且偏離 rebalance%時,才會觸發賣出的條件(舉例: ETH 目標是50%,升到51%時才會開始賣)

然後設定執行邏輯,市價委託賣出 ETH/USD,訂單數量設定為:

balance("ETH")/100

這個意思是觸發再平衡條件時,就賣出ETH數量的百分之一,會一直賣到部位平衡後停手。

然後一樣按保存草稿。

Step8:

到管理子帳號的頁面,把錢丟進剛剛設定好的子帳號。

然後回到 Quant Zone 頁面,運行所有的策略。

丟完錢、運行完所有策略之後就可以放著不管了,沒事可以來交易紀錄看機器人運行的狀況:

如果要看賺多少錢,直接比較當初丟進去的錢即可,筆者丟了 1000 USD,目前帳號餘額是 1013.18 USD,代表賺了 13.18 USD。

做到這一步就大功告成啦!

如果要停止運行機器人,把錢拿回來的話,先去量化空間把所有策略暫停,再把錢移回主帳號即可。

FAQ

Q1:如果有質押 FTT,想用掛單的方式省手續費,該怎麼做?

把市價委託改成限價委託即可,邏輯設定如下:

(勾選 Post only 可以確保是限價掛單,不會市價吃單)

Q2:放了一陣子,為什麼不會跑?

如果錢放太少,連最小單位都買不起的話就跑不起來。

以 ETH 來說最小單位是 0.001,如果你的 USD 除以 100 之後買不起 0.001 ETH,那就會一直噴錯誤,解法是放多一點錢或是不要把錢拆這麼細,可以改成分成50份之類的。

Q3:為什麼會出現 float division by zero in execution 錯誤?

運行策略之前要放錢到子帳號,不然就會出現這個錯誤。

Q4:為什麼不把 rebalance% 設定小一點?

網格不是說越容易觸發賺越多,rebalance% 設定太小的話會造成交易過度頻繁,利潤會被手續費吃掉,小波動上下嚕很爽沒錯,但遇到大波動容易太早買進或賣飛,賺的錢會比正常 rebalance% 的設定還少。

1% 是我覺得 ETH 網格合理的 rebalance%,大家可以根據幣種的波動程度自行設定參數。

如果你對投資加密貨幣有興趣,歡迎追蹤筆者的 Telegram 頻道,我會分享對行情的看法以及市場資訊。

--

--