量化交易平臺Quantopian講座(9)——相關系數

相關系數是用來衡量兩個變量間的線性關系,取值范圍為-1~+1。相關系數為正表示變量間正相關(一個增長,另一個也增長),為負則表示負相關(一個增加,則另一個減少),越接近于0則表示關系越弱。
兩個觀測值序列X與Y間的相關系數定義如下:

相關系數定義式

注:其中Cov表示協方差,std表示標準差

相關性 vs 協方差

相關性是協方差標準化后的形式,在部分場合下兩者是可以互換的,但本質上還是不同的。
我們先來看看如何獲取兩個變量X,Y之間的協方差:

示例代碼

可以看到這里通過'[0][1]'來獲取了最終的結果,這里就要引入協方差矩陣了,協方差矩陣包含了任意兩元素的協方差,正對角線上表示一個元素與其自身的協方差(也就是其方差,COV(X,X)=var(X)),據此,相關系數的表達式又可有如下的表示:
相關系數定義式變換

相關系數就是協方差使用X與Y的標準差進行標準化的結果,對應于協方差矩陣,也就存在對應的相關系數矩陣。

示例

接下來我們通過構造數據來觀察下相關系數矩陣:
第一步,我們構造一個存在線性關系的X與Y來看一看

協方差矩陣與相關系數矩陣

注:可以看到最終相關系數矩陣中元素全部為1
繪制出的圖形中所有所有的點都在一條直線上
繪制圖形

第二步,我們在X上加入人為的噪聲數據,噪聲數據我們通過np.random.normal()函數生成一個均值為0,標準差為0.1的正態分布序列,從散點圖上可以看出,已經在線性的基礎上發生了一些偏離
加入噪聲數據后

此時,我們再計算一下相關系數矩陣:
引入噪聲后相關系數矩陣

注:可以看到X與Y的相關系數已經從1下降為0.94
第三步,我們將噪聲數據偏離程度再加大寫,標準差由0.1調整為0.2,再來看看現在的散點圖
加大噪聲數據后散點圖

可以看到線性關系變得更加不明顯,再次來計算下相關系數矩陣
噪聲加強后的相關系數矩陣

可以看到相關系數確實進一步降低了。

相關系數在金融中的應用

一旦我們從序列數據中找出了關聯性,就可以利用其去預測未來的資產價格。通過蘋果公司(AAPL)與半導體制造商泛林(LRCX)股票價格數據,可以得到其之間明顯存在線性關系。

示例代碼

繪制出得散點圖也可看出明顯的線性關系:
Paste_Image.png

同時,在構建投資組合時,通常為了降低組合風險程度,保持組合收益的穩定性,需要引入非關聯性資產。

相關性分析使用限制

相關性分析是金融分析中一個強有力的工具,但是其也有很多使用的限制

  1. 顯著性
    很難嚴格地去斷定相關性是否顯著,尤其是變量不滿足正態分布時。例如上文中蘋果與泛林間相關系數很接近于1,可以認為在選定的時期內兩者的股價線性關聯很強,但是未來是否還會保持這種線性關系,不得而知。我們如果引入標普500ETF的價格數據,可以發現蘋果、泛林都與其有很強的相關性,所以只能說蘋果與泛林間的線性關系略高于普通股票而已。


    引入標普500ETF
  2. 非線性關系
    相關系數可以有效的檢查兩個變量間的線性關系強弱,但是對于非線性關系則不能很好的處理,例如一個變量會隨另一個變量變化,但存在時間上的延遲,這塊就需要專門的延時相關性分析去處理。
    同時,相關性分析對于異常值還非常敏感,一旦出現異常值,會對最終結果造成很大的影響。

本篇就到這里,感謝閱讀,歡迎訂閱:)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容