pair trading(cointegration), 2022-09-02

(2022.09.02 Fri)
pair trading可以使用多種方法實(shí)現(xiàn)交易驱富,包括

  • 最小化偏差平方和法則(最小距離法)(Gatev,Goetzmann ,Rouwenhorst(1999))
  • 協(xié)整理論方法(Vidyamurthy(2004))
  • 隨機(jī)價(jià)差模型方法(Elliott,Van Der Hoek,Malcolm(2005))

這里列舉整理了協(xié)整的方法屏箍。

Co-integration

首先了解平穩(wěn)性绘梦。

平穩(wěn)性(stationarity)是一個(gè)序列在時(shí)間推移中保持穩(wěn)定不變的性質(zhì),也就是它的均值和方差保持不變铣除,這樣可以方便地在序列上應(yīng)用一些統(tǒng)計(jì)技術(shù)谚咬。

一個(gè)平穩(wěn)的序列是圍繞著一個(gè)長期均值在波動(dòng)的序列,非平穩(wěn)序列的長期均值是變動(dòng)的尚粘。

舉一個(gè)應(yīng)用的例子择卦,如果某個(gè)資產(chǎn)的價(jià)格序列(或者兩個(gè)序列的價(jià)差)是平穩(wěn)的,那么當(dāng)它在偏離了其均值后郎嫁,人們可以期待價(jià)格會(huì)在未來的某一個(gè)時(shí)間回歸這個(gè)均值秉继。我們可以借助這個(gè)性質(zhì)進(jìn)行投資從而獲利。假設(shè)一只股票的長期均值是9元泽铛,而現(xiàn)在的價(jià)值是8元尚辑。如果經(jīng)過檢驗(yàn),我們認(rèn)為這個(gè)股票的歷史序列具有平穩(wěn)的性質(zhì)盔腔,并且假設(shè)這個(gè)平穩(wěn)性是能保持的杠茬,就可以買入這只股票,等待未來它的價(jià)格回歸9元弛随,從而獲得1元的利潤瓢喉。

現(xiàn)實(shí)中,絕大多數(shù)的股票價(jià)格都是非平穩(wěn)的舀透。想利用平穩(wěn)特性獲利就需要協(xié)整關(guān)系(cointegration)栓票。如果兩組序列是非平穩(wěn)的,但它們的線性組合可以得到一個(gè)平穩(wěn)序列愕够,則這兩組時(shí)間序列數(shù)據(jù)具有協(xié)整性走贪,我們同樣可以把統(tǒng)計(jì)性質(zhì)用到這個(gè)組合的序列上來。之所以會(huì)出現(xiàn)價(jià)差平穩(wěn)的特性惑芭,是因?yàn)槟承┙鹑跁r(shí)間序列受到了共同經(jīng)濟(jì)因素影響坠狡,表現(xiàn)出趨同性。

需要注意强衡,協(xié)整關(guān)系并不是相關(guān)關(guān)系(correlation)擦秽。

舉個(gè)例子,兩組時(shí)間序列數(shù)據(jù)(股價(jià))未必是平穩(wěn)的漩勤,但它們的價(jià)差(線性組合)可能是平穩(wěn)的,則我們可以根據(jù)這個(gè)差的平穩(wěn)性進(jìn)行投資獲利:當(dāng)兩只股票的價(jià)差過大缩搅,根據(jù)平穩(wěn)性我們預(yù)期價(jià)差會(huì)收斂越败,因此買入低價(jià)的股票,賣空高價(jià)的股票硼瓣,等待價(jià)格回歸的時(shí)候進(jìn)行反向操作從而獲利究飞。

平穩(wěn)性檢驗(yàn)

(就是取兩個(gè)標(biāo)的置谦,然后相關(guān)性檢驗(yàn)->序列單整檢驗(yàn)->同階單整的進(jìn)行協(xié)整檢驗(yàn)->取相關(guān)性系數(shù)、均值和標(biāo)準(zhǔn)差計(jì)算兩只標(biāo)的目前的價(jià)差值->價(jià)差值符合開倉平倉條件的亿傅,做相應(yīng)操作媒峡。)

平穩(wěn)性可以分為嚴(yán)平穩(wěn)(strictly stationary)和弱平穩(wěn)(或叫協(xié)方差平穩(wěn),covariance stationary等)兩種葵擎。嚴(yán)平穩(wěn)是指一個(gè)序列始終具有不變的分布函數(shù)谅阿,而弱平穩(wěn)則是指具序列有不變的常量的描述性統(tǒng)計(jì)量。嚴(yán)平穩(wěn)和弱平穩(wěn)性質(zhì)互不包含酬滤;但如果一個(gè)嚴(yán)平穩(wěn)序列的方差是有限的签餐,那么它是弱平穩(wěn)的。我們一般所說的平穩(wěn)都是指弱平穩(wěn)盯串。在時(shí)間序列分析中氯檐,通常通過單位根檢驗(yàn)(unit root test)來判斷一個(gè)過程是否是弱平穩(wěn)。平穩(wěn)的時(shí)間序列應(yīng)該會(huì)在某固定值附近隨機(jī)震蕩体捏,該現(xiàn)象稱為均值回歸(mean-reversion)冠摄。

一個(gè)常見的單位根檢驗(yàn)方法是Dickey-Fuller test,大致思路如下:假設(shè)被檢測的時(shí)間序列Y_t滿足自回歸模型Y_t=αY_t?1+ε_(tái)tY_t=αY_t?1+ε_(tái)t几缭,其中α為回歸系數(shù)河泳,ε_(tái)t為噪聲的隨機(jī)變量。若經(jīng)過檢驗(yàn)奏司,發(fā)現(xiàn)α<1乔询,則可以肯定序列是平穩(wěn)的。在Dickey Fuller Test的基礎(chǔ)上韵洋,還有衍生出來的augmented Dickey-Fuller test竿刁,考慮了序列的滯后性。

ADF檢測平穩(wěn)性代碼搪缨。

from statsmodels.tsa.stattools import adfuller
import numpy as np
import pandas as pd
 
adf_test = adfuller(timesequence, autolag='AIC')
adf_test_output = pd.Series(dftest[0:4],index=['Test Statistic','p-value','#Lags Used','Number of Observations Used'])
  
for key,value in adf_test[4].items():
  adf_test_output['Critical Value (%s)' % key] = value
  print(adf_test_output)

這里的p值越小食拜,協(xié)整關(guān)系越強(qiáng)。

from statsmodels.tsa.stattools import coint 
_, pvalue, _ = coint(timesequence1, timesequence2) 

實(shí)例

import numpy as np
import pandas as pd
import seaborn
import statsmodels
import matplotlib.pyplot as plt
from statsmodels.tsa.stattools import coint

構(gòu)造兩組數(shù)據(jù)副编,每組數(shù)據(jù)長度為100负甸。第一組數(shù)據(jù)為100加一個(gè)向下趨勢項(xiàng)再加一個(gè)標(biāo)準(zhǔn)正態(tài)分布。第二組數(shù)據(jù)在第一組數(shù)據(jù)的基礎(chǔ)上加30痹届,再加一個(gè)額外的標(biāo)準(zhǔn)正態(tài)分布呻待。有:
X_t=100+γ_t+ε_(tái)t
Y_t=X_t+30+μ_t
其中γ_t為趨勢項(xiàng),ε_(tái)tμ_t為無相關(guān)性的正態(tài)隨機(jī)變量队腐。

np.random.seed(100)
x = np.random.normal(0, 1, 500)
y = np.random.normal(0, 1, 500)
X = pd.Series(np.cumsum(x)) + 50
Y = X + y + 10
for i in range(500):
    X[i] = X[i] - i/10
    Y[i] = Y[i] - i/10
plt.plot(X); plt.plot(Y);
plt.grid(1)
plt.xlabel("Time"); plt.ylabel("Price");
plt.legend(["X", "Y"]);
price trend

價(jià)格走勢不穩(wěn)定蚕捉,但是其價(jià)差穩(wěn)定,如圖

plt.plot(Y-X);
plt.axhline((Y-X).mean(), color="red", linestyle="--");
plt.grid(1)
plt.xlabel("Time"); plt.ylabel("Price");
plt.legend(["Y-X", "Mean"]);
pair trading: price gap

一個(gè)可能的交易策略柴淘,在不允許做空的市場中
當(dāng)價(jià)差序列為mean + \sigma時(shí):賣高價(jià)迫淹,買低價(jià)秘通。
當(dāng)價(jià)差序列為mean - \sigma時(shí):買高價(jià),賣低價(jià)敛熬。

其中\sigma的系數(shù)可適當(dāng)調(diào)整肺稀。

Reference

1 【量化課堂】協(xié)整的直觀認(rèn)識(shí),聚寬
2 配對(duì)交易应民,倔強(qiáng)的小DB话原,知乎
3 量化策略原理:基于協(xié)整理論的配對(duì)交易,蘇什么來著瑞妇,知乎

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末稿静,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子辕狰,更是在濱河造成了極大的恐慌改备,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,490評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蔓倍,死亡現(xiàn)場離奇詭異悬钳,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)偶翅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門默勾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人聚谁,你說我怎么就攤上這事母剥。” “怎么了形导?”我有些...
    開封第一講書人閱讀 165,830評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵环疼,是天一觀的道長。 經(jīng)常有香客問我朵耕,道長炫隶,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,957評(píng)論 1 295
  • 正文 為了忘掉前任阎曹,我火速辦了婚禮伪阶,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘处嫌。我一直安慰自己栅贴,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評(píng)論 6 393
  • 文/花漫 我一把揭開白布熏迹。 她就那樣靜靜地躺著筹误,像睡著了一般。 火紅的嫁衣襯著肌膚如雪癣缅。 梳的紋絲不亂的頭發(fā)上厨剪,一...
    開封第一講書人閱讀 51,754評(píng)論 1 307
  • 那天,我揣著相機(jī)與錄音友存,去河邊找鬼祷膳。 笑死,一個(gè)胖子當(dāng)著我的面吹牛屡立,可吹牛的內(nèi)容都是我干的直晨。 我是一名探鬼主播,決...
    沈念sama閱讀 40,464評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼膨俐,長吁一口氣:“原來是場噩夢啊……” “哼勇皇!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起焚刺,我...
    開封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤敛摘,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后乳愉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體兄淫,經(jīng)...
    沈念sama閱讀 45,847評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評(píng)論 3 338
  • 正文 我和宋清朗相戀三年蔓姚,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了捕虽。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,137評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡坡脐,死狀恐怖泄私,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情备闲,我是刑警寧澤晌端,帶...
    沈念sama閱讀 35,819評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站浅役,受9級(jí)特大地震影響斩松,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜觉既,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評(píng)論 3 331
  • 文/蒙蒙 一惧盹、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧瞪讼,春花似錦钧椰、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至希柿,卻和暖如春诊沪,著一層夾襖步出監(jiān)牢的瞬間养筒,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評(píng)論 1 272
  • 我被黑心中介騙來泰國打工端姚, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留晕粪,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,409評(píng)論 3 373
  • 正文 我出身青樓渐裸,卻偏偏與公主長得像巫湘,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子昏鹃,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容