CoupDayBs(Settlement: DateTime; Maturity: DateTime; Frequency: Integer; [Basis: Integer = 0]): Double;
Settlement. The payment day on securities. Must be less than Maturity.
Maturity. The security's maturity date. Must be greater than Settlement.
Frequency. The annual number of coupon payments. The parameter can take the following values:
1. Annual payments.
2. Semi-annual payments.
4. Quarterly payments.
Basis. The day calculation method used. Select a value from 0 to 4:
0. Day calculation method - American/360 days (NSAD method). Default value.
1. Day calculation method - Actual/actual.
2. Day calculation method - Actual/360 days.
3. Day calculation method - Actual/365 days.
4. Day calculation method - European 30/360 days.
Optional parameter.
The CoupDaybs method returns the number of days from the coupon start date until the agreement date.
The agreement date is the date of selling a coupon, for example, a bond, to the buyer. The payment date is the coupon expiry date. For example, a bond with duration of 30 years was issued on Jan 1 2008 and was acquired by a buyer in 6 months after the issue date. The issue date is Jan 1 2008, the settlement date - July 1 2008, and the maturity date is Jan 1 2038, that is 30 years after the issue date.
Add a link to the MathFin system assembly.
Sub UserProc;
Var
r: Double;
Begin
r := Finance.CoupDayBs(DateTime.ComposeDay(2008,11,11), DateTime.ComposeDay(2008,12,31), 1, 3);
Debug.WriteLine(r);
End Sub UserProc;
After executing the example the console window displays the number of days from the coupon action start thaht is equal to 316.
See also: