Calculates the breakeven inflation rate implied by a nominal and a real (inflation-protected) yield curve, e.g. the U.S. Treasury nominal curve versus the TIPS (Treasury Inflation-Protected Securities) curve. It is the rate of inflation that would make an investor indifferent between holding a nominal bond and an inflation-protected bond of the same maturity, and is widely used as a market-implied measure of expected inflation.

The rate for each maturity is obtained by linearly interpolating the supplied curves, so maturity does not need to coincide exactly with a maturity present in nominal_rates or real_rates.

The breakeven inflation rate is calculated using the following formula:

\[\text{Breakeven Inflation Rate} = \text{Nominal Yield} - \text{Real Yield}\]

Also known as: TIPS breakeven spread, inflation breakeven.

Breakeven Inflation Rate in Python

get_breakeven_inflation_rate is part of the Fixed Income module of the open-source Finance Toolkit. Install it with:

pip install financetoolkit -U

Then call get_breakeven_inflation_rate as shown below.

from financetoolkit import FixedIncome

fixedincome = FixedIncome()

fixedincome.get_breakeven_inflation_rate(
    maturity=[1, 5, 10, 30],
    show_input_info=False,
)

Which returns:

Maturity Breakeven Inflation Rate
1 0.022
5 0.026
10 0.028
30 0.03

Parameters

get_breakeven_inflation_rate accepts the following parameters:

  • nominal_rates (pd.Series | dict, optional): The nominal (non-inflation-protected) yield curve, indexed by maturity in years (in decimal). Defaults to a sample curve.
  • real_rates (pd.Series | dict, optional): The real (inflation-protected) yield curve, indexed by maturity in years (in decimal). Defaults to a sample curve.
  • maturity (float | list, optional): The maturity (or maturities), in years, to calculate the breakeven inflation rate for. If not provided, a range of maturities will be used.
  • show_input_info (bool, optional): Whether to display input information. Defaults to True.
Share