掛單期現(xiàn)對(duì)沖策略設(shè)計(jì)研究、范例
一直以來期現(xiàn)對(duì)沖一般都設(shè)計(jì)為檢測(cè)差價(jià),當(dāng)符合差價(jià)時(shí)吃單對(duì)沖。那是否能設(shè)計(jì)為掛單對(duì)沖呢?答案是肯定的。今天就給讀者帶來一種掛單對(duì)沖的設(shè)計(jì)思路和代碼原型。
掛單對(duì)沖思路
同一種或者同一類標(biāo)的物的不同市場(chǎng),當(dāng)兩個(gè)市場(chǎng)盤口買賣單的差別較大時(shí)就產(chǎn)生了對(duì)沖的機(jī)會(huì)。一般我們會(huì)吃掉滿足差價(jià)的盤口掛單進(jìn)而持有對(duì)沖倉位。所以對(duì)沖的目的是有2個(gè),第一要對(duì)沖下單持倉,第二是要最大程度確保一買一賣的差價(jià)符合我們的期望。掛單交易在這方面的好處就是手續(xù)費(fèi)率更低。缺點(diǎn)就是不容易成交、容易單腿成交。
那么我們?cè)O(shè)計(jì)交易思路為在A市場(chǎng)訂單薄買單中掛買入單,在B市場(chǎng)訂單薄賣單中掛賣出單。然后檢測(cè)我們的賬號(hào)掛單,對(duì)檢測(cè)到的掛單成交做下一步處理。例如檢測(cè)到掛單發(fā)生變化就立即平衡期現(xiàn)對(duì)沖倉位,對(duì)于期現(xiàn)持倉中溢出的頭寸進(jìn)行補(bǔ)倉或者平倉操作。根據(jù)對(duì)沖持倉量的增加進(jìn)而調(diào)整下一次的盤口中掛單時(shí)相對(duì)于盤口第一檔的距離,逐步對(duì)沖拿到更大的差價(jià)。

代碼設(shè)計(jì)
注釋直接寫在代碼里了,該范例僅僅用于參考設(shè)計(jì),只在OKEX V5模擬盤上簡(jiǎn)單測(cè)試過。該例子并不是完善的策略,請(qǐng)僅供參考使用。

回測(cè)分析

可以看到掛單、撤單非常頻繁。從回測(cè)系統(tǒng)統(tǒng)計(jì)的收益上來看,期貨交易所賬戶虧損了-0.01666個(gè)儀態(tài),現(xiàn)貨交易所盈利了842.23758個(gè)U。按回測(cè)結(jié)束時(shí)儀態(tài)現(xiàn)貨價(jià)格4252U,-0.01666 * 4252 = -70.83832000000001
。加上現(xiàn)貨盈利總體是盈利的。
不過這僅僅是回測(cè),實(shí)際當(dāng)中肯定還要解決更多的細(xì)節(jié)問題。