Purpose
Return value
Syntax
=ODDLPRICE(sd,md,id,rate,yld,redem,freq,[basis])
- sd - Settlement date of the security.
- md - Maturity date of the security.
- id - Last interest date of security.
- rate - Interest rate of security.
- yld - Annual required rate of return.
- redem - Redemption value per $100 face value.
- freq - Coupon payments per year (annual = 1, semiannual = 2; quarterly = 4).
- basis - [optional] Day count basis (see below, default =0).
Using the ODDLPRICE function
Some bonds have an irregular first or last period, so interest payments don’t fit a normal schedule. To calculate the price of a bond with an irregular last period, you can use the ODDLPRICE function. The ODDLPRICE Function returns the price per $100 face value of a security having a short or long last period.
Example
Assume we need to calculate the price per $100 face value of a bond with a last interest date of 15-Oct-2017 and a settlement date of 5-Feb-2018. The bond matures on 15-Jun-2018, and pays a coupon rate of 5% with a required return of 6%. Payments are semi-annual, the day count basis is US 30/360, and the redemption value is $100. In the example shown, the formula in F5 is:
=ODDLPRICE(C8,C10,C9,C6,C7,C5,C11,C12)
With these inputs, the ODDLPRICE function returns 99.61, with currency number format applied.
Entering dates
In Excel, dates are serial numbers . Generally, the best way to enter valid dates is to use cell references, as shown in the example. To enter valid dates directly inside a function, the DATE function is the best option. To illustrate, the formula below has all values hardcoded. The DATE function is used to supply each of the three required dates:
=ODDLPRICE(DATE(2018,2,5),DATE(2018,6,15),DATE(2017,10,15),0.05,0.06,100,2,0)
Basis
The basis argument controls how days are counted. The ODDLPRICE function allows 5 options (0-4) and defaults to zero, which specifies US 30/360 basis . This article on Wikipedia provides a detailed explanation of available conventions.
| Basis | Day count |
|---|---|
| 0 or omitted | US (NASD) 30/360 |
| 1 | Actual/actual |
| 2 | Actual/360 |
| 3 | Actual/365 |
| 4 | European 30/360 |
Notes
- In Excel, dates are serial numbers .
- All dates, plus frequency and basis , are truncated to integers.
- If dates are invalid (i.e. not actually dates) ODDLPRICE returns #VALUE!
- ODDLPRICE returns #NUM when: ( maturity > settlement > last_interest ) is NOT true Basis is out-of-range
Purpose
Return value
Syntax
=ODDLYIELD(sd,md,ld,rate,pr,redem,freq,[basis])
- sd - Settlement date of the security.
- md - Maturity date of the security.
- ld - Last interest date of security.
- rate - Interest rate of security.
- pr - Price per $100 face value.
- redem - Redemption value per $100 face value.
- freq - Coupon payments per year (annual = 1, semiannual = 2; quarterly = 4).
- basis - [optional] Day count basis (see below, default =0).
Using the ODDLYIELD function
Some bonds have an irregular first or last period, so interest payments don’t fit a normal schedule. To calculate the yield of a bond with an irregular last period, you can use the ODDLYIELD function. The ODDLYIELD function returns the yield of a security with a short or long last period as a percentage.
Example
In the example shown, we want to calculate the yield of a bond with a last interest date of 15-Oct-2017 and a settlement date of 5-Feb-2018. The bond matures on 15-Jun-2018, and pays a coupon rate of 5%. Payments are semi-annual, the day count basis is US 30/360, and the redemption value is $100. In the example shown, the formula in F5 is:
=ODDLYIELD(C9,C11,C10,C7,C5,C6,C12,C13)
With these inputs, the ODDLYIELD function returns 6.32%, with the percentage number format applied.
Entering dates
In Excel, dates are serial numbers . Generally, the best way to enter valid dates is to use cell references, as shown in the example. To enter valid dates directly inside a function, the DATE function is the best option. To illustrate, the formula below has all values hardcoded, with the DATE function used to enter the three required dates:
=ODDLYIELD(DATE(2018,2,5),DATE(2018,6,15),DATE(2017,10,15),0.05,99.5,100,2,0)
Basis
The basis argument controls how days are counted. The ODDLYIELD function allows 5 options (0-4) and defaults to zero, which specifies US 30/360 basis . This article on Wikipedia provides a detailed explanation of available conventions.
| Basis | Day count |
|---|---|
| 0 or omitted | US (NASD) 30/360 |
| 1 | Actual/actual |
| 2 | Actual/360 |
| 3 | Actual/365 |
| 4 | European 30/360 |
Notes
- In Excel, dates are serial numbers .
- All dates, plus frequency and basis , are truncated to integers.
- If any dates are invalid (i.e. not actually dates) ODDLYIELD returns #VALUE!
- ODDLYIELD returns #NUM when: ( maturity > settlement > last_interest ) is NOT true rate < 0 or pr <= 0 basis is out-of-range