標籤:

vn.py發布v1.7 - SpreadTrading

先來說說這篇文章的標題配圖,圖裡的是美國Trading Technologies公司TT交易系統的AutoSpreader功能,目前世界上功能最強大的價差交易軟體之一,一些主要的功能特點包括:

  1. 提供極高自由度的自定義價差,表現在:任意合約、任意市場、任意公式
  2. 每個價差支持最多50條腿,同時允許在最多10條腿上同時報價
  3. 價差配置和交易演算法均運行於交易所內託管的伺服器上,實現超低延時交易
  4. 允許在系統內置演算法規則的基礎上自行開發各種條件細節
  5. 用戶可以使用策略應用來驅動AutoSpreader中的各種價差交易演算法,實現全自動交易
  6. GUI方面包括價差梯度報價顯示和交易界面,將自定義價差和每條腿上的流動性清晰地表現出來

參考AutoSpreader的功能,vn.py項目在v1.7版本中實現了SpreadTrading模塊,整體上將價差交易的整個業務邏輯抽象為三層:價差的計算(行情、持倉)、價差演算法(交易執行)和價差策略(尚未完成),並針對Python的特點以及國內市場的情況作了一些調整:

  1. 允許創建任意合約、任意市場的價差,公式方面目前僅實現了各條腿相加減
  2. 每個價差支持一條主動腿以及任意數量的被動腿,但僅允許在主動腿上報價
  3. 實現標準的價差演算法交易開發模板,並提供了狙擊演算法(SniperAlgo)作為開發示例
  4. 對於所有的交易演算法,用戶只需設置價差交易的目標價格(buy、sell、short、cover)、最大限倉、每輪下單數以及交易方向等配置,演算法即可完成自動交易
  5. 價差策略層則負責基於目前的市場價格情況計算交易信號,來調整對應價差演算法的價格和數量配置(目前尚未完成,計劃v1.8推出)
  6. GUI界面上包括價差的行情和持倉顯示、交易演算法管理以及演算法狀態日誌輸出,不打算提供類似AutoSpreader的梯度工具(對於Python來說,開發這類需要極高響應的界面有一定壓力)

應該說SpreadTrading才初步完成,不足的地方還很多,接下來會根據社區的反饋快速迭代上去。其他的一些更新內容包括CTA策略模板的StopOrder相關推送、CTA策略回測中基於逐日盯市的盈虧統計模式等內容,細節可以直接在這裡看:Github Release。

2017年的開發計劃里比較重要的還剩Web界面(包括Docker實現)和完整的海龜策略(數據處理、策略回測、信號生成、演算法交易)兩個部分,由於海龜需要的數據問題暫時還沒得到解決,在v1.8中就準備先開發Web界面了。

推薦閱讀:

TAG:Python | 交易 | vnpy |