風險

使用 PCA 的股權風險模型

  • November 13, 2019

我正在嘗試使用 PCA 為股票建立一個簡單的風險模型。我注意到,當我的維度大於觀察次數(例如 1000 隻股票但只有 250 天的回報)時,得到的轉換回報系列(由特徵向量或因子回報旋轉的回報)具有非零相關性。

直覺地說,我可以理解為什麼會這樣,因為在 pca 過程中,我從 250x1000 的觀察中估計出 1000x1000 的共變異數矩陣。所以它就像一個不確定的系統。但我不確定發生了什麼。有人可以解釋發生了什麼嗎?

此外,出於風險模型的目的,假設對角共變異數矩陣或使用因子的樣本共變異數更好嗎?

這是一些展示該問題的matlab程式碼:

% More observation than dimensions
Nstock = 10;
Nobs = 11;
obs = randn(Nobs, Nstock);
rot = princomp(obs);
rotobs = obs * rot;
corr(rotobs) % off diagonals are all zero

% More dimensions that observations
Nstock = 10;
Nobs = 9;
obs = randn(Nobs, Nstock);
rot = princomp(obs);
rotobs = obs * rot;
corr(rotobs) % some off diagonals are non-zero

關於您問題的第二部分 - 您遇到了經典的 N>T 問題(N=# 個資產;T=# 個觀察值)。因此,您必須估計的參數數量隨著每個 N 的增加而呈幾何增長,但對於每一天的觀察僅在算術上增長。因為您正在估計共變異數矩陣的對角線部分,所以您必須估計 N*(N+1)/2 個只有 T 個觀測值的條目。

更好的方法是使用收縮估計器,您可以在其中假設證券之間的恆定相關性或恆定共變異數。這種方法的樣本外性能很強。考慮在對角線和样本共變異數矩陣之間混合共變異數矩陣 - 請參閱 Ledoit 和 Wolf 的論文:“親愛的,我縮小了共變異數矩陣”。

引用自:https://quant.stackexchange.com/questions/1020