IFinance.PriceMat

Fore Syntax

PriceMat(Settlement: DateTime;

Maturity: DateTime;

Issue: DateTime;

Rate: Double;

YieldP: Double;

Basis: Integer): Double;

Fore.NET Syntax

PriceMat(Settlement: System.DateTime;

Maturity: System.DateTime;

Issue: System.DateTime;

Rate: double;

YieldP: double;

Basis: integer): double;

Parameters

Parameters Description Constraints
Settlement Securities settlement date. Must be less than Maturity.
Maturity Securities maturity date. Must be greater than Settlement.
Issue Securities issue date. Must be less than Settlement.
Rate Redemption price for $100 of principal value. Must be positive.
YieldP Securities interest rate on the issue date. Cannot be negative.
Basis The employed method of day calculation:
0 - American/360 days (NSAD method).
1 - Actual/actual.
2 - Actual/360days.
3 - Actual/365 days.
4 - European 30/360 days.
Must be in the [0,4] interval.

Description

The PriceMat method returns the price for $100 of principal value for securities, for which interest is paid on maturity.

Comments

PriceMat is calculated using the following formula:

Where:

Fore Example

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

Sub UserProc;
Var
    r: Double;
Begin
    r := Finance.
PriceMat(DateTime.ComposeDay(2008,01,01), DateTime.ComposeDay(2008,06,01),
        DateTime.ComposeDay(2007,10,01), 0.150.20
);
    Debug.WriteLine(r);
End Sub UserProc;

After executing the example the console window displays the price equal to 97.79.

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();
    DateTime1, DateTime2, DateTime3: System.DateTime;
Begin
    DateTime1 := New DateTime(2008,01,01);
    DateTime2 := New DateTime(2008,06,01);
    DateTime3 := New DateTime(2007,10,01);
    r := Finance.PriceMat(DateTime1, DateTime2, DateTime3, 0.150.20);
    System.Diagnostics.Debug.WriteLine(r);
End Sub;

See also:

IFinance