COUPDAYBS
Updated: 5 August 2010
Use COUPDAYBS to calculate the number of days from the beginning of the coupon period to the settlement date.
Syntax
SELECT [westclintech].[wct].[COUPDAYBS] (
<@Settlement, datetime,>
,<@Maturity, datetime,>
,<@Frequency, float,>
,<@Basis, nvarchar(4000),>)
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.
@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.
@Basis
is the type of day count to use. @Basis is an expression of the character string data type category.
Basis
|
Day count basis
|
0 or omitted
|
US (NASD) 30/360
|
1
|
Actual/Actual
|
2
|
Actual/360
|
3
|
Actual/365
|
4
|
European 30/360
|
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
Example
SELECT wct.COUPDAYBS('12/16/2007'
,'3/1/2027'
,2
,1)
Here is the result set
-----------
106
See Also