優化
具有“nan”值的變異數矩陣
我正在嘗試使用幾個隨機權重優化一個簡單的投資組合併選擇最好的。當資產數量很大時,我會得到一個帶有“nan”值的共變異數矩陣,因為某些資產對沒有共同的交易日。
我應該如何對待’nan’值?
- 您估計的共變異數矩陣包括
nan
條目。- 目前的Pandas.cov 函式 已經盡最大努力根據可用數據通過忽略 nan/null 值來估計共變異數。
這意味著要獲得
nan
共變異數估計值,您必須至少有兩個具有共同零時間段的返回序列!你的問題不恰當
- 荷蘭東印度公司(1602-1799)和Google(2004-現在)的回報之間有什麼相關性?這是一個無法回答且毫無意義的問題。
- 如果你的投資組合優化器說放 $ \frac{1}{2} $ 您在荷蘭東印度公司的投資組合和 $ \frac{1}{2} $ 在Google,你打算怎麼做?
前進的方向
如果您要使用進入和離開樣本的證券,您需要做一些比估計一些無條件共變異數矩陣更複雜的事情,
sigma = mydata.cov()
並使用它來選擇投資組合權重。
- 如果要提出時間的投資組合權重 $ t $ , 將不能投資的證券包括在內是沒有意義的 $ t $ !
- 你需要一些概念 $ \Sigma_t $ ,為時間設計的估計 $ t $ .
而用
nan
0 代替也不是明智之舉!平均共變異數項不為零。存在系統性總風險,這表現為大於零的共變異數項。