PortfolioAnalytics Ошибка с функцией gmv_opt

У меня есть ниже скрипт, который создает ошибку. Кто-нибудь знает, как это решить. Я использую последнюю версию R & RStudio, и все пакеты обновлены.

library('quantmod')
library('PortfolioAnalytics')
library('PerformanceAnalytics')

ETF_Names     <- c("IVV","IJH","IWM","EZU","EEM","SCZ","ILF","EPP")

ETF_All        <- lapply(ETF_Names, function(x) getSymbols(x,from="2006-01-01",auto.assign = FALSE))
names(ETF_All) <- ETF_Names

ETF_MR <- do.call(merge,lapply(ETF_All,monthlyReturn))
colnames(ETF_MR) <- ETF_Names

ETF_spec <- portfolio.spec(assets = colnames(ETF_MR))
ETF_spec <- add.constraint(portfolio=ETF_spec, type="full_investment")
ETF_spec <- add.constraint(portfolio=ETF_spec, type="box", min=0, max=1)
ETF.ef <- create.EfficientFrontier(R=ETF_MR['2015'], portfolio=ETF_spec, type="mean-StdDev")

Ниже сообщения об ошибке:

Error in gmv_opt(R = R, constraints = constraints, moments = moments,  : 
No solution found: Error in UseMethod("as.constraint") : 
no applicable method for 'as.constraint' applied to an object of class "c('matrix', 'list')" 

Раньше проблем не было (я недавно обновил RStudio и соответствующие пакеты). И вот, когда ошибка появилась.

Надеюсь, кто-то может помочь

2 ответа

Я получил ту же ошибку.

Попробуйте добавить:

library(ROI)
require(ROI.plugin.glpk)
require(ROI.plugin.quadprog)

Работали на меня.

Я получил ту же ошибку.

Вы можете попробовать квадратичную оптимизацию (solve.QP). Смотрите этот ответ

/questions/44564280/diagramma-analitiki-portfelya-refficientfrontier-function/44564319#44564319

Другие вопросы по тегам