Я потратил несколько часов, пытаясь понять, что требуется для успешного использования функции optimize.portfolio () из пакета PortfolioAnalytics, но я получаю несколько ошибок, несмотря на попытки различных методов optimize_methods (например, «DEoptim», «ROI»).
После установки PortfolioAnalytics я попытался запустить optimize.portfolio () после указания ограничений портфеля, но получил следующую ошибку:
Ошибка: paste0 ("package:", plugin)% в% search () || requireNamespace (plugin, .... НЕ ИСТИНА
Пытался скачать «плагин», но получаю:
Warning in install.packages : package ‘plugin’ is not available (for R version 3.3.1)
Я предпочитаю optimize_method «ROI», и я установил пакет «ROI», но все еще получаю сообщение об ошибке, требующее «plugin».
Я попытался обойти эту проблему, установив вручную «DEoptim», но мне все еще не удается запустить optimize.portfolio ():
pspec <- portfolio.spec(assets=names(fxreturns))
pspec <- add.constraint(pspec,type = "diversification", div_target = 0.5)
pspec <- add.constraint(pspec,type = "return",return_target=0.05)
pspec <- add.constraint(pspec,type = "leverage")
optimize.portfolio(fxreturns,portfolio = pspec,optimize_method = "DEoptim")
Несмотря на загрузку нескольких пакетов (почему бы R автоматически не установить необходимые пакеты при первой установке «PortfolioAnalytics»?), Я получаю следующую ошибку при запуске «DEoptim»:
Ошибка в seq.default (from = round (min, rounding), to = round (max, rounding),: 'from' не может быть NA, NaN или бесконечным
Для справки, вот все загруженные мной пакеты:
library(quantmod)
library(tseries)
library(PerformanceAnalytics)
library(PortfolioAnalytics)
library(xts)
library(timeSeries)
library(TTR)
require(Rblpapi)
require(reshape2)
require(xlsx)
require(Hmisc)
require(ROI)
require(data.table)
require(DEoptim)