首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R- Portfolio Analytics优化不起作用

R- Portfolio Analytics优化不起作用
EN

Stack Overflow用户
提问于 2020-10-05 21:54:55
回答 1查看 247关注 0票数 0

我目前正在创建一个最小方差投资组合,并决定使用PortfolioAnalytics包的函数optimize.portfolio。不幸的是,在提取权重时,它们都是NA,即使我的返回值中没有任何NA值,这将是(从我的角度来看)导致结果权重为NA的唯一原因。我的数据集由多个资产(+5000)组成,每个资产有60个观察值(每月)。

代码语言:javascript
复制
   library(PortfolioAnalytics)
   library(ROI)  
   #index returns is an xts object consisting of 3800 stock Ids(columns) and 60 observations in
   # monthly interval: To exemplifiy my problem, I set all values in index_returns to 1, to make 
   # sure that no NA values exist.
   index_returns
   any(is.na(index_returns)) # --> evaluates to FALSE
  port_spec <- portfolio.spec(assets =colnames(index_returns) )
  
  # Add a full investment constraint such that the weights sum to 1
  port_spec <- add.constraint(portfolio = port_spec, type = "full_investment")
  
  # Add a long only constraint such that the weight of an asset is between 0 and 1
  port_spec <- add.constraint(portfolio = port_spec, type = "long_only")
  
  # Add an objective to min portfolio variance
  port_spec <- add.objective(portfolio = port_spec, type = "risk", name = "var")
  
  # Solve the optimization problem
  opt <- optimize.portfolio(R = index_returns, trace=TRUE, portfolio = port_spec,optimize_method = "ROI")
  extractWeights(opt) #evaluates to NA for all assets

有谁知道为什么会发生这种情况,并有任何建议如何处理这个问题。我知道这个优化问题很可能面临可逆性问题,因为列数比行数多得多,但除了这个概念之外,我正在努力解决我的问题。

我非常感谢大家的帮助!提前感谢

EN

回答 1

Stack Overflow用户

发布于 2020-10-22 20:26:58

您的优化很可能失败,因为您拥有的资产比观察值多得多。然后,正如您正确假设的那样,您无法获得估计协方差矩阵的逆。

引用"A Portfolio Optimization with aLarge Number of Assets: Applications To tothe and韩国Stock Markets“一文,请访问:https://onlinelibrary.wiley.com/doi/epdf/10.1111/ajfs.12233

当N大于T时,fi和协方差矩阵的可逆估计器已经做了很多尝试。协方差矩阵的伪逆估计器是由Sengupta (1983)和Pappas等人(2010)使用的,协方差矩阵的收缩估计器是由Ledoit和Wolf (2003)提出的。Ledoit和Wolf (2003)提出通过两个现有估计器的最优加权平均来估计协方差矩阵:样本协方差矩阵和单指标协方差矩阵。

所以我建议你先看看Ledoit-Wolf收缩法。R-package RiskPortfolios可能也很有用,请参阅https://joss.theoj.org/papers/10.21105/joss.00171

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64210080

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档