量化策略構建:均值迴歸模型

「 如今已然衰朽者,未來可能重放異彩。如今備受青睞者,未來卻可能黯然失色。」 當事物發展嚴重偏離其均值時,均值會像萬有引力同樣令其迴歸。若是時間足夠長,萬物都終將回歸於其均值。正所謂:盛極必衰,否極泰來。數據庫


在金融學中,均值迴歸是價格偏離均價或價值必定程度後向其靠攏的規律。本質上,均值迴歸就是哲學思想中所說的『物極必反』。用大白話能夠簡單地歸納爲 「 漲多必跌,跌多必漲 」 。數組


在商品期貨交易中,對於均值迴歸模型的應用場景,選擇跨期價差是很是理想的交易標的。即對不一樣交割期的合約同時進入低買高賣,當合約間價差太高或太低時,相應的賣出或買入價差,等價差迴歸均衡價差後,再平倉從而獲利。測試


均值迴歸模型

如上圖所示:均值迴歸模型的基礎是跨期價差的迴歸和震盪特徵。理論上,在期貨訂價和期現套利的做用下,跨期合約間存在穩定的、可量化的價差關係。3d


當兩個合約的價差偏離均衡價差必定程度後,會有向均衡價差回覆的走勢,那麼,咱們能夠據此構造均值迴歸模型。cdn


FG1809合約 - FG1805合約價差走勢圖blog

合約價差走勢圖

數據來源:quant.laget


MA1809合約 - MA1805合約價差走勢圖it

合約價差走勢圖

數據來源:quant.laio

如上圖所示,價差一般會以其均值爲中心上下波動。也就是說,當價差因爲波動而偏離均值時,它將調整並從新歸於均值。那麼若是咱們若是能捕捉偏離價差的迴歸,就能夠今後獲利。值得注意的是:合約到期月份相差越多,跨期價差波動空間越大。class


但若是考慮到資金的時間成本,等待價差迴歸,也是很不划算的。那麼就須要對價差均值進行從新定義,以簡單均線或自適應均線來代替均值,找到短週期的一種獲利方法。


在這以前,就須要引入標準差(standard deviation)的概念,一般用小寫希臘字母。σ(sigma,讀 「 西格瑪 」)。


通俗地講,一組數據的標準差就是這組數據離均值的廣泛差距。標準差的計算公式爲:

標準差

若是這組數據的波動較大,那麼 σ 相應也會較大;相反的,若是這組數據波動小,那麼 σ 會更接近零。


具體的,用滯後一段時間的價差均線做爲均衡價差,以均線加上若干倍的標準差做爲開倉標準和止損標準,當價差偏離超過若干個標準差後策略開倉,而偏離更多時則止損。


此外,因爲真實套利過程當中,不論是人工下單仍是量化交易,套利交易沒法對價差瞬時的噪聲性的偏離即時反應,因此只能捕捉必定市場內持續的偏離。

套利策略

根據如上模型原理,在判斷套利開平倉條件時,把移動均值 μ 均衡價差,k 爲止損係數,μ + a * σ 與 μ - a * σ 爲套利上下界構造跨期套利策略:


一、當 μ1 > μ + a * σ 時,價差突破套利區間上限,此時認爲價差偏大,則以最近 1 分鐘價格作空價差,即熊市套利策略。

二、當 μ1 > μ + a * σ * k 時,價差突破套利區間上限至更多,此時認爲價差可能會更大,則止損,熊市套利策略結束。

三、當 μ1 < μ - b * σ 時,價差突破套利區間下限,此時認爲價差偏小,則以最近 1 分鐘價格作多價差,即牛市套利策略。

四、當 μ1 < μ - b * σ * k 時,價差突破套利區間下限至更多,此時認爲價差可能會更小,則止損,牛市套利策略結束。


須要提醒的是,在不一樣市場環境下跨期套利價差的分佈特色不一樣,使用的跨期套利上下閾值也不一樣,a 與 b 越大,價差波動區間越大,開倉條件越苛刻,套利次數減少,可是單次套利的獲利空間增長。


價差成交次數分佈圖

策略圖表

數據來源:quant.la

反之 a 與 b 越小,雖然增長了套利實施的次數,但交易成本也隨之增長,單次套利收益空間縮小。


接下來,咱們利用 BotVS 量化交易平臺進一步操做,來實現一個均值迴歸模型的實例,從而驗證個人們理論,是否能發現賺錢的機會。


數據準備:

咱們直接使用發明者量化數據庫數據,代碼以下:

發明者量化數據庫數據

第一行:調用 K 線數組;

第二行:過濾 K 線數組長度;

第六行:調用 talib 庫 BOLL 指標;

第七行:定義套利區間上限;

第八行:定義均值;

第九行:定義套利區間下限;

十行如下:計算實時價差,及其餘方便後續的數據處理。


策略邏輯代碼:

策略邏輯代碼


利用交易信號數據,進行模擬測試。咱們設定交易參數和規則:

  • 本金:1 萬

  • 合約:MA

  • K 線週期:1 分鐘

  • 時間跨度:3 個月

  • 手續費爲 5 元

  • 數據類型:模擬級 Tick


績效以下:

策略圖表

策略圖表

基於上述的均值迴歸模型,咱們還能夠分別從開平倉方式兩個角度,經過均值斜率條件,來動態的調整套利上限、下限閾值。


迴歸模型

如上圖,以熊市套利爲例,咱們經過計算降低中的均值斜率:

z = ( y2 - y1 ) / ( x2 - x1 )


調整後的套利上限、下限:

μ + a * σ * ( z + 1 ]()

μ - a * σ * ( z + 1 )


相比以前的模型的開平倉方式,調整後的策略模型,能夠在套利上、下閾值上更具備靈活性。

開平倉方式


在不一樣的市場條件下,經過均值斜率動態的調整套利上限、下限閾值,能夠是模型更加適應當前的市場狀態。下降因價差大幅波動,形成的止損。而且單次增長跨期套利的獲利空間。


策略領取在【寬客在線

相關文章
相關標籤/搜索