[R-SIG-Finance] Problem with solver solveRquadprog in fPortfolio

Peter Keller podvalov at gmx.net
Sat Apr 17 14:08:33 CEST 2010


Thanks for the suggestion. I already tried to change the solver in 
fPortfolio, but I was not yet successful.

As far as I know, you can change the solver in fPortfolio as follows:

...
Spec <- portfolioSpec()
setSolver(Spec) = "solveRquadprog"
...

But this exactly leads to the Fortran error (because it's using package 
"Rglpk"?)... So, how do I change the solver with setSolver(Spec) to use 
package "quadprog" correctly?

Unfortunately I did not find the correct function call in the fPortfolio 
eBook...

Thanks for your help in advance,

Peter

Sarbo wrote:
> In the meantime, why not use the "quadprog" package instead? It's pretty
> much the same thing, you just have to be a little more careful in
> setting out the optimisation problem.
> 
> On Sat, 2010-04-17 at 14:33 +0300, Peter Keller wrote:
> 
>> Yohan,
>>
>> First of all thank you very much for your fast reply and clarification. 
>> I thought it could be an interface error, but of course I was not sure.
>>
>> Do you have already a rough idea when the new version of fPortfolio will 
>> be released?
>>
>> Have a nice weekend and best regards,
>>
>> Peter
>>
>> Yohan Chalabi wrote:
>>>>>>> "PK" == Peter Keller <podvalov at gmx.net>
>>>>>>> on Sat, 17 Apr 2010 14:07:29 +0300
>>>    PK> Hi there,
>>>    PK>
>>>    PK> I have a serious problem with solver solveRquadprog in
>>>    PK> fPortfolio.
>>>    PK> Unfortunately, solveRquadprog is the standard solver in
>>>    PK> fPortfolio and
>>>    PK> pretty essential.
>>>    PK>
>>>    PK> How to replicate the problem on my PC:
>>>    PK>
>>>    PK> library(fPortfolio)
>>>    PK> library(fEcofin)
>>>    PK>
>>>    PK> library(Rsymphony)
>>>    PK> library(lpSolveAPI)
>>>    PK>
>>>    PK> djiData = as.timeSeries(DowJones30)
>>>    PK> djiData.ret <- 100 * returns(djiData)
>>>    PK> frontier <- portfolioFrontier(djiData.ret)
>>>    PK>
>>>    PK> I get then the error message:
>>>    PK>
>>>    PK> Error in .Fortran("qpgen2", as.double(Dmat), dvec =
>>>    PK> as.double(dvec),
>>>    PK> as.integer(n), :
>>>    PK> Incorrect number of arguments (16), expecting 17 for qpgen2
>>>    PK>
>>>    PK> I’ve installed R version 2.10.1 on Windows 7 (32 bit) with
>>>    PK> updated CTV
>>>    PK> Finance.
>>>    PK>
>>>    PK> Interestingly, this problem only appeared after a
>>>    PK> while. Initially,
>>>    PK> everything worked fine, but suddenly, without doing something
>>>    PK> special,
>>>    PK> this error appeared. I already completely uninstalled R,
>>>    PK> rebooted the PC
>>>    PK> and re-installed R (including updated CTV Finance), but it
>>>    PK> did not help
>>>    PK> at all.
>>>    PK>
>>>    PK> I highly would appreciate any help. I already spent quite a
>>>    PK> lot of time
>>>    PK> to find a solution, but there is not a lot of help available.
>>>    PK>
>>>    PK> Best regards,
>>>    PK>
>>>    PK> Peter Keller
>>>
>>>
>>> Hi Peter,
>>>
>>> The mentioned error is due to a change in the new version of
>>> quadprog package and a direct call of the Fortran routine in fPortfolio.
>>>
>>> We have already updated the devel version of fPortfolio on R-forge. As
>>> soon as we have run all test, we will upload a new version of
>>> fPortfolio to CRAN.
>>>
>>> You can either wait until the new pkg is on CRAN or compile it from
>>> source and get the devel code from R-forge. More info 
>>> http://r-forge.r-project.org/scm/?group_id=156
>>>
>>> Regards,
>>> Yohan
>>>
>>>
>> _______________________________________________
>> R-SIG-Finance at stat.math.ethz.ch mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-sig-finance
>> -- Subscriber-posting only. If you want to post, subscribe first.
>> -- Also note that this is not the r-help list where general R questions should go.
> 
> 
> 
> 	[[alternative HTML version deleted]]
> 
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> R-SIG-Finance at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-finance
> -- Subscriber-posting only. If you want to post, subscribe first.
> -- Also note that this is not the r-help list where general R questions should go.



More information about the R-SIG-Finance mailing list