IRR
They are very large numbers -- approximately + or - 5368709120%
Hi. I may be wrong, but here goes.
Excel's IRR can not handle this, but if we tell it to start a hair to
the left of the discontinuity line, we can get the only real solution.
This is not the compete function I use, but should work.
Again, the solution is not very meaningful.
? MyIRR([A1:A6],-1.001)
-2.09963276604736
Function MyIRR(Rng, Optional Guess As Double)
'// = = = = = = = = = = = = = = = = =
'// Assumes a vertical array of data
'// By: Dana DeLouis
'// = = = = = = = = = = = = = = = = =
Dim v
Dim dr()
Dim R
Dim OldRte
Dim Ct As Long
Dim J As Long
With WorksheetFunction
'Make 1-Dimensional
v = .Transpose(Rng.Value)
For J = 1 To UBound(v)
v(J) = CSng(v(J))
Next J
'Make an exact derivative
ReDim dr(1 To UBound(v) - 1)
For J = 1 To UBound(dr)
dr(J) = -J * v(J + 1)
Next J
If IsMissing(Guess) Then
R = 0.1
Else
R = Guess
End If
Do
OldRte = R
R = R - .SeriesSum(1 + R, 0, -1, v) / _
.SeriesSum(1 + R, -2, -1, dr)
Ct = Ct + 1
Loop While OldRte < R And Ct <= 40
End With
MyIRR = R
End Function
Again, Excel's IRR can not do this. :~
= = =
HTH
Dana DeLouis
Ron Rosenfeld wrote:
On Sat, 24 Jan 2009 14:00:01 -0000, "David Biddulph" <groups [at]
biddulph.org.uk wrote:
As a matter of interest, what are the two values of discount rate which give
NPV = 0?
--
David Biddulph
They are very large numbers -- approximately + or - 5368709120%
But I suspect it is the complex nature of the cash flows that make IRR
inappropriate.
--ron
|