COUPDAYBS
Updated 2023-10-06 13:51:39.427000
Syntax
SELECT [westclintech].[wct].[COUPDAYBS] (
<@Settlement, datetime,>
,<@Maturity, datetime,>
,<@Frequency, float,>
,<@Basis, nvarchar(4000),>)
Description
Use the scalar function COUPDAYBS Calculate the number of days from the beginning of the coupon period to the settlement date.
Arguments
@Settlement
the settlement date occurring within the coupon period of the security. @Settlement is an expression that returns a datetime or smalldatetime value, or a character string in date format.
@Maturity
the maturity date of the instrument. @Maturity is an expression that returns a datetime or smalldatetime value, or a character string in date format.
@Basis
is the type of day count to use. @Basis is an expression of the character string data type category.
{"columns":[{"field":"Basis","width":139},{"field":"Day count basis","width":174}],"rows":[{"Basis":"0 or omitted","Day count basis":"US (NASD) 30/360"},{"Basis":"1","Day count basis":"Actual/Actual"},{"Basis":"2","Day count basis":"Actual/360"},{"Basis":"3","Day count basis":"Actual/365"},{"Basis":"4","Day count basis":"European 30/360"}]}
@Frequency
the number of coupon payments per year. For annual payments, @Frequency = 1; for semi-annual, @Frequency = 2; for quarterly, @Frequency = 4. @Frequency is an expression of type float or of a type that can be implicitly converted to float.
Return Type
int
Remarks
A settlement date occurs in the coupon period where the settlement date is greater than or equal to start date of the coupon period and less than the end date of the coupon period (as the end date of one period is the start date of the next period).
If the @Frequency is any number other than 1, 2 or 4, COUPDAYBS returns an error.
If @Basis < 0 or @Basis > 4, COUPDAYBS returns an error.
If @Settlement > @Maturity, COUPDAYBS returns an error.
If @Maturity is the end of the month, then COUPDAYBS always calculates previous coupon dates as the last day of a month.
Examples
SELECT wct.COUPDAYBS('12/16/2007', '3/1/2027', 2, 1);
This produces the following result.
-----------
106
See Also
COUPDAYS - Number of days in a coupon period
COUPDAYSNC - Number of days from settlement to next coupon date
COUPNUM - Number of coupons from settlement to maturity
COUPPCD - Calculate the immediately previous coupon date before the settlement date.