[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Help-glpk] IRR (Internal Rate of Return) using MathProg

From: Jeffrey Kantor
Subject: Re: [Help-glpk] IRR (Internal Rate of Return) using MathProg
Date: Sun, 16 Sep 2012 17:14:05 -0400

If you can get by with a close approximation to the IRR, then there
may be another way to approach this problem. The so-called Dietz
formula is used to estimate returns on a portfolio.  You can derive
the Dietz formula from an expression for NPV by taking the first two
terms in a Taylor series expansion with respect to return r about the
point r = 0, then solving for r.  The Dietz return is the ratio of two
affine terms in the cash flows.  Once you have that, then use a
Charnes-Cooper type transformation to convert this express into a
linear objective for an LP.  The net result is that you could then
include return in the the objective or constraints of your

I've not done actually done this but it might be worth exploring. Here
is some background

On Sun, Sep 16, 2012 at 3:06 PM, Andrew Makhorin <address@hidden> wrote:
>> It is well known, and your links show how, to use Newton's algorithm
>> (aka Newton Raphson's algorithm) to find the IRR, since it's really
>> find a root of a polynomial (see the other post by Jeffery Kantor,
>> which also describes the fact that depending on the cash flows, there
>> could be multiple solutions).
> Newton-Raphson's method is not a good choice in this case because
> i) it requires an initial guess, ii) it is able to find only one root;
> iii) it may not converge. To find all roots of a polynomial it is much
> better to use a specialized algorithm, for example, QD-algorithm or
> Bairstow's algorithm. Note also that roots of polynomials of high degree
> are extremely sensible to round-off errors in specifying the polynomial
> coefficients, so I belive that there should exist another formulation
> of IRR.
> _______________________________________________
> Help-glpk mailing list
> address@hidden

reply via email to

[Prev in Thread] Current Thread [Next in Thread]