[GSoC-PortA] Quick question on multipliers and constrained_objective()

Doug Martin martinrd at comcast.net
Mon Jun 24 02:28:15 CEST 2013


Ross and others,

 

I will check this out.  Meanwhile I offer a few comments below.

 

Thanks,

Doug

 

 

From: gsoc-porta-bounces at lists.r-forge.r-project.org
[mailto:gsoc-porta-bounces at lists.r-forge.r-project.org] On Behalf Of Ross
Bennett
Sent: Saturday, June 22, 2013 10:13 AM
To: PortfolioAnalytics
Subject: Re: [GSoC-PortA] Quick question on multipliers and
constrained_objective()

 

Professor Martin and others,

 

I just added a testing script to match your examples in your 1. theory
review weights constrained mvo v5.pdf slides (attached). See committed
revision 2402 with sandbox/testing_ROI_Martin.R. Currently, the user just
chooses optimize_method="ROI" and optimize.portfolio() takes care of
choosing the ROI plugin for solve.QP or Rglpk_solve_LP based on the
objectives specified. 

[Doug] I guess you mean that rev. 2402 still requires use of the argument
optimize_method="ROI".  I'm wondering if my earlier assumption from last
summer that the code could be changed so that we don't have to specify ROI
in an argument.  

Brian, what is your opinion on this?

 

If "var" is specified as the only objective, then the plug-in selected is
quadprog for solve.QP to minimize variance.

[Doug] I think we need to specify the solver independently of the use of
"var", with a default choice which could be solve.QP for now.

I am not very confident about the quality of solve.QP.  Maybe Brian knows if
there are any test-bed benchmarks on it?  In addition

solve.QP lacks the following:  (a) The ability to provide an initial set of
weights, (b) Lack of a "verbose =" (or "trace =") with default F.

 

If "var" and "mean" are specified as objectives, then the plug-in selected
is quadprog for solve.QP to maximize quadratic utility.

[Doug] This is a way to go.  But maybe we want to be more explicit and clear
by using "quadutil" or "qu" or some such?

 

If "mean" is specified as the only objective, then the plug-in selected is
glpk for Rglpk_solve_LP to maximize return.

[Doug] Good

 

If "CVaR" is specified as the only objective, then the plug-in selected is
glpk for Rglpk_solve_LP to minimize sample CVaR.

[Doug] Good.  I would prefer to use the term ETL.  This is just my habit,
but I must say that CVaR was a bad naming choice by R&S,

the reason being that the literal translation "conditional VaR" is not what
it is about.  I guess in situations like this where some 

People like one name and some like another, we can use aliases???

 

This is nice for the user because they don't need to know when to use
quadprog and vice versa for glpk.

 

It appears that the reference manual may be out of date. I could easily make
a vignette with several examples about the functionality that
optimize_method="ROI" offers.  I'd prefer to do this after we are all
satisfied how to set the portfolio object with constraints and objectives.

 

Regards,

Ross Bennett

 

 

On Fri, Jun 21, 2013 at 11:52 PM, Doug Martin <martinrd at comcast.net> wrote:

Brian and Ross (and anyone else who wishes to comment),

 

Thanks for the late evening response.   Good to allow both conventions wrt
the sign of risk.  Will check the leading portfolio and risk products for
most frequent choice, and then we should go to with the majority.  My priors
are that the plus sign will win.

 

Much more importantly:  I just started browsing the PortfolioAnalytics help
files manual, slowly starting to refresh my memory of what little I
understood last summer.  Please see the attached version of August 26 (not
the latest I know, but almost the last if not the last the Hezky edited)),
where I have added a small number of comments here and there.  See in
particular my comments on optimize.portfolio.  It would be very helpful if
the unfinished business of making ROI invisible to the user is taken care
of, and soon we just have solve.QP and Rglpk_solve_LP as optimizer choice
arguments.  Even before getting all the constraint object changes, because
then I could check running my solve.QP and Rglpk_solve_LP based examples
(Ross you are quite familiar with these) run via optimize.portfolio and box
constraints.  Then come back to group constraints when they are implemented.

 

Will keep browsing the manual, and try to understand what is going on.
Brian, I don't know if you (and Ross) can manage, but examples at the end of
each help file would be truly helpful (no pun intended).

 

Thanks,

Doug

 

P.S. Brian, I hope you didn't hear my phone call at 11:15 or so - I thought
you were still live on email and then realized that almost 30 minutes had
passed and you had probably crashed. 

 

 

 

-----Original Message-----
From: gsoc-porta-bounces at lists.r-forge.r-project.org
[mailto:gsoc-porta-bounces at lists.r-forge.r-project.org] On Behalf Of Brian
G. Peterson

Sent: Friday, June 21, 2013 8:55 PM
To: gsoc-porta at r-forge.wu-wien.ac.at
Subject: Re: [GSoC-PortA] Quick question on multipliers and
constrained_objective()

 

On 06/21/2013 10:44 PM, Doug Martin wrote:

> Small comment:  a lot (if not most) literature on risk takes risk as a 

> positive number, so puts a minus sign on the VaR quantile, etc.  I 

> previously noticed that PerformanceAnalytics takes risk as negative, 

> had the thought to change that.

 

PerformanceAnalytics allows it either way, user's choice.

 

Risk is risk of *loss*.  Period.

 

Now, the math is sometimes/often easier with a positive number, I admit, but
it's typical for risk reports on real portfolios to describe those risks as
negative numbers.

 

So we allow either.

 

 

Cheers,

 

Brian

 

 

--

Brian G. Peterson

 <http://braverock.com/brian/> http://braverock.com/brian/

Ph: 773-459-4973

IM: bgpbraverock

_______________________________________________

GSoC-PortA mailing list

 <mailto:GSoC-PortA at lists.r-forge.r-project.org>
GSoC-PortA at lists.r-forge.r-project.org

 <http://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/gsoc-porta>
http://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/gsoc-porta


_______________________________________________
GSoC-PortA mailing list
GSoC-PortA at lists.r-forge.r-project.org
http://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/gsoc-porta

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.r-forge.r-project.org/pipermail/gsoc-porta/attachments/20130623/d5259b76/attachment.html>


More information about the GSoC-PortA mailing list