Chapter Contents

Previous

Next
INTRR

INTRR



Returns the internal rate of return as a fraction

Category: Financial


Syntax
Arguments
Details
Examples

Syntax

INTRR(freq,c0, c1, . . . ,cn)

Arguments

freq
is numeric, the number of payments over a specified base period of time that is associated with the desired internal rate of return.
Range: freq > 0
Exception: The case freq = 0 is a flag to allow continuous compounding.

c0,c1, . . . ,cn
are numeric, the optional cash payments.


Details

The INTRR function returns the internal rate of return over a specified base period of time for the set of cash payments c0, c1, ..., cn. The time intervals between any two consecutive payments are assumed to be equal. The argument freq>0 describes the number of payments that occur over the specified base period of time.

The internal rate of return is the interest rate such that the sequence of payments has a 0 net present value (see the NETPV function). It is given by

[IMAGE]

where x is the real root, nearest to 1, of the polynomial

[IMAGE]

The routine uses Newton's method to look for the internal rate of return nearest to 0. Depending on the value of payments, a root for the equation does not always exist; in that case, a missing value is returned.

Missing values in the payments are treated as 0 values. When freq>0, the computed rate of return is the effective rate over the specified base period. To compute a quarterly internal rate of return (the base period is three months) with monthly payments, set freq to 3.

If freq is 0, continuous compounding is assumed and the base period is the time interval between two consecutive payments. The computed internal rate of return is the nominal rate of return over the base period. To compute with continuous compounding and monthly payments, set freq to 0. The computed internal rate of return will be a monthly rate.


Examples

For an initial outlay of $400 and expected payments of $100, $200, and $300 over the following three years, the annual internal rate of return can be expressed as

   rate=intrr(1,-400,100,200,300);

The value returned is 0.19438.


Chapter Contents

Previous

Next

Top of Page

Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.