Eclipse Software, Inc.  Coupon Interest 
ESI Home  Architecture  Glossary  Links  Contact Us  Site Info 
Contents
Key Links 
On this page we address the handling of coupon interest on fixed income instruments. It is a companion page to Dividends. We look at how a securities firm (OurCo) should address trades, positions in firm and customer accounts, fails, and stock borrow/loan arrangements. We are interested in the accrual and cash accounting, the receivable/payables (if any), and the actual cash movements.
We start with XYZ Corp. It has issued bonds (XYZ7.2) that have a fixed 7.2% interest rate and pay quarterly on 3/01, 6/01, 9/01, and 12/01. Holders of record are determined on the last day of the preceding month. The bonds use the 30U/360 day count convention.
You are probably aware that transactions in fixed income instruments typically include an interest bought/sold amount (this is the reason the trial balance will be different from that for dividends), which leads into figuration routines and everything having to do with day count conventions and business day conventions.
In this section we look in detail at buying and selling a bond and how income is recorded.
With dividends the income/expense is recognized and realized with the dividend itself. The reason is that the dividends are elective on the part of the corporation declaring them (even on preferred stock). For bonds, however, the payments are part of the contractual terms of the issue, so income can be recognized during the period it is held, even if no coupon is received during that period.
The coupon interest is (basically) distributed on a straightline basis over the holding period between payments (see the figure 30U/360 Single Period). If you buy a bond three days into a coupon period, you will be buying three days' worth of interest. This gives rise to the sawtooth figures you are probably familiar with (e.g., 30U/360 Multiple Periods). Also see [SecuritiesOps02], p. 121.
Note that figuration of trade price and interest is on a settlement date basis. With stocks the market price on a given date is for a trade that follows normal settlement (e.g., T+3). The same applies to bonds (though "normal settlement" may be a different number of days). Further, the interest bought/sold is based on trade settlement date, not trade date. People sometimes get confused because trader inventory (and realized and unrealized P&L) is reported on a trade date basis, while interest income/expense is calculated on the settlement date position.
OurCo's trading strategy is to buy the XYZ7.2 bonds on 6/03 (a Monday), hold them for two days, and then sell them.
Account Codes
 
XYZ's bonds trade on a T+3 basis. On 6/03 OurCo trader 9012 buys $10,000 par of XYZ7.2 bonds at a price of 90 from counterparty 7334. How much interest does trader 9012 buy?
The most recent record date was 5/31. There is no interest bought/sold on the payment date, 6/01. On 6/02 there's one day's interest, and so on. So, trader 9012 is buying 5 days' interest (remember that we are using the settlement date, 6/06, not the trade date). $10,000 par bonds have $2 in interest per "day" ($10,000 * 0.072 / 360). To keep the math simple we will assume that the bond trades at 90 the entire period we are considering. So, OurCo will have to pay a total of $9,010: $9,000 in principal and $10 in interest.
Our Framework records the transaction as given in the following table. (The model is introduced in Data Structures; additional examples can be found in Transaction Operations.) The register information folds the distribution (both money and quantity) onto several rows to save space. The account codes BUP and BUI denote the long principal and interest bought and are described in Money Accounts.
Firm Buy of $10,000 bonds XYZ7.2 on 6/03, Settlement on 6/06  



The positions and balances are updated as shown below (we assume the trader has no earlier activity in this security). The trade date (TE) figures are first, followed by settlement date (SE). Positions (Q) and balances (M) are given for each date basis. The first amount (always 0 in this example) is the beginning balance for the month, the next amount is day 1, etc. 6/08 and 6/09 are a weekend, so we abbreviate them with an ellipsis. The values are the same as for 6/07. Similarly, all days after 6/10 have the same values as on 6/10. As discussed in Positions and Balances, future periods are updated when transactions are entered. This is a key component of Temporal Independence.
Positions (Q) and Balances (M) — as of 6/03  

6/03  6/04  6/05  6/06  6/07  ...  6/10  ...  
TE  Q  PRIM  T  9012  XYZ7.2  0  0  0  10,000  10,000  10,000  10,000  10,000  ...  10,000  ...  
TE  Q  PRIM  C  7334  XYZ7.2  0  0  0  10,000  10,000  10,000  10,000  10,000  ...  10,000  ...  
TE  M  PRIM  G  BUP  XYZ7.2  9012  0  0  0  9,000  9,000  9,000  9,000  9,000  ...  9,000  ...  
TE  M  PRIM  G  BUI  XYZ7.2  9012  0  0  0  10  10  10  10  10  ...  10  ...  
TE  M  PRIM  C  7334  XYZ7.2  0  0  0  9,010  9,010  9,010  9,010  9,010  ...  9,010  ...  
SE  Q  PRIM  T  9012  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  10,000  ...  
SE  Q  PRIM  C  7334  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  10,000  ...  
SE  M  PRIM  G  BUP  XYZ7.2  9012  0  0  0  0  0  0  9,000  9,000  ...  9,000  ...  
SE  M  PRIM  G  BUI  XYZ7.2  9012  0  0  0  0  0  0  10  10  ...  10  ...  
SE  M  PRIM  C  7334  XYZ7.2  0  0  0  0  0  0  9,010  9,010  ...  9,010  ... 
What happens at endofday on 6/03?
Nothing. We won't begin earning interest until we have a settlement date position, which occurs on 6/06.
Normally the price would be changing, so we would have unrealized P&L. If there were other trading going on in the bond, we could also have realized P&L.
Nothing happens. We assume the price is constant, and we don't accrue interest as we have no settlement date position.
We sell the bond, again at par. The counterparty is 7675.
How much interest is there associated with the bond? Because the third calendar day out is a Saturday, settlement date will be 6/10. This means there will be 9 days' interest, or $18.
Activity through 6/05  



As discussed in Inventory and Trading P&L, having separate principal accounts is extremely useful in the calculation of realized P&L because of the requirement to differentiate between a BUY and a reversal of a SELL (and vice versa). This situation does not apply to interest; it acts as simply as unrealized P&L does. We show two accounts here simply for parallelism with inventory.
This does mean that BUI and SEI will also require a housekeeping step to combine them in the database. We will always present the positions and balances after that step has been performed.
Because we still have no settled position (the SEQ rows for a trading account), there will be no interest accrual.
Positions (Q) and Balances (M) — as of 6/05  

6/03  6/04  6/05  6/06  6/07  ...  6/10  ...  
TE  Q  PRIM  T  9012  XYZ7.2  0  0  0  10,000  10,000  0  0  0  ...  0  ...  
TE  Q  PRIM  C  7334  XYZ7.2  0  0  0  10,000  10,000  10,000  10,000  10,000  ...  10,000  ...  
TE  Q  PRIM  C  7675  XYZ7.2  0  0  0  0  0  10,000  10,000  10,000  ...  10,000  ...  
TE  M  PRIM  G  BUP  XYZ7.2  9012  0  0  0  9,000  9,000  0  0  0  ...  0  ...  
TE  M  PRIM  G  BUI  XYZ7.2  9012  0  0  0  10  10  8  8  8  ...  8  ...  
TE  M  PRIM  C  7334  XYZ7.2  0  0  0  9,010  9,010  9,010  9,010  9,010  ...  9,010  ...  
TE  M  PRIM  C  7675  XYZ7.2  0  0  0  0  0  9,018  9,018  9,018  ...  9,018  ...  
SE  Q  PRIM  T  9012  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  0  ...  
SE  Q  PRIM  C  7334  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  10,000  ...  
SE  Q  PRIM  C  7675  XYZ7.2  0  0  0  0  0  0  0  0  ...  10,000  ...  
SE  M  PRIM  G  BUP  XYZ7.2  9012  0  0  0  0  0  0  9,000  9,000  ...  0  ...  
SE  M  PRIM  G  BUI  XYZ7.2  9012  0  0  0  0  0  0  10  10  ...  8  ...  
SE  M  PRIM  C  7334  XYZ7.2  0  0  0  0  0  0  9,010  9,010  ...  9,010  ...  
SE  M  PRIM  C  7675  XYZ7.2  0  0  0  0  0  0  0  0  ...  9,018  ... 
OurCo has its first settlement date position. Two things happen. First, we assume the trade settles (for the fail situation, see Fails). Second, we accrue one day's interest. We update our transaction information as follows:
Settlement and Interest Accrual on 6/06  



Register entry 2135 is the receive of the securities against payment of cash. It closes the open BUY through Association 2188.
Register entry 2148 is the interest accrual. It increases Interest Bought (BUI) by $2, with the other side being Interest Income (BUA — the "A" standards for "accrual"). If you were printing a trader P&L report, you would show trader 9012 earning interest income even though the trader has no (trade date) position.
Both register entries have trade date and settlement date of 6/06. Posting these entries results in the following positions and balances:
Positions (Q) and Balances (M) — as of 6/06  

6/03  6/04  6/05  6/06  6/07  ...  6/10  ...  
TE  Q  PRIM  T  9012  XYZ7.2  0  0  0  10,000  10,000  0  0  0  ...  0  ...  
TE  Q  PRIM  C  7334  XYZ7.2  0  0  0  10,000  10,000  10,000  0  0  ...  0  ...  
TE  Q  PRIM  C  7675  XYZ7.2  0  0  0  0  0  10,000  10,000  10,000  ...  10,000  ...  
TE  Q  PRIM  L  BOX  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  10,000  ...  
TE  M  PRIM  G  BUP  XYZ7.2  9012  0  0  0  9,000  9,000  0  0  0  ...  0  ...  
TE  M  PRIM  G  BUI  XYZ7.2  9012  0  0  0  10  10  8  6  6  ...  6  ...  
TE  M  PRIM  G  BUA  XYZ7.2  9012  0  0  0  0  0  0  2  2  ...  2  ...  
TE  M  PRIM  G  CSH  XYZ7.2  9012  0  0  0  0  0  0  9,010  9,010  ...  9,010  ...  
TE  M  PRIM  C  7334  XYZ7.2  0  0  0  9,010  9,010  9,010  0  0  ...  0  ...  
TE  M  PRIM  C  7675  XYZ7.2  0  0  0  0  0  9,018  9,018  9,018  ...  9,018  ...  
SE  Q  PRIM  T  9012  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  0  ...  
SE  Q  PRIM  C  7334  XYZ7.2  0  0  0  0  0  0  0  0  ...  0  ...  
SE  Q  PRIM  C  7675  XYZ7.2  0  0  0  0  0  0  0  0  ...  10,000  ...  
SE  Q  PRIM  L  BOX  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  10,000  ...  
SE  M  PRIM  G  BUP  XYZ7.2  9012  0  0  0  0  0  0  9,000  9,000  ...  0  ...  
SE  M  PRIM  G  BUI  XYZ7.2  9012  0  0  0  0  0  0  12  12  ...  6  ...  
SE  M  PRIM  G  BUA  XYZ7.2  9012  0  0  0  0  0  0  2  2  ...  2  ...  
SE  M  PRIM  G  CSH  XYZ7.2  9012  0  0  0  0  0  0  9,010  9,010  ...  9,010  ...  
SE  M  PRIM  C  7334  XYZ7.2  0  0  0  0  0  0  0  0  ...  0  ...  
SE  M  PRIM  C  7675  XYZ7.2  0  0  0  0  0  0  0  0  ...  9,018  ... 
Though the interest is accrued on a settlement date basis, the resulting journal entry updates both date bases (this is true for all register entries). You may not be interested in the trade date interest income, but that is a reporting issue, not a database issue. Position and Balances discusses how this information is managed within the Framework.
There is no trading or settlement activity on 6/07 (the outstanding SELL reaches settlement date on 6/10). Because 6/07 is a Friday, we will accrue 3 days of interest, or $6. The register entry will have trade date and settlement date of 6/07.
Interest Accrual on 6/07  



This leaves us with the following:
Positions (Q) and Balances (M) — as of 6/07  

6/03  6/04  6/05  6/06  6/07  ...  6/10  ...  
TE  Q  PRIM  T  9012  XYZ7.2  0  0  0  10,000  10,000  0  0  0  ...  0  ...  
TE  Q  PRIM  C  7334  XYZ7.2  0  0  0  10,000  10,000  10,000  0  0  ...  0  ...  
TE  Q  PRIM  C  7675  XYZ7.2  0  0  0  0  0  10,000  10,000  10,000  ...  10,000  ...  
TE  Q  PRIM  L  BOX  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  10,000  ...  
TE  M  PRIM  G  BUP  XYZ7.2  9012  0  0  0  9,000  9,000  0  0  0  ...  0  ...  
TE  M  PRIM  G  BUI  XYZ7.2  9012  0  0  0  10  10  8  6  0  ...  0  ...  
TE  M  PRIM  G  BUA  XYZ7.2  9012  0  0  0  0  0  0  2  8  ...  8  ...  
TE  M  PRIM  G  CSH  XYZ7.2  9012  0  0  0  0  0  0  9,010  9,010  ...  9,010  ...  
TE  M  PRIM  C  7334  XYZ7.2  0  0  0  9,010  9,010  9,010  0  0  ...  0  ...  
TE  M  PRIM  C  7675  XYZ7.2  0  0  0  0  0  9,018  9,018  9,018  ...  9,018  ...  
SE  Q  PRIM  T  9012  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  0  ...  
SE  Q  PRIM  C  7334  XYZ7.2  0  0  0  0  0  0  0  0  ...  0  ...  
SE  Q  PRIM  C  7675  XYZ7.2  0  0  0  0  0  0  0  0  ...  10,000  ...  
SE  Q  PRIM  L  BOX  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  10,000  ...  
SE  M  PRIM  G  BUP  XYZ7.2  9012  0  0  0  0  0  0  9,000  9,000  ...  0  ...  
SE  M  PRIM  G  BUI  XYZ7.2  9012  0  0  0  0  0  0  12  18  ...  0  ...  
SE  M  PRIM  G  BUA  XYZ7.2  9012  0  0  0  0  0  0  2  8  ...  8  ...  
SE  M  PRIM  G  CSH  XYZ7.2  9012  0  0  0  0  0  0  9,010  9,010  ...  9,010  ...  
SE  M  PRIM  C  7334  XYZ7.2  0  0  0  0  0  0  0  0  ...  0  ...  
SE  M  PRIM  C  7675  XYZ7.2  0  0  0  0  0  0  0  0  ...  9,018  ... 
This is settlement date for the SELL. As discussed in Transaction Operations, if the transaction fails to settle, everything in the system would be exactly as it is above on Day 5.
Even if the transaction fails, we won't accrue any interest because the trader's settlement date position is flat and Interest Bought has the appropriate value (zero).
We will go ahead and assume settlement, reflected in register entry 2158 and association 2193.
Settlement on 6/10  



Our final positions and balances are:
Positions (Q) and Balances (M) — as of 6/10  

6/03  6/04  6/05  6/06  6/07  ...  6/10  ...  
TE  Q  PRIM  T  9012  XYZ7.2  0  0  0  10,000  10,000  0  0  0  ...  0  ...  
TE  Q  PRIM  C  7334  XYZ7.2  0  0  0  10,000  10,000  10,000  0  0  ...  0  ...  
TE  Q  PRIM  C  7675  XYZ7.2  0  0  0  0  0  10,000  10,000  10,000  ...  0  ...  
TE  Q  PRIM  L  BOX  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  0  ...  
TE  M  PRIM  G  BUP  XYZ7.2  9012  0  0  0  9,000  9,000  0  0  0  ...  0  ...  
TE  M  PRIM  G  BUI  XYZ7.2  9012  0  0  0  10  10  8  6  0  ...  0  ...  
TE  M  PRIM  G  BUA  XYZ7.2  9012  0  0  0  0  0  0  2  8  ...  8  ...  
TE  M  PRIM  G  CSH  XYZ7.2  9012  0  0  0  0  0  0  9,010  9,010  ...  8  ...  
TE  M  PRIM  C  7334  XYZ7.2  0  0  0  9,010  9,010  9,010  0  0  ...  0  ...  
TE  M  PRIM  C  7675  XYZ7.2  0  0  0  0  0  9,018  9,018  9,018  ...  0  ...  
SE  Q  PRIM  T  9012  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  0  ...  
SE  Q  PRIM  C  7334  XYZ7.2  0  0  0  0  0  0  0  0  ...  0  ...  
SE  Q  PRIM  C  7675  XYZ7.2  0  0  0  0  0  0  0  0  ...  0  ...  
SE  Q  PRIM  L  BOX  XYZ7.2  0  0  0  0  0  0  10,000  10,000  ...  0  ...  
SE  M  PRIM  G  BUP  XYZ7.2  9012  0  0  0  0  0  0  9,000  9,000  ...  0  ...  
SE  M  PRIM  G  BUI  XYZ7.2  9012  0  0  0  0  0  0  12  18  ...  0  ...  
SE  M  PRIM  G  BUA  XYZ7.2  9012  0  0  0  0  0  0  2  8  ...  8  ...  
SE  M  PRIM  G  CSH  XYZ7.2  9012  0  0  0  0  0  0  9,010  9,010  ...  8  ...  
SE  M  PRIM  C  7334  XYZ7.2  0  0  0  0  0  0  0  0  ...  0  ...  
SE  M  PRIM  C  7675  XYZ7.2  0  0  0  0  0  0  0  0  ...  0  ... 
As you would expect, we end up with an increase in cash of $8.00 and in interest income of $8.00.
There are at least three contexts in which interest must be calculated:
We saw examples of the first two earlier. In this section we treat interest figuration more generally. We will not go into the complete details of the algorithms here (those are covered in Day Count Conventions), but only highlight the major considerations. We will again discuss only buys/long positions, but sells and short positions are completely analogous.
Fortunately the interest routines are normally expressed as the calculation of days between two dates, so they can be used for all three purposes.
The interest figuration routine will have to consider the following parameters:
These will be discussed in more detail below.
We have seen that buying a bond (or other fixed income instrument) that has coupon payments normally includes buying an amount of interest that reflects how far you're into a coupon period (based on trade settlement date). Periods run from the day after record date to the next record date, with interest bought on payment date equal to zero. In many markets (e.g., US Treasuries) the payment is on the day after record date, so the interest bought starts at zero and then increases. If there is a gap between record date and payment date, you can have a period of negative accrued interest from the day after record date until it hits zero on payment date.
To utilize the routines, the start date of the range is the day after the record date immediately preceding the trade settlement date. The end date of the range is the trade settlement date.
The example we've been discussing has payment on the day after record date, so it has the same pattern as a US Treasury (first day of the period has zero interest bought/sold).
First, recall that interest income and expense is based on positions, not trades, and that it is computed on a settlement date basis.
As with trading P&L, Interest Income/Expense is best thought of as the other side of an adjustment to the balance sheet, in this case Interest Bought/Sold. In our example we spoke in terms such as "one day's interest", but it is better to proceed by determining what the balance of Interest Bought/Sold should be, with the posting necessary to establish that value also determining Interest Income/Expense.
You see this in the endofday settlement date balance for BUI on 6/06, after the first accrual. The balance is $12.00, which is what the routine will actually calculate; the $2.00 of the journal entry is simply what is needed to get there.
The reasons for the balance sheet approach are much the same as for treating unrealized P&L on an inventory (fair value) basis rather than an income statement basis:
Focusing on the balance sheet also brings the two figuration routines (trade Interest Bought/Sold and Interest Income/Expense) to a common footing. Looking at the balances in the earlier example, it appears as if the interest income/expense accrual is setting the Interest Bought/Sold balance to the value it would be for a trade settling the following day to liquidate the position. We saw for the SELL that that is how it in fact worked out.
To use the figuration routines, proceed as with the trade Interest Bought/Sold, but set the ending date to the next settlement date. Note that this may not be the next calendar day, if the next calendar day is a nonbusiness day (e.g., holiday or weekend). There may be an adjustment for month end, which we cover below.
(As a check, once you are flat you expect to see balances only in cash and one or more profit & loss accounts. This is true not just for interest, but for dividends, trading P&L, and any other P&L situation. See [FASBCon6], ¶ 73.)
In terms of the sawtooth figure for Interest Bought/Sold on trades we referred to earlier, the balance in the account after the endofday accrual would appear to be the same figure, just shifted to the left to the next business date.
This is indeed true at a conceptual level, but there are two situations where it does not hold.
The Interest Bought/Sold drops on trades with settlement the day after record date. This is addressed in two steps:
For example, before the accrual a position of 10,000 in XYZ7.2 on 11/30 (the record date) will have an Interest Bought/Sold (BUI) balance of $178 (because we are using 30 days per month this is the 90th day of the period). We make a normal accrual to take it to the payment amount, $180.
BUI  Interest bought  $2 
BUA  Interest income  $2 
CPC  Coupon clearing  $180 
BUI  Interest bought  $180 
If payment date is not the day after record date, the balance in BUI after the first step above will be less than the full coupon amount. Offsetting by the full coupon amount in the second step will result in a negative balance, reflecting the negative accrued interest we mentioned earlier.
In the example we saw that the accrual for Friday, 6/07, took Interest Bought/Sold to the balance that will be credited by the SELL that will liquidate the position on Monday. The journal entry was for $6. Looking at it from an income and expense viewpoint, this is three days' income.
The rule is slightly different if the next business date is in the following month. For instance, if the last day of the month is Saturday, the general accounting rule is to match the income to the month. We can change our example so that the record date is 6/22 rather than 5/31. Our first trade is done on 6/25, settling 6/28.
Our Friday accrual will be done on 6/29. Rather than accruing $6, we would accrue $4, which takes Interest Bought/Sold to $16 rather than $18.
Our SELL reaches settlement date on 7/02, with a credit of $18 to Interest Bought/Sold. We assume again that it settles normally.
In this changed example, at endofday on 7/02 we will have $2 in Interest Bought/Sold, the excess of the $18 credit over the $16 balance brought forward. Because we have a zero position, our routine will generate the following journal entry to flatten out Interest Bought/Sold:
BUI  Inventory bought  $2 
BUA  Interest income  $2 
Besides flattening out the balance sheet, of course, it also credits us with the remaining $2 in income. Even though you have no settlement date position, you are still recognizing income.
The final positions and balances for 7/02 will be exactly the same as the 6/10 values given earlier.
There are numerous details associated with calculating interest in all its forms. At this point it's useful to take a step back and ask two fundamental questions:
Renting an Apartment

The various algorithms are discussed in detail on the page Day Count Conventions. Here we look at the question posed above: why is there more than one method?
First, there are inherent conflicts among the desired features.
A number of groups (in addition to the traders) have an interest and their own set of goals:
Group  Interests 

Management  Management has the most interest in accuracy based on the amount of time an investment is held. This is particularly true as they view it in the context of other interest/expense items. 
Operations  The focus is on interest bought/sold and the ease in calculating it. "Ease" means not only simplicity, but also consistency and the minimization of errors. Trade corrections (and – possibly – fails) are very expensive to process.
Operations also has a strong interest in calculating and processing coupon payments. 
Accounting  The focus is on interest income/expense. Ease is important, but not to the degree it is for Operations. 
Understanding the methods means understanding the conflicts and making decisions. The first decision is the period(s) you want to keep interest constant over.
There are basically three alternatives for the period for which you can have a constant interest increment.
Constant period  Implications 

Daily  Interest bought/sold on a trade goes up by the same amount every day. This implies that the coupon payments and total annual income are not constant, because of leap years. 
Daily by coupon period  Interest is constant for each day of a given coupon period, and each period has the same coupon payment. Payments are also constant by year. On the other hand, one day's interest may vary between periods. 
Monthly  All months, and thus coupon payments, are constant, but the days aren't. 
Bonds are quoted on an annual interest basis, e.g., 12% per year. The next step is to determine the daily interest rate.
For the "Daily" alternative above, the most common approaches are to divide the quoted interest rate by 360 or 365. 360 is slightly easier on the math and is the more common. You could use any fixed number (even 365.25), but only 360 and 365 are used in practice.
For "Daily by coupon" you first divide the quoted rate by the number of coupon periods in a year. You then divide that result by the number of days in the particular period (e.g., 182 or 183 for a semiannual coupon).
For "Monthly" you divide the quoted rate by 360 and take a standard 30 days per month. For argument's sake you could use 348 with 29 days per month, but in practice only 360 with 30 are used.
Note that none of these approaches take compounding into account.
The following table summarizes the discussion to this point.
Constant  Day Count Convention  Constant dollars per period  

Period  Days/Mo  Days/Yr  $/Day  $/Mo  $/Cpn  $/Yr  Discussion  
Daily  Actual  360  Yes  No  No  No  Method used for repo interest. This is Act/360.  
Daily  Actual  365  Yes  No  No  No  Basically similar to the above (Act/365 (Fixed)).  
Daily by coupon period  Actual  Actual  w/in pd  No  Yes  Yes  Each day in a given coupon period has the same interest, but may be different for other periods.
It is commonly used for US Treasury securities (Actual/Actual (ICMA)).  
Monthly  30  360  Split  Yes  Yes  Yes  The most common method for corporate bonds (the 30/360 conventions). We discuss the meaning of "Split" below. 
To take one row as an example, the Actual/Actual method assigns a constant amount of interest to each day within a given coupon period. The amount per month is not constant, though the amount per coupon period and year is.
The only remaining issue is the determination of the "Split" for 30/360.
As can be seen in the table above, the 30/360 day count convention has a number of very nice attributes. But there is a problem with handling daily interest.
The problem, of course, is that you want to have constant monthly interest, but the number of days per month is not constant. One approach would be to divide the quoted annual interest rate by 12 to get a constant monthly rate, and then divide that rate by the actual number of days in the month. The problem with this approach is operational: it is too easy to make errors in the computation, and errors are very expensive to correct.
The approach used in practice is to assign 30 days to each month. If the month has more or fewer days, an adjustment is made at the end of the month so that each month gets exactly 30 days of interest.
We consider two common methods used in practice to handle that "adjustment", reflecting conflicting emphases on interest bought and on interest earned. These are illustrated in the table below. The first row is the ICMA (European) standard (30E/360) and the second is that used in the USA (30U/360). The third row below is the Actual/Actual used for US Treasuries (Act/Act (ICMA)).
In the table we ignore the effects of nonsettlement days and monthends that were discussed above.
1Jun  ...  30Jun  1Jul  2Jul  ...  29Jul  30Jul  31Jul  1Aug  2Aug  
Days of Interest Bought  
30/360 ICMA  0  ...  29  30  31  ...  58  59  59  60  61 
30/360 USA  0  ...  29  30  31  ...  58  59  60  60  61 
Actual/Actual  0  ...  29  30  31  ...  58  59  60  61  62 
Daily Income  
30/360 ICMA  1  ...  1  1  1  ...  1  0  1  1  1 
30/360 USA  1  ...  1  1  1  ...  1  1  0  1  1 
Actual/Actual  1  ...  1  1  1  ...  1  1  1  1  1 
Monthtodate Income  
30/360 ICMA  1  ...  30  1  2  ...  29  29  30  1  2 
30/360 USA  1  ...  30  1  2  ...  29  30  30  1  2 
Actual/Actual  1  ...  30  1  2  ...  29  30  31  1  2 
The first block of rows shows the number of days of interest (not the dollar amount of interest) bought for a trade settling on the date given. June 1st is a coupon payment date, so there is no interest on that day.
The next two blocks of rows show daily interest (again in days of interest) and monthtodate interest.
In all cases the interest bought on the second day of the month is one higher than on the first day, with each day increasing until the adjustment point is reached. The ICMA and US approaches differ in the relative importance given to interest bought and to interest earned. For months with less than 31 days the approaches are identical, so we discuss only months with 31 days below.
Actual/Actual simply keeps going up each day.
The ICMA approach results in a more intuitive figuration of trade interest bought, which is a benefit to Operations and Trading. Interest bought increases each day until the last day of the month, with the 31st being unchanged from the 30th. It then goes up on the first of the next month by one day.
Under the US approach, it goes up through the 31st, and the first of the next month has the same value as the 31st, before it starts increasing again on the 2nd day of the following month.
The US approach is more intuitive for interest earned: interest income goes up each day through the 30th, with the amount unchanged on the 31st. This results in clearer P&L reporting.
Under the ICMA it increases through the 29th, stays unchanged on the 30th, and then goes up again on the 31st.
Given the relation of interest earned to the following day's interest bought discussed in an earlier section, this situation is unavoidable. You can't have both intuitive interest bought and intuitive monthtodate interest income.
We started this discussion of day count conventions by emphasizing the utility of understanding the reasons the various conventions were first developed. They were all developed to be suitable for a particular purpose (not just to confuse programmers!). If you understand the reasons, you should be able to develop the algorithms from scratch.
As to why there aren't more, there are. It's a balance among the goals of those involved in the marketplace. It's a dynamic process.
It is also important to remember that these methods were developed before computers were available. A method like 30/360, while "difficult" for programmers, has tremendous benefits for traders, operations, finance, and investors.
Finally, bond coupons do not exist in an investment vacuum. If you finance a corporate bond purchase via a repurchase agreement, the bond will typically earn interest on a 30/360 basis, while the repo incurs an expense on an Actual/360 basis (because repos don't have periodic payments, the variability per month and year is not a drawback).
Dividends are very similar to coupon payments at an architectural level. These are the only differences:
Dividend account  Coupon account  Comment 

DVC  CPC  The clearing account 
DVI  BUI  Dividend income → Interest bought 
DVX  SEI  Dividend expense → Interest sold 
Dividend register  Coupon register  Comment 

JNL DVI  JNL BUI  Journal for long trader positions 
JNL DVX  JNL SEI  Journal for short trader positions 
DIV PAY  CPN PAY  Coupon payable 
DIV REC  CPN REC  Coupon receivable 
The one area that changed is the trial balance (you may have noticed that we changed Dividend Income to Interest Bought, not to Interest Income). But everything else carries over directly: the actions of the issuer and custodian, trader longs and shorts, safekeeping, fails, borrows and loans, and the Box.
Copyright 20052021, Eclipse Software, Inc (ESI). Email: WebSite@eclipsesoftware.biz.