溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

vn.py進(jìn)行SpreadTrading價(jià)差交易的示例分析

發(fā)布時(shí)間:2021-12-09 16:50:28 來源:億速云 閱讀:371 作者:柒染 欄目:大數(shù)據(jù)

vn.py進(jìn)行SpreadTrading價(jià)差交易的示例分析,相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。

寫在前面

期待很久的vn.py 2.0.7版本上線已經(jīng)有一段時(shí)間了,這次更新最大的變化就是增加了python3版本的SpreadTrading模塊,這樣就使得交易的方式不再只是單向交易,一些基于價(jià)差的策略如配對(duì)交易或者統(tǒng)計(jì)套利的策略的實(shí)現(xiàn)成為可能。因?yàn)槲覍?duì)價(jià)差交易方面很感興趣,所以也有經(jīng)常打聽vn.py的SpreadTrading什么時(shí)候上線,后來也是聽陳曉優(yōu)大佬說過九月中下旬會(huì)上線,所以在這個(gè)模塊上線后就打算對(duì)SpreadTrading模塊進(jìn)行整理了,因?yàn)闀r(shí)間的緣故所以一直拖到現(xiàn)在。vn.py的官方目前也有對(duì)SpreadingTrading進(jìn)行了簡(jiǎn)單介紹,下面就以官方的教程為例進(jìn)行對(duì)這個(gè)模塊進(jìn)行學(xué)習(xí)和使用。

SpreadTrading模塊介紹

這次先不分析源碼,還是以VN Station圖像化界面的操作為例,進(jìn)行SpreadTrading模塊的使用。

首先還是需要啟動(dòng)VN Station,在VN Trader的啟動(dòng)欄中將SpreadTrading模塊進(jìn)行勾選,然后連接CTP,進(jìn)入SpreadTrading的界面。

vn.py進(jìn)行SpreadTrading價(jià)差交易的示例分析

進(jìn)行價(jià)差交易之前,需要進(jìn)行兩步操作,一是創(chuàng)建價(jià)差,也就是要進(jìn)行編輯交易品種、交易數(shù)量、價(jià)格的乘數(shù)等信息;二是創(chuàng)建價(jià)差策略,也就是對(duì)上面創(chuàng)建的價(jià)差進(jìn)行以某種策略進(jìn)行交易。下面就是這兩個(gè)部分:

創(chuàng)建價(jià)差

點(diǎn)擊創(chuàng)建價(jià)差即可以進(jìn)行價(jià)差的創(chuàng)建,下面的例子是以螺紋鋼rb2001和rb2002為例進(jìn)行創(chuàng)建價(jià)差,從而可以實(shí)現(xiàn)一個(gè)簡(jiǎn)單跨期套利。

需要注意的是:

1、主動(dòng)腿以及其他腿的代碼需要按照vn.py中規(guī)定的格式進(jìn)行編輯。

2、主動(dòng)腿指的是當(dāng)價(jià)差滿足條件時(shí),率先發(fā)出的合約,主動(dòng)腿需要在下面的腿1-5內(nèi)。

3、價(jià)格乘數(shù)也就是構(gòu)成價(jià)差公式的對(duì)應(yīng)合約價(jià)格的系數(shù),圖中的價(jià)差即 spread = 1 × rb2001 - 1 × rb2002。

4、交易乘數(shù)也就是執(zhí)行交易時(shí)的手?jǐn)?shù),正數(shù)意味著多頭,負(fù)數(shù)意味著空頭。

vn.py進(jìn)行SpreadTrading價(jià)差交易的示例分析

關(guān)于上面的“腿”的說法沒有接觸過價(jià)差套利的人可能會(huì)比較陌生,因?yàn)樵谧鲆恍﹥r(jià)差套利時(shí),通常需要在相關(guān)的合約上進(jìn)行兩個(gè)方向的多空交易,此時(shí)就可以理解為一個(gè)人的兩條腿,缺少了哪一條都無法正常行走,所以在價(jià)差交易中多空部分分別被稱為腿(或者“邊“)。有時(shí)候,套利的對(duì)象可能會(huì)有多個(gè),如大豆、豆粕和豆油三者,這時(shí)候就會(huì)有多條腿,這也是vnpy在創(chuàng)建價(jià)差時(shí)設(shè)置了下面的腿1-5。

在創(chuàng)建了價(jià)差之后,界面就對(duì)剛剛創(chuàng)建的價(jià)差進(jìn)行了更新:

vn.py進(jìn)行SpreadTrading價(jià)差交易的示例分析

價(jià)差策略

在創(chuàng)建價(jià)差后,就可以創(chuàng)建針對(duì)這些價(jià)差的策略了。通過點(diǎn)擊添加策略,可以將vnpy自帶的基礎(chǔ)價(jià)差策略BasicSpreadStrategy進(jìn)行添加。

vn.py進(jìn)行SpreadTrading價(jià)差交易的示例分析

在創(chuàng)建策略的時(shí)候,需要注意的是:

1、策略名稱可以根據(jù)價(jià)差交易的對(duì)象進(jìn)行設(shè)置,但是spread_name需要和上面創(chuàng)建的價(jià)差保持一致。

2、buy、sell、cover、short價(jià)格分別是對(duì)價(jià)差進(jìn)行相應(yīng)操作的觸發(fā)價(jià)位。

3、max_pos指的是價(jià)差合約的最大持倉量。

4、payup是下單時(shí)的超價(jià)。

5、interval指的是下單到撤單可以等待的時(shí)間,單位是秒。

在創(chuàng)建策略后,界面就更新出類似CTA策略一樣的啟動(dòng)欄,需要做的同樣是初始化和啟動(dòng)的操作,這樣就可以進(jìn)行價(jià)差交易了:

vn.py進(jìn)行SpreadTrading價(jià)差交易的示例分析
總結(jié)和展望

由于SpreadTrading模塊只是剛剛上線,所以功能上并不是很完善,像現(xiàn)在自帶的價(jià)差策略只是一個(gè)簡(jiǎn)單的到價(jià)撮合成交的策略,開平倉的價(jià)格也是需要自己手動(dòng)去設(shè)置,并不能隨著行情的改變而進(jìn)行自適應(yīng)的調(diào)整,所以,想必后期的價(jià)差策略也會(huì)在此方面進(jìn)行改進(jìn)吧。

另一方面,手動(dòng)設(shè)置多空品種的價(jià)格乘數(shù)或者交易乘數(shù)也為交易者提供了一些便利,這樣,我們就可以根據(jù)自己分析得到的一些規(guī)律,如協(xié)整系數(shù)或者回歸系數(shù)等來設(shè)置相應(yīng)的數(shù)值。

除此之外,對(duì)比與CTA策略,SpreadTrading模塊還缺少對(duì)應(yīng)的價(jià)差策略回測(cè)模塊,所以這也將是后期更新的一部分。

SpreadTrading模塊的加入,為vnpy增色不少,后面也會(huì)繼續(xù)對(duì)其源碼進(jìn)行分析,同時(shí)也希望vnpy后續(xù)增添更多亮點(diǎn),為交易者提供更多便利。

看完上述內(nèi)容,你們掌握vn.py進(jìn)行SpreadTrading價(jià)差交易的示例分析的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI