Financial Toolbox | ![]() ![]() |
Previous coupon date for fixed-income security (SIA compliant)
Syntax
PreviousCouponDate = cpndatep(Settle, Maturity, Period, Basis, EndMonthRule, IssueDate, FirstCouponDate, LastCouponDate)
Arguments
Required arguments must be number of bonds (NUMBONDS
) by 1 or 1-by-NUMBONDS
conforming vectors or scalars. Optional arguments must be either NUMBONDS
-by-1 or 1-by-NUMBONDS
conforming vectors, scalars, or empty matrices.
Description
PreviousCouponDate = cpndatep(Settle, Maturity, Period, Basis,
EndMonthRule, IssueDate, FirstCouponDate, LastCouponDate)
returns the previous coupon date on or before settlement for a portfolio of bonds. This function finds the previous coupon date whether or not the coupon structure is synchronized with the maturity date.
For zero coupon bonds the previous coupon date is the issue date, if available. However, if the issue date is not supplied, the previous coupon date for zero coupon bonds is the previous quasi coupon date calculated as if the frequency is semi-annual.
PreviousCouponDate
is returned as a serial date number. The function datestr
converts a serial date number to a formatted date string.
Examples
PreviousCouponDate = cpndatep('14 Mar 1997', '30 Jun 2000',... 2, 0, 0); datestr(PreviousCouponDate) ans = 30-Dec-1996 PreviousCouponDate = cpndatep('14 Mar 1997', '30 Jun 2000',... 2, 0, 1); datestr(PreviousCouponDate) ans = 31-Dec-1996 Maturity = ['30 Apr 2000'; '31 May 2000'; '30 Jun 2000']; PreviousCouponDate = cpndatep('14 Mar 1997', Maturity); datestr(PreviousCouponDate) ans = 31-Oct-1996 30-Nov-1996 31-Dec-1996
See Also
accrfrac
, cfamounts
, cfdates
, cftimes
, cpncount
, cpndaten
, cpndatenq
, cpndatepq
, cpndaysn
, cpndaysp
, cpnpersz
![]() | cpndatenq | cpndatepq | ![]() |