ODDFYIELD Function (LibreOffice Calc)
The ODDFYIELD function returns the annual yield of a bond with an odd (non-standard) first coupon period. It is essential for valuing bonds issued off-cycle with irregular initial coupon lengths.
Compatibility
▾| Excel | ✔ |
| Gnumeric | ✔ |
| Google_sheets | ✔ |
| Libreoffice | ✔ |
| Numbers | ✔ |
| Onlyoffice | ✔ |
| Openoffice | ✔ |
| Wps | ✔ |
| Zoho | ✔ |
What the ODDFYIELD Function Does ▾
- Computes yield to maturity (YTM) for bonds with an odd first coupon
- Handles short and long first coupon periods
- Uses issue date, first coupon date, settlement date, maturity date, coupon rate, price, redemption value, frequency, and basis
- Supports multiple day‑count basis systems
- Fully compatible with Excel’s ODDFYIELD function
It is designed for professional‑grade fixed‑income analytics.
Syntax ▾
ODDFYIELD(settlement; maturity; issue; first_coupon; rate; price; redemption; frequency; [basis])
Arguments
-
settlement:
Date the bond is purchased. -
maturity:
Final maturity date. -
issue:
Issue date of the bond. -
first_coupon:
Date of the first coupon payment (irregular). -
rate:
Annual coupon rate. -
price:
Clean price per 100 face value. -
redemption:
Redemption value per 100 face value. -
frequency:
Coupon payments per year:1= annual2= semiannual4= quarterly
-
basis (optional):
Day-count convention:
| basis | Day-count convention |
|---|---|
| 0 | US 30/360 |
| 1 | Actual/Actual |
| 2 | Actual/360 |
| 3 | Actual/365 |
| 4 | European 30/360 |
Basic Examples ▾
Yield of a bond with a short first coupon
=ODDFYIELD("2024-03-15"; "2029-03-15"; "2024-01-01"; "2024-06-01"; 0.05; 98.5; 100; 2)
Using Actual/Actual
=ODDFYIELD(A1;A2;A3;A4;0.04;99.2;100;2;1)
Using text dates
=ODDFYIELD(DATEVALUE(A1);DATEVALUE(A2);DATEVALUE(A3);DATEVALUE(A4);Rate;Price;100;2)
Advanced Examples ▾
Long first coupon period
=ODDFYIELD("2024-03-15"; "2030-03-15"; "2023-01-01"; "2024-09-01"; 0.06; 101.4; 100; 2)
From imported CSV timestamps
=ODDFYIELD(DATEVALUE(LEFT(A1;10));DATEVALUE(LEFT(A2;10));DATEVALUE(LEFT(A3;10));DATEVALUE(LEFT(A4;10));Rate;Price;Redemption;Freq)
From Excel serial dates stored as text
=ODDFYIELD(DATE(1899;12;30)+VALUE(A1);DATE(1899;12;30)+VALUE(A2);DATE(1899;12;30)+VALUE(A3);DATE(1899;12;30)+VALUE(A4);Rate;Price;Redemption;Freq)
Compute price from yield (inverse)
=ODDFPRICE(Settlement;Maturity;Issue;FirstCoupon;Rate;Yield;Redemption;Freq;Basis)
Compare odd-first vs regular yield
=YIELD(Settlement;Maturity;Rate;Price;Redemption;Freq) - ODDFYIELD(...)
Edge Cases and Behavior Details ▾
ODDFYIELD returns a numeric value (annual yield)
Accepts:
- Real dates
- Serial numbers
- DATEVALUE outputs
Invalid text → Err:502
Behavior details
- Issue < FirstCoupon < Maturity must hold
- Settlement must be between Issue and Maturity
- Frequency must be 1, 2, or 4
- Basis must be 0–4
- Handles both short and long first coupon periods
- Uses iterative numerical methods internally
ODDFYIELD of an error → error propagates
Common Errors and Fixes ▾
Err:502 — Invalid argument
Cause:
- Dates not recognized
- Frequency not 1, 2, or 4
- Basis outside 0–4
Fix:
- Wrap dates with DATEVALUE
- Validate frequency and basis
Err:504 — Invalid date sequence
Cause:
- Settlement before issue
- First coupon before issue
- Settlement after maturity
Fix:
- Correct date order
Unexpected yield
Cause:
- Wrong first coupon date
- Incorrect basis
- Incorrect price or coupon rate
Fix:
- Verify coupon schedule
- Confirm day-count convention
Best Practices ▾
- Use Actual/Actual (basis 1) for government bonds
- Use 30/360 for corporate bonds
- Normalize text dates with DATEVALUE
- Validate first coupon date carefully
- Use ODDFYIELD with ODDFPRICE for full odd-first-period modeling
Related Patterns and Alternatives ▾
- Use ODDFPRICE to compute price from yield
- Use ODDLPRICE for odd last coupon periods
- Use ODDLYIELD for odd last coupon yield
- Use PRICE for regular coupon bonds
- Use YIELD for regular yield calculations
By mastering ODDFYIELD and its companion functions, you can build powerful, accurate, and fully professional fixed‑income valuation models in LibreOffice Calc.