Its calculates the yield of a fixed-interest security with an irregular final interest period (different length from previous regular periods), using simple interest (no compounding).
Syntax
ODDLYIELD(Settlement; Maturity; Last_Interest_Date; Rate; Price; Repayment; Frequency; [Basis])
Arguments
| Parameter | Requirement | Description |
| Settlement | Required | Date of bond ownership transfer |
| Maturity | Required | Date of principal repayment |
| Last_Interest_Date | Required | Date of last regular interest payment before purchase |
| Rate | Required | Nominal annual interest rate (coupon rate) |
| Price | Required | Bond price as percentage of par value (par = 100) |
| Repayment | Required | Redemption value percentage (per 100 par value) |
| Frequency | Required | Annual payment frequency (1, 2, or 4) |
| [Basis] | Optional | Day-count convention (0-4, default=0) |
Validation Rules
- Date Handling:
- Time values are ignored (truncated)
- Invalid dates return #NUM! error
- Required sequence: Maturity > Settlement > Last_Interest_Date
- Numerical Requirements:
- Rate ≥ 0, Price ≥ 0 (else #NUM!)
- Frequency ∈ {1,2,4}
- Basis ∈ {0,1,2,3,4}
Background
This function complements ODDLPRICE(), calculating the effective yield needed to achieve a specified market price. It uses simple yield methodology (no compounding) where:
- Annual yield is derived from partial period calculations
- Interest at maturity includes accruals since last payment date
- Accrued interest is prorated based on time elapsed
Calculation Method
The yield is determined by:
- Solving the price formula for yield
- Annualizing partial period results
- Prorating interest between last payment and settlement
Example
Sample files demonstrate calculation for bonds with irregular final periods:

Error Conditions
| Error | Trigger Condition |
| #NUM! | Invalid dates, negative values, or parameter constraints violated |
| #VALUE! | Non-numeric arguments |
Note
Function is only applicable during the final irregular period before maturity.