我正在使用多个约束构建有效的投资组合:即多头头寸和给定资产的最小权重= 34%(比如说)。我正在使用 fPortfolio 包来执行此操作。根据手册,可以通过创建字符串向量来提供复合约束。我对这种方法有一些问题。这是 fPortfolio 手册中的一个示例。
library(fPortfolio)
Data = SMALLCAP.RET[,c("BKE", "GG", "GYMB", "KRON")]
Spec = portfolioSpec()
setTargetReturn(Spec) = mean(colMeans(Data))
Constraints = "LongOnly"
efficientPortfolio(Data, Spec, Constraints)
这行得通。但是我想通过添加最小重量条件来增加它
Spec = portfolioSpec()
setTargetReturn(Spec) = mean(colMeans(Data))
Constraints = c("LongOnly","minW[1]=0.34")
efficientPortfolio(Data, Spec, Constraints)
上面的代码没有给出想要的结果。我知道我在设置约束时做错了。任何帮助将不胜感激。