Excel ODDLPRICE Function
Calculate bond prices with odd last periods. Learn ODDLPRICE syntax, examples, and securities valuation in Excel and Google Sheets.
=ODDLPRICE(settlement, maturity, last_interest, rate, yld, redemption, frequency, [basis])Quick Answer
ODDLPRICE function ODDLPRICE function calculates the price per $100 face value of a security that has an odd (short or long) last period. An odd last period occurs when the time between the last coupon payment and maturity differs from the standard coupon payment intervals.
=ODDLPRICE(settlement, maturity, last_interest, rate, yld, redemption, frequency, [basis])Practical Examples
Corporate Bond with Odd Last Period
Calculate the price of a corporate bond maturing between standard coupon payment dates
Treasury Security with Short Last Period
Price a treasury security with a shortened final coupon period
Municipal Bond Premium Pricing
Value a municipal bond trading at a premium with an odd last period
Quarterly Coupon Bond Calculation
Calculate the price for a bond with quarterly payments and an odd last period
European Basis Bond Pricing
Price an international bond using the European 30/360 day count convention
Common Errors and Solutions
ODDLPRICE returns #NUM! error
Invalid date sequence where settlement is after maturity, or last_interest is after settlement. Dates must follow chronological order: last_interest < settlement < maturity.
Verify that dates follow the correct chronological order. Check that last_interest comes before settlement, and settlement before maturity. Use helper cells to validate date sequences before applying ODDLPRICE.
Use conditional validation: =IF(AND(last_interest<settlement, settlement<maturity), ODDLPRICE(...), "Invalid dates")
Example:
ODDLPRICE returns #VALUE! error
Non-numeric values entered for rate, yield, redemption, frequency, or basis parameters. This commonly happens when percentage signs are included or text is accidentally entered.
Enter rates and yields as decimal numbers (e.g., 0.05 for 5%, not 5 or 5%). Ensure frequency is exactly 1, 2, or 4. Remove any text or special characters from numeric parameters.
Format cells as numbers before referencing. Use ISNUMBER() to validate inputs before calculation.
Example:
ODDLPRICE returns #NUM! for parameter values
Invalid basis argument (not in range 0-4), negative rate or yield values, or redemption value of zero or less. Frequency must be exactly 1, 2, or 4.
Use only basis values 0, 1, 2, 3, or 4. Ensure rate and yield are positive numbers. Verify redemption value is greater than zero (typically 100 for bonds). Check that frequency is 1, 2, or 4.
Add parameter validation checks before calculation to ensure all values are within valid ranges.
Example:
Result seems incorrect or unrealistic
Using wrong day count basis for the security type, or entering rate/yield as whole numbers instead of decimals.
Choose appropriate basis: 0 (30/360) for US corporate bonds, 1 (actual/actual) for treasury notes, 4 (European 30/360) for European bonds. Always use DATE() function for dates. Verify rates are decimal format.
Document which basis convention applies. Create a reference table for different security types and their standard basis values.
Example:
Best Practices and Pro Tips
Day Count Basis Selection Strategy
Choosing the correct day count basis is critical for accurate bond pricing. US corporate bonds typically use basis 0 (30/360), US Treasury bonds use basis 1 (actual/actual), and European bonds use basis 4 (European 30/360). Always verify the day count convention in the bond's prospectus. Using the wrong basis can result in significant pricing errors.
Date Input Methods and Format Consistency
Always use the DATE() function for date parameters rather than entering dates as text strings. This eliminates issues with regional date format differences and ensures cross-platform compatibility between Excel and Google Sheets.
Understanding Yield vs Rate Relationship
The relationship between yield and coupon rate determines bond pricing: When yield > rate, bond trades at discount (price < 100). When yield < rate, bond trades at premium (price > 100). When yield = rate, bond trades at par (price = 100).
Cross-Validation with ODDLYIELD
Combine ODDLPRICE with ODDLYIELD to verify pricing consistency. If ODDLPRICE returns 101.23 at yield 5.5%, then ODDLYIELD should return 5.5% at price 101.23. This validates your calculations.
Comprehensive Validation and Error Handling
Build robust models with multi-layer validation: Check date sequences are valid, ensure rates/yields are in decimal format, verify frequency is 1, 2, or 4, confirm basis is 0-4, and validate redemption is positive.
Integration with Other Financial Functions
Combine ODDLPRICE with other functions for complete bond analysis: Use ODDLYIELD for yield calculations, ACCRINT for accrued interest, and PRICE/YIELD for comparison with regular period bonds.
Need Help with Excel ODDLPRICE Function?
Stop struggling with formula syntax. Use AskFormulas to generate validated formulas instantly with our AI-powered tool.
Example Excel formula:
Related Formulas
The ACCRINT function calculates accrued interest for a security that pays periodic interest, enabling accurate financial reporting and bond valuation.
The ACCRINTM function calculates accrued interest for securities that pay interest at maturity, essential for bond valuation and analysis.
Calculate bond prices with odd first periods. Learn ODDFPRICE syntax, examples, and securities valuation in Excel and Google Sheets.
Convert fractional dollar prices to decimals with DOLLARDE. Essential for bond trading, stock quotes, and financial analysis.