...
..
. . . What IRR and XIRR are effectively doing is solving a polynomial
equation (through trial and error). . . .
Not really trial & error. XIRR uses iterative techniques that converge except
for pathological cashflows. Using an initial guess of -50% (yes, *negative* 50%)
usually forces [X]IRR to give numeric results.
. . . Descartes Rule (...) states that for every change in sign, you have at
least one root. . . .
All polynomials of Nth order have N roots, some possibly complex, some possibly
nonunique. Descartes's "vrayes racines" translates as *true* roots, which must
be further translated into current terminology as positive real roots.
Here's something interesting. Multiply your cash values by -1 so that your
total is now positive 1,487,031.73. And use XIRR(values, dates, -10%).
Surprisingly you get -2.74% (no change!). If I change to XIRR (values,
dates, 5%), I get 2.98E-09 or very nearly 0%.
If you try to give undeserved meaning to the [X]IRR result, this may seem
interesting. Mathematically, it's rather obvious. As you state, the [X]IRR is
the solution of a polynomial, but it's a polynomial of the form
a[n] x^n + a[n-1] x^(n-1) + . . . + a[1] x + a[0] = 0
Negating both sides of the equation gives
-a[n] x^n - a[n-1] x^(n-1) - . . . - a[1] x - a[0] = 0
Obviously doing this would have no affect on the value of x.
I am not sure how you want to attempt to tackle your question. It is
conceivable that there is no correct IRR value because the true answer is an
imaginary answer and all the rest of the roots are simply bogus values. .
.. .
*NO*, *NO*, *NO*!!!
There is no [X]IRR if there are no sign changes. That there would be complex
roots for the polynomial is irrelevant - [X]IRR should be an interest rate, and
interest rates *MUST* be real valued.
If there are any sign changes, there are real roots. And if there are real
roots, all of them are *EQUALLY* valid (despite the fact that there are snake
oil salesmen disguised as economics PhDs who claim otherwise).
. . . If I had this problem (luckily I don't), I might be inclined to change
the 15-Oct-2001 to a negative value (say -100,000) and then add
(479,733.17+100,000) to the 15 May 2003 value. Although I am no longer
correct, I have eliminated some changes in sign (and thus some roots).
..
Gee, why not take this to it's logical extreme and dump all the values into just
two dates? That'd make the calculations elementary, and even eliminate the need
for the IRR function. Of course, the result would have lost even the tenuous
connection to anything meaningful that IRR possesses, but WTH.
--
Never attach files.
Snip unnecessary quoted text.
Never multipost (though crossposting is usually OK).
Don't change subject lines because it corrupts Google newsgroup archives.