An accrual method or day count convention is used to
calculate an accrual factor, which represents the fraction of a year a given
period accounts for. There are two
components that make up an accrual factor.
The first component uses a day count convention to determine how many
days fall in the accrual period, which will be the numerator in the calculation
of the accrual factor. The second
component is a day count convention to determine the number of days that make
up a full period, which will be the denominator in the calculation of the
accrual factor.
Accrual Method List
Accrual Method |
Description |
Actual/365 (fixed) |
The number of accrued days is equal to the actual number
of days between the effective date and the terminating date. The accrual factor is the number of accrued
days divided by 365. |
Actual/360 |
The number of accrued days is equal to the actual number
of days between the effective date and the terminating date. The accrual factor is the number of accrued
days divided by 360. |
Actual/365 (actual) |
The number of accrued days is equal to the actual number
of days between the effective date and the terminating date. Calculation of the accrual factor assumes
the year basis to be 365 days for non-leap years and 366 for leap years. If a short stub period (< 1 year)
contains a leap day, the number of days is divided by 366; otherwise, the
number of days is divided by 365. |
30/360 (ISDA) (same as U.S. Muni – 30/360) |
The number of accrued days is calculated on the basis of a
year of 360 days with 12 30-day months, subject to the following rules: 1. If
the first date of the accrual period falls on the 31st of the month, the date
will be changed to the 30th. 2. If
the first date of the accrual period falls on the 30th of the month after
applying (1) above, and the last date of the accrual period falls on the 31st
of the month, the last date will be changed to the 30th. The accrual factor is calculated as the number of accrued
days divided by 360. |
30E/360 (30/360 ISMA) |
The number of accrued days is calculated on the basis of a
year of 360 days with 12 30-day months, subject to the following rules: 1.
If either the first date or last date of the
accrual period falls on the 31st of a month, that date will be changed to the
30th. 2. If
the last day of the accrual period falls on the last day of February, the
month of February will not be extended to a 30-day month. Rather, the actual number of days in
February will be used. The accrual factor is calculated as the number of accrued
days divided by 360. |
30E+/360 |
The number of accrued days is calculated on the basis of a
year of 360 days with 12 30-day months, subject to the following rules: 1.
If the first date of the accrual period falls
on the 31st of a month, it will be changed to the 30th of that month. 2. If
the last date of the accrual period falls on the 31st of a month, it will be
changed to the 1st of the next month. The accrual factor is calculated as the number of accrued
days divided by 360. |
Actual/Actual (ISMA-99) |
This accrual method is primarily related to bonds. In the context of accrual factors, the time
in years is calculated as follows: if the period is less than one year the
accrual factor is equal to the actual number of days between the effective
date (d_e) and the terminating date (d_t) divided by the number of days in
the period from (d_t – 1 year) to d_t (either 365 or 366). If the period is greater than one year, the
accrual factor is equal to the number of whole years plus the accrual of a
stub period calculated as above. In
the context of bonds, there are two ISMA-99 methods: |
Actual/Actual (ISDA) |
The number of accrued days is equal to the actual number
of days between the effective date and the terminating date. The accrual factor is the sum of the
accrued days falling in a non-leap year divided by 365 and the accrued days
falling in a leap year divided by 366. |
30/360 (Old) |
This method is old and should not be used. This method used to be labeled 30/360
(ISDA). |
30E/360 (Old) |
This method is old and should not be used. This method used to be labeled 30E/360
(ISDA). |
30/360 (SIA) |
The number of accrued days is calculated on the basis of a
year of 360 days with 12 30-day months, subject to the following rules: 1.
If the last date of the accrual period is the
last day of February and the first date of the period is the last day of
February, then the last date of the period will be changed to the 30th. 2. If
the first date of the accrual period falls on the 31st of a month or is the
last day of February, that date will be changed to the 30th of the month. 3. If
the first date of the accrual period falls on the 30th of a month after
applying (2) above, and the last date of the period falls on the 31st of a
month, the last date will be changed to the 30th of the month. The accrual factor is calculated as the number of accrued
days divided by 360. Note that these
rules assume that the security follows the end-of-month rule. (see the Date Generation
Functions FINCAD Math
Reference document.) If the security does not follow the end-of-month
rule, then 30/360 (ISDA) should be used. |
30/360 (BMA) |
The number of accrued days is calculated on the basis of a
year of 360 days with 12 30-day months, subject to the following rules: 1.
If the first date of the accrual period falls
on the 31st of a month or is the last day of February, the date will be
changed to the 30th. 2. If
the first date of the accrual period falls on the 30th of the month after
applying 1) above, and the last date of the accrual period falls on the 31st
of the month, the last date will be changed to the 30th. The accrual factor is calculated as the number of accrued
days divided by 360. Note that prior
to 1997, the BMA was known as the PSA, and this method was referred to as
30/360 (PSA). |
30/360 (German) |
The number of accrued days is calculated on the basis of a
year of 360 days with 12 30-day months, subject to the following rules: 1.
If either the first date or last date of the
accrual period falls on the 31st of a month, that date will be changed to the
30th. 2. If
either the first date or last date of the accrual period is the last day of
February, that date will be changed to the 30th. The accrual factor is calculated as the number of accrued
days divided by 360. |
Bus/252 |
The number of accrued days is calculated as the number of
market days in the accrual period. The
accrual factor is calculated as the number of accrued (market) days divided
by 252. |
Actual/365L |
The number of accrued days is calculated as the actual
number of days between the effective date and the terminating date. This number is divided by 366 if the
terminating date falls in a leap year and 365 otherwise. |
NL365 |
The number of days is calculated as the actual number of
days between the effective date and the terminating date without including
any occurrences of the leap day, February 29th. This number is divided by 365. |
The main
differences between the various 30/360 methods is the treatment of dates
landing on the 31st of a month, or the end of February. The ISMA, ISDA, and 30E+/360 methods make
adjustments for dates landing on the 31st of a month, but not for dates landing
on the last day of February. The SIA,
BMA, and German methods make adjustments for dates landing on the 31st of a
month, as well as for dates landing on the last day of February.
There are three main accrual switches used in FINCAD:
sw_376
Switch Value |
Accrual Method |
1 |
actual/365 (fixed) (eom) |
2 |
actual/360 (eom) |
3 |
actual/365 (actual) (eom) |
4 |
30/360 (ISDA) (eom) |
5 |
30E/360 (30/360 ISMA) (eom) |
6 |
30E+/360 (eom) |
7 |
actual/actual (ISMA-99 Ultimo) (eom) |
8 |
actual/actual (ISDA) (eom) |
9 |
30/360 (old) (eom) |
10 |
30E/360 (old) (eom) |
11 |
actual/365 (fixed) |
12 |
actual/360 |
13 |
actual/365 (actual) |
14 |
30/360 (ISDA) |
15 |
30E/360 (30/360 ISMA) |
16 |
30E+/360 |
17 |
actual/actual (ISMA-99) |
18 |
actual/actual (ISDA) |
19 |
30/360 (old) |
20 |
30E/360 (old) |
This switch is used by bond functions that are
from versions prior to Version 9. It is
a dual purpose switch that is used to define the accrual method, as well as the
end-of-month rule.
sw_1102
Switch Value |
Accrual Method |
1 |
actual/actual (ISMA-99) |
2 |
actual/actual (ISDA) |
3 |
actual/365 (actual) |
4 |
actual/365 (fixed) |
5 |
actual/360 |
6 |
30E/360 (30/360 ISMA) |
7 |
30E+/360 |
8 |
30/360 (SIA) |
9 |
30/360 (ISDA) |
10 |
30/360 (BMA) |
11 |
30/360 (German) |
12 |
bus/252 |
13 |
actual/365L |
14 |
NL365 |
This switch is used by bond functions that are
from Version 9 or later. It includes
some accrual methods that sw_376 does not, and is strictly an accrual method
switch. Bond functions using this switch
will have an additional switch indicating the end-of-month rule.
sw_331
Switch Value |
Accrual Method |
1 |
actual/365 (fixed) |
2 |
actual/360 |
3 |
actual/365 (actual) |
4 |
30/360 (ISDA) |
5 |
30E/360 (30/360 ISMA) |
6 |
30E+/360 |
7 |
actual/actual (ISMA-99) |
8 |
actual/actual (ISDA) |
9 |
30/360 (old) |
10 |
30E/360 (old) |
11 |
30/360 (SIA) |
12 |
30/360 (BMA) |
13 |
30/360 (German) |
14 |
actual/365L |
15 |
NL365 |
This switch is widely used in many areas, such as
swaps, interest rate derivatives, credit derivatives, and others.
The supported accrual methods described above are used
throughout FINCAD functions. Note that
not all methods are supported by all functions that use accrual methods. Specifically, the Bus/252 accrual method is
only supported by functions new to Version 9 or later. In addition, there are FINCAD functions for
calculating the number of accrued days, the accrual factor, or the accrued
interest using a specific method. These
functions are:
aaAccrual_days(d_e, d_t, acc)
Calculates the number of days between two dates according
to an accrual method.
aaAccrual_factor(d_e, d_t, acc)
Calculates the accrual factor for a time period according
to an accrual method.
aaAccrual_factor2(d_e, d_t, d_cycle, freq, acc, eom, hl)
Calculates the accrual factor that applies between two
dates using the appropriate accrual method (day count basis).
aaAccrued(princ_m,
cpn, freq, d_n_cf, d_v, d_prev_cf, acc)
Calculates accrued interest according to an accrual
method.
aaAccrual_days_act252(d_e,
d_t, hl)
Calculates the number of accrual days between two dates
using the Bus/252 accrual method. Days
counted are market days only.
aaAccrual_factor_act252(d_e,
d_t, hl)
Calculates the accrual factor for a time period using the Bus/252
accrual method.
aaAccrued_act252(princ_m,
cpn, freq, d_v, d_prev_cf, hl)
Calculates accrued interest using the Bus/252 accrual
method.
Input Argument |
Description |
d_e |
effective date of
the accruing period |
d_t |
termination date
of the accruing period |
d_cycle |
date from which coupon periods are generated only from
act/act ISMA-99 |
Acc |
accrual method |
Eom |
end-of-month rule
(used by actual/actual (ISMA-99)) |
Hl |
holiday list (for
act252 and actual/actual (ISMA-99) functions only) |
princ_m |
principal at
maturity |
Cpn |
Coupon |
Freq |
coupon frequency
(used by actual/actual (ISMA-99)) |
d_n_cf |
next cash flow
date |
d_v |
value (settlement)
date |
d_prev_cf |
previous cash
flow date |
Acc |
accrual method |
aaAccrual_days and aaAccrual_days_act252
Output |
Description |
Days |
number of accrual
days for given accrual method |
aaAccrual_factor, aaAccrual_factor_act252 and
aaAccrual_factor2
Output |
Description |
acc_fac |
accrual factor
for given accrual method |
aaAccrued and aaAccrued_act252
Output |
Description |
acc_int |
accrued interest |
Suppose d_e (effective date of the accruing period) =
25-Oct-1996 and d_t (termination date of the accruing period) = 31-Dec-1996. Using aaAccrual_days and
aaAccrual_factor
with various accrual methods, we get:
Results
Day Count |
Number of Accrual Days |
Accrual Factor |
Act/365 (fixed) |
67 |
0.183561644 |
Act/360 |
67 |
0.186111111 |
Actual/365 (actual) |
67 |
0.183561644 |
30/360 (ISDA) |
66 |
0.183333333 |
30E/360 |
65 |
0.180555556 |
30E+/360 |
66 |
0.183333333 |
Actual/Actual (ISMA-99) |
67 |
0.183060109 |
Actual/Actual (ISDA) |
67 |
0.183060109 |
30/360 (Old) |
66 |
0.183333333 |
30E/360 (Old) |
66 |
0.183333333 |
30/360 (SIA) |
66 |
0.183333333 |
30/360 (PSA) |
66 |
0.183333333 |
30/360 (German) |
65 |
0.180555556 |
Actual/365L |
67 |
0.183060109 |
NL365 |
67 |
0.183561644 |
Suppose d_e (effective date of the accruing period) = 27-Jan-1998 and d_t (termination date of the
accruing period) = 1-Feb-1999. Using aaAccrual_days
and aaAccrual_factor
with various accrual methods, we get:
Results
Day Count |
Number of Accrual Days |
Accrual Factor |
Act/365 (fixed) |
370 |
1.01369863 |
Act/360 |
370 |
1.027777778 |
Actual/365 (actual) |
370 |
1.01369863 |
30/360 (ISDA) |
364 |
1.011111111 |
30E/360 |
364 |
1.011111111 |
30E+/360 |
364 |
1.011111111 |
Actual/Actual (ISMA-99) |
370 |
1.01369863 |
Actual/Actual (ISDA) |
370 |
1.01369863 |
30/360 (Old) |
365 |
1.013888889 |
30E/360 (Old) |
364 |
1.011111111 |
30/360 (SIA) |
364 |
1.011111111 |
30/360 (PSA) |
364 |
1.011111111 |
30/360 (German) |
364 |
1.011111111 |
Actual/365L |
370 |
1.01369863 |
NL365 |
370 |
1.01369863 |
Suppose the accrual days and accrual factor using the Bus/252
method are required for various effective and terminating dates given the
following table of holidays:
1-Jan-2005 |
21-Feb-2005 |
14-Apr-2005 |
23-May-2005 |
4-Jul-2005 |
4-Sep-2005 |
9-Oct-2005 |
23-Nov-2005 |
25-Dec-2005 |
26-Dec-2005 |
Using aaAccrual_days_act252 and
aaAccrual_factor_act252,
we get:
Results
Effective Date |
Terminating Date |
Number of Accrual Days |
Accrual Factor |
1-Jan-2005 |
1-Jan-2006 |
254 |
1.007936508 |
22-Mar-2005 |
22-Apr-2005 |
22 |
0.087301587 |
10-Jun-2005 |
23-Oct-2005 |
95 |
0.376984127 |
30-Aug-2005 |
23-Oct-2005 |
39 |
0.154761905 |
28-Sep-2005 |
25-Dec-2005 |
62 |
0.246031746 |
[1]
Christie, David, (2003), Accrued Interest &
Yield Calculations and Determination of
[2]
Mayle, Jan. (1993), Standard
Securities Calculation Methods: Fixed Income Securities Formulas, Volume 1,
Third Edition,
[3]
Annex to the 2000
ISDA Definitions, (2000), New York, International Swap Dealers
Association, Inc.
[4]
BMA Uniform
Practices, Second Edition, (1999),
Disclaimer
With respect to this document,
FinancialCAD Corporation (“FINCAD”) makes no warranty either express or
implied, including, but not limited to, any implied warranty of merchantability
or fitness for a particular purpose. In no event shall FINCAD be liable to
anyone for special, collateral, incidental, or consequential damages in
connection with or arising out of the use of this document or the information
contained in it. This document should not be relied on as a substitute for your
own independent research or the advice of your professional financial,
accounting or other advisors.
This information is subject to change
without notice. FINCAD assumes no responsibility for any errors in this
document or their consequences and reserves the right to make changes to this
document without notice.
Copyright
Copyright © FinancialCAD Corporation 2008.
All rights reserved.