The Eagle Performance IRR is designed to:
Set known calculation limits that return null results if violated
Support periods greater than one month
Support both cumulative and annual IRR calculations
Enable you to verify all IRR results in Microsoft Excel
Bisection is used as the sole IRR calculation method. A null is returned for IRRs outside of the range 1,000,000,000 percent and 100 percent. Using an upper limit that is not a function of the number of days in the period and periods greater than a month is supported. An additional option in the IRR calculation supports annual IRRs. All returns calculated using IRR can be tied out in Excel by using Goal Seek, Solver, and XIRR.
...
The formula for the basic IRR calculation is:
MVE = MVB x ( 1 + IRR ) + CF1 x ( 1 + IRR ) W1 … + CFn x ( 1+ IRR ) Wn
where:
MVE – Market value ending
MVB – Market value beginning
IRR – Cumulative Internal Rate of Return
CF – Cash flow amount
W – Weight = ( Number of Days Cash Flow is Present ) / ( Num of Days in Period )
As always, the time-of-day assumption is factored into the number of days present.
...
Some cases cannot be solved using IRR and as a result, return null values. A check of calculation inputs returns a null value in the following scenarios:
No data found
BMV and EMV are null and there is not at least one positive and one negative cash flow
Positive BMV, positive cash flows, and negative EMV
Negative BMV, negative cash flows, and positive EMV
Positive BMV, no cash flows, and negative EMV
Negative BMV, no cash flows, and positive EMV
No BMV, positive cash flows, and no EMV
No BMV, negative cash flows, and no EMV
An input validation in the IRR calculation avoids solving for a zero return. If the beginning market value plus sum of cash flows is equal to the ending market value, the Bisection algorithm is bypassed and a return of zero is returned.