CodeCogs - An iteractive open source Numerical library Welcome... Login
CodeCogs
shopping cart
OSXWindowsLinux
Search CodeCogs
Numerical Components

Valid RSS

FinanceBanking

coupon Days In Period

Available under GPL (Free) and Commercial licence
get a GPL licence
COST (GBP)
this unit 2.34
sub units 16.06
add a commercial licence to your cart
0
viewed 1779 times and licensed 23 times

Return number of days in coupon period containing the settlement date. Excel: COUPDAYS

Further Info Controller: CodeCogs  Contact Controller
+View version details
Contents hide toc
buy now     get GPL     add to cart

Interface

#include <codecogs/finance/banking/coupondaysinperiod.h>

using namespace Finance::Banking;

int couponDaysInPeriod (int sett, int mat, Finance::Banking::YearlyFreq freq, Finance::Banking::YearBasis basis=yb_USA)
Return number of days in coupon period containing the settlement date. Excel: COUPDAYS

Function Documentation

 
intcouponDaysInPeriodintsett
intmat
Finance::Banking::YearlyFreqfreq
Finance::Banking::YearBasisbasis = yb_USA )
Calculate the number of days in the coupon period that contains the settlement date. The number of days returned depends on the year basis specified:

For yb_USA, yb_EU and yb_Act360 the returned value is:
days\ =\ \frac{360}{freq}

Where freq is the number of times per year the payment is made (1 for yf_Annual, 2 for yf_SemiAnnual or 4 for yf_Quarterly).

For yb_Act365 the returned value is:
days\ =\ \frac{365}{freq}
(Using integer division)

Finally, for yb_Act, the exact number of days between the two dates (taking into account leap years) is returned.
Example 1:
#include <stdio.h>
 
#include <codecogs/units/date/date.h>
#include <codecogs/units/date/dateymd.h>
#include <codecogs/finance/banking/coupondaysinperiod.h>
 
int main(void)
{
  int settDate=Units::Date::date(1998, 1, 25);
  int maturityDate=Units::Date::date(1999, 11, 15);
  int days=Finance::Banking::couponDaysInPeriod(settDate,
       maturityDate, 
       Finance::Banking::yf_SemiAnnual,
       Finance::Banking::yb_Act);
  int y, m, d;

Units::Date::dateYMD(settDate, y, m, d); printf("settlement=%i/%i/%i\n", y, m, d);

Units::Date::dateYMD(maturityDate, y, m, d); printf("maturity=%i/%i/%i\n", y, m, d);

printf("days in period=%i\n", days);   return 0; }
Output:
settlement=1998/1/25
maturity=1999/11/15
days in period=181

The yearly frequency to be used in financial calculations

TypeDescription
yf_Annual Payments are made annually.
yf_SemiAnnual Payments are semi-annual (2 per year).
yf_Quarterly Payments are quarterly (4 per year).
Authors:
James Warren (August 2005)

The module YearBasis. does not yet exist on the system. Should this persist please contact the website administrator.

Parameters:
settThe settlement date, expressed as a serial Julian date.
matThe maturity date of the settlement, expressed as a serial Julian date.
freqThe frequency with which payments are made:
basisThe year basis to use for the calculation:
Returns:
The number of days in the coupon period.
Authors:
James Warren (August 2005)
Source Code:

To view or download source code you need either a GPL or Commercial Licence.

buy now     get GPL     add to cart

Not a member, then Register with CodeCogs. Already a Member, then Login.


Page Comments

Format Excel Equations

  You must login to leave a messge


Last Modified: 18 Oct 07 @ 17:07     Page Rendered: 2010-03-11 14:19:57

Valid CSS!   Valid XHTML 1.0 Transitional