Skip to content
All library documents

Diagnosing Bond Duration and Convexity Differences Across Analytics Systems

Article Quant Q&A · Author: New Student

Summary

The document describes a fixed-coupon bond analytics reconciliation problem: QuantLib and Bloomberg produce matching yield-to-maturity results for most bonds, but duration and convexity differ for a small number. It gives one example with a stated valuation date, bond price, and 30/360 day-count convention, where the reported yield agrees while duration and convexity show small discrepancies. The question also asks how to identify Bloomberg’s settlement calendar and whether a dump of field definitions would help investigate the mismatch.

This is a troubleshooting prompt rather than a resolved analysis. It does not establish the cause or offer evidence that the calendar, settlement conventions, cash-flow schedule, or analytics definitions explain the difference. Its practical contribution is to frame a reconciliation task: matching yield alone may not confirm that two systems use identical conventions for duration and convexity. Comparing the relevant reference fields and calculation settings could help narrow the issue, but the document provides no confirmed diagnostic procedure or general conclusion.

Key ideas

  • Matching yield-to-maturity does not guarantee that two systems will report identical duration and convexity.
  • The example compares analytics for a fixed-coupon bond using a stated price, date, and day-count convention.
  • Settlement calendar and calculation conventions are raised as possible areas to inspect, but no cause is confirmed.
  • The document is an unresolved troubleshooting question and supplies no validated reconciliation method.

Tags

Full text
# quantlib and bbg fixed coupon bond analytics do not match


# quantlib and bbg fixed coupon bond analytics do not match












We are trying to match analytics like ytm, duration and convexity iven Bloomberg Price as an input. For most bonds, quantlib and bbg fixed bond analytics match. But for very few bonds ytm matches but not duration and convexity.

- Examaple CUSIP 66977WAP4

- Day count Using 30/360

- Price of Bond on Bloomberg: 99.704 on 11/18/2024 . This is the same date Quantlib generated numbers



- Calendar ql.UnitedStates.Settlement . Where do I see this on bbg terminal ?

- Mismatch results yld_ytm_mid matches to 5.700 but bbg vs QL duration is 0.451 vs 0.4527 and convexity is 0.004 vs 0.0038.

Question

- Why a mismatch ?

- Will dump of all fields using {FLDS} or //blp/apiflds help ?

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.