Real Yield Curve (TIPS)
Get the real yield curve of a variety of countries: the yields of inflation-linked government bonds, which pay a return on top of inflation, by maturity. Together with the nominal curve (see fixedincome.get_government_bond_yield_curve) it gives the inflation the bond market expects, see get_breakeven_inflation_expectations.
Every curve comes from the official source without an API key:
- United States: the U.S. Department of the Treasury’s real par yield curve of Treasury Inflation-Protected Securities (TIPS), 5, 7, 10, 20 and 30 years, from
- When a FRED API key is set (see the
fred_api_keyparameter of theEconomicsclass), the same figures come from FRED.
- United Kingdom: the Bank of England’s real spot curve of index-linked gilts, 3 to 40 years, from 1985. Index-linked gilts pay the Retail Prices Index (RPI).
- Germany: the real yields of the inflation-linked German federal securities the Bundesbank publishes, interpolated to constant maturities between 3 and 30 years from 2014. Germany has four to six of these bonds outstanding at a time, so only the maturities between its shortest (at least two years) and longest bond are filled. The bonds are indexed to euro area inflation (HICP excluding tobacco).
- When a FRED API key is set (see the
Yields are returned as a decimal fraction per annum (0.0174 for 1.74%), with one column per country and maturity. Weekly and monthly periods take the curve on the last trading day of each period.
See definition: https://fred.stlouisfed.org/series/DFII10
Also known as: TIPS yield curve, real Treasury yield curve, index-linked gilt curve, Bund linker real yields, inflation-linked bond yields.
Real Yield Curve (TIPS) in Python or via the MCP
Install the Finance Toolkit with:
pip install financetoolkit -U
Then call get_real_yield_curve as shown below.
from financetoolkit import Economics
economics = Economics(start_date='2026-04-01', end_date='2026-09-30')
real_yield_curve = economics.get_real_yield_curve(period='monthly')
real_yield_curve.xs('10Y', axis=1, level='Maturity')
Or, after setting up the Finance Toolkit MCP, ask:
How did 10-year real yields in the United States, the United Kingdom and Germany move each month from April to September 2026?
Which returns:
| United States | United Kingdom | Germany | |
|---|---|---|---|
| 2026-04 | 0.0194 | 0.0154 | 0.0075 |
| 2026-05 | 0.0207 | 0.0155 | 0.0084 |
| 2026-06 | 0.022 | 0.0172 | 0.0095 |
| 2026-07 | 0.0247 | 0.0188 | 0.0106 |
| 2026-08 | 0.0244 | 0.0184 | 0.0108 |
| 2026-09 | 0.0293 | 0.02 | 0.0132 |
Parameters
get_real_yield_curve accepts the following parameters.
| Parameter | Type | Description | Example |
|---|---|---|---|
countries | list[str] | str | None | The countries to retrieve, from “United States”, “United Kingdom” and “Germany”. Defaults to None, which retrieves every country. | ["United States", "Germany"] |
period | str | Whether to return the daily, weekly or monthly data. Defaults to “daily”. | "weekly" |
rolling | int | The rolling window size to use for smoothing the data (simple moving average). Defaults to None. | 20 |
trailing | int | The trailing window size to use for summing the data over trailing periods. Defaults to None. | 4 |
growth | bool | Whether to return the growth data or the actual data. Defaults to False. | True |
lag | int | The number of periods to lag the data by. Defaults to 1. | 4 |
standardize | bool | Whether to standardize (Z-Score) the result. When combined with growth=True, standardizes the growth values instead of the raw values. Defaults to False. | True |
rounding | int | None | The number of decimals to round the results to. Defaults to None. | 2 |