R
使用具有不完整收益集的 fPortfolio 計算有效邊界
我想使用過去 10 年的回報來計算一組 140 項資產的有效邊界。然而,其中一些資產是最近才出現的,所以對於一些資產,我有整整 10 年的回報,但對於其他資產,我只有過去 3 年的回報。
如果我使用所有收益都可用的收益尾部,我可以計算有效邊界(如http://www.finance-r.com/s/efficient_frontier_fPortfolio/complete/中所述)。但我想在可用的情況下使用全套退貨。
目前,當我輸入帶有 NA 的數據集時,fPortfolio 會引發異常。我將如何達到我的目標?我懷疑我必須修改 fPortfolio 源。
我不是 fPortfolio 的特別粉絲。我的第一個想法是估計一個解釋缺失數據的均值和共變異數矩陣(應該在這個站點或其他地方多次討論)並通過它。但是,查看手冊,似乎相關功能只需要時間序列數據。基於該限制,您有幾個選擇
- 獲取fPortfolio源碼,重新編寫相關函式取均值和共變異數
- 編寫您自己的投資組合優化函式,與#1 做同樣的事情。真的沒那麼難。
- 更複雜的方法可能是使用多重插補。在這種情況下,您將模擬時間序列的缺失數據,然後將完整的數據集傳遞給 fPortfolio 函式。重複多次並取權重的平均值(在一些老化之後)。