Holdings
Get the holdings of every fund: each asset it holds with the number of shares, the market value and the weight in the fund (as a decimal). This shows what the fund is actually exposed to and how concentrated it is; get_concentration and get_overlap summarize the weights.
Tickers that are not an ETF or fund have no holdings and return no data. They are not removed from the Toolkit instance.
Also known as: fund holdings, ETF constituents, fund portfolio.
Holdings in Python or via the MCP
Install the Finance Toolkit with:
pip install financetoolkit -U
Then call get_holdings as shown below.
from financetoolkit import Toolkit
toolkit = Toolkit(
["QQQ", "VTI"],
api_key="FINANCIAL_MODELING_PREP_KEY",
start_date="2021-01-01",
end_date="2025-12-31",
)
toolkit.etf.get_holdings().loc["QQQ"].head()
Or, after setting up the Finance Toolkit MCP, ask:
What are the five largest holdings of the Invesco QQQ Trust, with their shares, weight and market value?
Which returns:
| Asset | Name | ISIN | CUSIP | Shares | Weight | Market Value | Updated At |
|---|---|---|---|---|---|---|---|
| NVDA | NVIDIA Corp | US67066G1040 | 67066G104 | 1.80964e+08 | 0.0850518 | 4.32937e+10 | 2026-10-07 14:14:58 |
| AAPL | Apple Inc | US0378331005 | 037833100 | 1.09586e+08 | 0.0718253 | 3.65611e+10 | 2026-10-07 14:14:58 |
| MSFT | Microsoft Corp | US5949181045 | 594918104 | 5.57574e+07 | 0.057978 | 2.95124e+10 | 2026-10-07 14:14:58 |
| MU | Micron Technology Inc | US5951121038 | 595112103 | 2.34119e+07 | 0.0480888 | 2.44785e+10 | 2026-10-07 14:14:58 |
| AMD | Advanced Micro Devices Inc | US0079031078 | 007903107 | 3.38406e+07 | 0.043174 | 2.19767e+10 | 2026-10-07 14:14:58 |
Parameters
get_holdings accepts the following parameters.
| Parameter | Type | Description | Example |
|---|---|---|---|
overwrite | bool | Whether to retrieve the holdings again. Defaults to False. | True |
show_columns | list[str] | None | A list of column names to keep in the result. Invalid names are reported and ignored. Defaults to None, which keeps every column. | None, which keeps every column |
limit | int | None | The number of largest holdings (by weight) to keep per fund, e.g. 10 for the top 10, or of the smallest for a negative number, e.g. -10. Defaults to None, which keeps every holding. The holdings carry no sector or country; get_sector_weightings and get_country_weightings break the fund down by those. | 20 |