Returns the interest rate per period of an annuity with an initial
guess.
Namespace:
Imsl.Finance
Assembly:
ImslCS (in ImslCS.dll) Version: 6.5.0.0
Syntax
C# |
---|
public static double Rate( int nper, double pmt, double pv, double fv, Finance..::.Period time, double guess ) |
Visual Basic (Declaration) |
---|
Public Shared Function Rate ( _ nper As Integer, _ pmt As Double, _ pv As Double, _ fv As Double, _ time As Finance..::.Period, _ guess As Double _ ) As Double |
Visual C++ |
---|
public: static double Rate( int nper, double pmt, double pv, double fv, Finance..::.Period time, double guess ) |
Parameters
- nper
- Type: System..::.Int32
A int which specifies the number of periods.
- pmt
- Type: System..::.Double
A double which specifies the payment made each period.
- pv
- Type: System..::.Double
A double which specifies the present value.
- fv
- Type: System..::.Double
A double which specifies the annuity's value after the last payment.
- time
- Type: Imsl.Finance..::.Finance..::.Period
The time in a Period when the payment is made (either AtEnd or AtBeginning).
- guess
- Type: System..::.Double
A double value which represents an initial guess at the interest rate per period of an annuity.
Return Value
A double which specifies the interest rate per period of an annuity.
Remarks
Rate is calculated by iteration and can have zero or more solutions.
It can be found by solving the following:

![{\it pv}(1 + {\it rate})^{\it nper} + {\it pmt} \left[ {1 + {\it
rate} \left( {\it period} \right)} \right] {{(1 + {\it rate})^{\it
nper} - 1} \over {\it rate}} + {\it fv} = 0](eqn/eqn_0382.png)
If ,

If ,
![{\it pv}(1 + {\it rate})^{\it nper} + {\it pmt} \left[ {1 + {\it
rate} \left( {\it period} \right)} \right] {{(1 + {\it rate})^{\it
nper} - 1} \over {\it rate}} + {\it fv} = 0](eqn/eqn_0382.png)