gpt4 book ai didi

r - PortfolioAnalytics 包中 optimize.portfolio 中的索引错误中的重复条目

转载 作者:行者123 更新时间:2023-12-04 03:20:26 25 4
gpt4 key购买 nike

当我尝试使用 ROI 运行 optimize.portfolio 函数时,出现错误。

Error in ROI::V_bound(li = seq.int(1L, N), lb = as.numeric(lb), ui = seq.int(1L,  : duplicated entries in indices.

当我使用 DEoptim 时,我得到了。

Error in sample.int(length(x), size, replace, prob) : 
invalid first argument

当使用 getSymbols 收集股票数据时,会出现有关返回对象长度的警告。 research I did表明这不是问题。

我正在使用的代码如下。任何帮助,将不胜感激。

library(quantmod)
library(PortfolioAnalytics)
library(DEoptim)
library(ROI)
require(ROI.plugin.glpk)
require(ROI.plugin.quadprog)

symbols <- c("MSFT", "MMM", "AMZN")

e <- new.env()
getSymbols(symbols, src="yahoo", env=e)
stocks <- do.call(merge, eapply(e, Cl)[symbols])

ret <- diff(log(df))
ret <- ret[2:(nrow(df)),]

portfolio <- portfolio.spec(ret)
portfolio

portfolio <- add.constraint(portfolio = portfolio, type = "weight_sum", min_sum=0.99,max_sum=1.01)
portfolio <- add.constraint(portfolio = portfolio, type = "long_only")
portfolio <- add.objective(portfolio=portfolio, type="risk", name="StdDev")

optimise <- optimize.portfolio(R = ret, portfolio = portfolio, optimize_method = "ROI")

最佳答案

查看帮助 (?portfolio.spec)。该函数需要名称或数字。如果您使用 Assets 名称,则没有错误。

portfolio <- portfolio.spec(names(ret))

关于r - PortfolioAnalytics 包中 optimize.portfolio 中的索引错误中的重复条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38732892/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com