IFinance.Ipmt

Fore Syntax

Ipmt(Rate: Double;

Period: Integer;

PeriodCount: Integer;

PresentValue: Double;

FutureValue: Double;

Type: Integer): Double;

Fore.NET Syntax

Ipmt(Rate: double;

Period: integer;

PeriodCount: integer;

PresentValue: double;

FutureValue: double;

Type: integer): double;

Parameters

Parameters Description Constraints
Rate Interest rate for a period. Cannot be negative.
Period The period, for which interest payments have to be found. Must be in the [1;PeriodCount] interval.
PeriodCount Total number of annuity payment periods. Must be positive.
PresentValue Present net value or the total sum, which is currently equal to the set of future payments.  
FutureValue The required value of future cost, or the remainder after the last payment.  
Type Selecting time of payment:
0 - in the end of the period.
1 - in the beginning of the period.
Must take the value 0 or 1.

Description

The Ipmt method returns the sum of interest payments for the given period, if the sums of regular payments are equal and the interest rate is constant.

Comments

All the arguments, denoting money, which has to be paid (for example, saving accounts), are represented as negative numbers; all the money, which has to be received (for example, dividends), are represented as positive numbers.

Ipmt is calculated using the following formula:

Where:

To get monthly payment on loan, use the IFinance.Pmt method.

Fore Example

To execute the example, add a link to the MathFin system assembly.

Sub UserProc;
Var
    r: Double;
Begin
    r := Finance.
Ipmt(0.151212120015000);
    Debug.WriteLine(r);
End Sub UserProc;

After executing the example the console window displays the interest rate equal to 160.03.

Fore.NET Example

The requirements and result of the Fore.NET example execution match with those in the Fore example.

Imports Prognoz.Platform.Interop.MathFin;

Public Shared Sub Main(Params: StartParams);
Var
    r: double;
    Finance: FinanceClass = New FinanceClass();
Begin
    r := Finance.Ipmt(0.151212120015000);
    System.Diagnostics.Debug.WriteLine(r);
End Sub;

See also:

IFnancei