SOCP Solver Ошибка для fPortoflio с использованием solveRsocp

Я хотел бы использовать решатель R SOCP, чтобы получить результаты, аналогичные следующей статье:http://www.optimization-online.org/DB_FILE/2014/05/4366.pdf

И, занимаясь поиском, похоже, он был частьюfPortfolioSolver, но этот пакет выглядит так, как будто его больше не существует ....

И это похоже на то, как это было реализовано ...

https://stat.ethz.ch/pipermail/r-sig-finance/2010q2/006074.html

Решатель все еще существует здесь:

https://r-forge.r-project.org/scm/viewvc.php/pkg/fPortfolio/R/solveRsocp.R?view=markup&root=rmetrics&pathrev=3507

Но это должно ссылаться наRsocp Пакет доступен здесь:

https://r-forge.r-project.org/R/?group_id=156

Однако есть несколько ошибок, которые должны помочь ему заставить его работать

например линия 117 должна измениться на

Rsocp:::.SqrtMatrix

и строка 165 должна измениться на

optim <- Rsocp::socp(f, A, b, C, d, N, x, z, w, control)

но при запуске следующего кода я получаю следующую ошибку ...

lppData=100*LPP2005.RET[,1:6] 
maxRetSpec=portfolioSpec() 
setTargetRisk(maxRetSpec)=0.07 
setSolver(maxRetSpec)="solveRsocp"
efficientPortfolio(data=lppData, spec=maxRetSpec, constraints="LongOnly") 

 Error in .socp.phase1(f, A, b, N, control) : Phase 1 failed, alpha>=0 

traceback()
6 stop("Phase 1 failed, alpha>=0") 
5 .socp.phase1(f, A, b, N, control) 
4 Rsocp::socp(f, A, b, C, d, N, x, z, w, control) at solveRsocp.R#165
3 .rsocp(f = args$f, A = args$A, b = args$b, C = args$C, d = args$d, 
N = args$N, targetRisk = args$targetRisk, mu = args$mu, Scale = args$Scale) at    solveRsocp.R#64
2 Solver(data, spec, constraints) 
1 efficientPortfolio(data = lppData, spec = maxRetSpec, constraints = "LongOnly") 

Будем весьма благодарны за любую помощь в разрешении этой ситуации, с тем чтобы решатель работал и чтобы этот документ можно было воспроизвести ...

Ответы на вопрос(1)

Ваш ответ на вопрос