Asset Class Proxies
Get the total returns of listed funds that track asset classes without a public return index: private equity, infrastructure, hedge funds, private credit, real estate and investment grade and high yield credit. Their returns approximate those of the asset classes for calibrating a scenario generator, with two caveats: listed prices are marked to market daily, so they are more volatile and more correlated with equities than the appraisal-based returns of private funds, and they include the funds’ fees.
The asset classes and the funds that track them, with the start of their history:
- “Private Equity”: the Invesco Global Listed Private Equity ETF (PSP), from 2006.
- “Infrastructure”: the iShares Global Infrastructure ETF (IGF), from 2007.
- “Hedge Funds”: the IQ Hedge Multi-Strategy Tracker ETF (QAI), which replicates the returns of hedge fund indices, from 2009.
- “Merger Arbitrage”: the IQ Merger Arbitrage ETF (MNA), from 2009.
- “Private Credit”: the VanEck BDC Income ETF (BIZD), business development companies that lend to private companies, from 2013.
- “Real Estate”: the Vanguard Real Estate ETF (VNQ), US REITs, from 2004.
- “Investment Grade Credit”: the iShares iBoxx $ Investment Grade Corporate Bond ETF (LQD), from 2002.
- “High Yield Credit”: the iShares iBoxx $ High Yield Corporate Bond ETF (HYG), from 2007.
Returns are the change of the dividend-adjusted price over each period, as decimals, in US dollars; with returns=False the dividend-adjusted price itself is returned. The prices come from FinancialModelingPrep when an API key is set (the api_key of the Economics class) and from Yahoo Finance otherwise.
Also known as: private market proxies, listed private equity, alternative asset returns, hedge fund replication.
Asset Class Proxies in Python
Install the Finance Toolkit with:
pip install financetoolkit -U
Then call get_asset_class_proxies as shown below.
from financetoolkit import Economics
economics = Economics(start_date='2026-04-01', end_date='2026-09-30')
economics.get_asset_class_proxies(
asset_classes=['Private Equity', 'Infrastructure', 'Hedge Funds', 'Private Credit']
)
Which returns:
| Private Equity | Infrastructure | Hedge Funds | Private Credit | |
|---|---|---|---|---|
| 2026-04 | 0.0778 | 0.0228 | 0.046 | 0.0675 |
| 2026-05 | 0.001 | -0.0282 | 0.0202 | -0.0395 |
| 2026-06 | -0.0688 | 0.0141 | 0.0052 | 0.0024 |
| 2026-07 | 0.0711 | 0.0032 | -0.0142 | -0.0017 |
| 2026-08 | 0.0734 | -0.025 | 0.0083 | 0.0895 |
| 2026-09 | -0.1149 | -0.055 | -0.0093 | -0.0459 |
Parameters
The function accepts the following parameters:
- asset_classes (list[str] | str | None, optional): The asset classes to include, from “Private Equity”, “Infrastructure”, “Hedge Funds”, “Merger Arbitrage”, “Private Credit”, “Real Estate”, “Investment Grade Credit” and “High Yield Credit”. Defaults to None, which includes all of them.
- period (str, optional): Whether to return the daily, weekly or monthly data. Defaults to “monthly”.
- returns (bool, optional): Whether to return the total return per period instead of the dividend-adjusted price. Defaults to True.
- rolling (int, optional): The rolling window size to use for smoothing the data (simple moving average). Defaults to None.
- standardize (bool, optional): Whether to standardize (Z-Score) the result. Defaults to False.
- rounding (int | None, optional): The number of decimals to round the results to. Defaults to None.