YieldMat(Settlement: DateTime; Maturity: DateTime; Issue: DateTime; Rate: Double; Price: Double; [Basis: Integer = 0]): Double;
YieldMat(Settlement: System.DateTime; Maturity: System.DateTime; Issue: System.DateTime; Rate: double; Price: double; Basis: integer): double;
Settlement. The payment day on securities. Must be less than Maturity.
Maturity. The security's maturity date. Must be greater than Settlement.
Issue. Securities issue date. Must be less than Settlement.
Rate. Security's interest rate at date of issue. Must be positive.
Price. The security's price per $100 face value. Must be positive.
Basis. The day calculation method used. Select a value from 0 to 4:
0. The day calculation method - American/360 days (NSAD method).
1. The day calculation method - Actual/actual.
2. The day calculation method - Actual/360 days.
3. The day calculation method - Actual/365 days.
4. The day calculation method - European 30/360 days.
The YieldMat method returns the annual yield of a security that pays interest at maturity.
YieldMat is calculated using the following formula:
,
where:
B. The number of days in a year, it depends on the selected Basis argument value.
D1. The number of days from issue date to maturity date.
D2. The number of days from coupon issue date to settlement date.
D3. The number of days from settlement date to maturity date.
Add a link to the MathFin system assembly.
Sub UserProc;
Var
r: Double;
Begin
r := Finance.YieldMat(DateTime.ComposeDay(2008,01,01),
DateTime.ComposeDay(2008,06,01), DateTime.ComposeDay(2007,10,01), 0.15, 145.8, 0);
Debug.WriteLine(r);
End Sub UserProc;
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.YieldMat(DateTime1, DateTime2, DateTime3, 0.15, 145.8, 0);
System.Diagnostics.Debug.WriteLine(r);
End Sub;
After executing the example the console window displays the annual yield of securities equal to -0.6347.
See also: