ETFs API
The ETFs API provides comprehensive data on Exchange-Traded Funds including fund information, sector weights, geographic exposure, holdings, and fund-of-funds exposure analysis. This data is essential for ETF research, portfolio construction, and investment analysis.
/etfs/:ticker/holdingsRetrieves the current top holdings of an ETF with detailed position information including shares held, market value, and percentage weights. Critical for analyzing concentration risk and understanding the ETF's underlying exposures.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| ticker | string | Required | ETF ticker symbol (e.g., "SPY", "QQQ", "VTI") |
Examples:
https://api.axionquant.com/etfs/QQQ/holdingshttps://api.axionquant.com/etfs/SPY/holdingsResponse Fields
ticker string
Holding company ticker
name string
Holding company name
weight string
Formatted weight percentage
shares number
Number of shares held
marketValue number
Total market value in USD
rawWeight number
Raw weight as decimal (0.0-1.0)
Top Holdings
Request
1from axion import Axion
2client = Axion(api_key='axn_123')
3
4holdings = client.etfs.holdings('SPY')
5print(holdings)Response
[
{
"ticker": "NVDA",
"name": "NVIDIA Corporation",
"weight": "7.17%",
"shares": 305156465,
"marketValue": 44519276678.85,
"rawWeight": 0.0716544211188534
},
{
"ticker": "AAPL",
"name": "Apple Inc.",
"weight": "6.95%",
"shares": 188603226,
"marketValue": 43190138754,
"rawWeight": 0.0695151543630329
},
{
"ticker": "MSFT",
"name": "Microsoft Corporation",
"weight": "6.17%",
"shares": 92204348,
"marketValue": 38309984550.52,
"rawWeight": 0.0616604754349895
}
]/etfs/:ticker/holdings/allRetrieves the complete list of all holdings for an ETF with weight percentages and the last updated date. Unlike the top holdings endpoint, this provides the full portfolio composition including smaller positions.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| ticker | string | Required | ETF ticker symbol (e.g., "SPY", "QQQ", "VTI") |
Examples:
https://api.axionquant.com/etfs/QQQ/holdings/allhttps://api.axionquant.com/etfs/SPY/holdings/allResponse Fields
name string
Holding company name
ticker string
Holding company ticker
weight string
Formatted weight percentage
rawWeight number
Raw weight as decimal (0.0-1.0)
since string
Date the holding data was last updated
All Holdings
Request
1from axion import Axion
2client = Axion(api_key='axn_123')
3
4holdings = client.etfs.holdings_all('SPY')
5print(holdings)Response
[
{
"name": "NVIDIA Corporation",
"ticker": "NVDA",
"weight": "7.17%",
"rawWeight": 0.0716544211188534,
"since": "2024-03-15"
},
{
"name": "Apple Inc.",
"ticker": "AAPL",
"weight": "6.95%",
"rawWeight": 0.0695151543630329,
"since": "2024-03-15"
},
{
"name": "Microsoft Corporation",
"ticker": "MSFT",
"weight": "6.17%",
"rawWeight": 0.0616604754349895,
"since": "2024-03-15"
}
]/etfs/:ticker/weightsRetrieves the detailed sector breakdown and geographic exposure of an ETF. Provides both formatted percentages and raw decimal weights for precise analysis. Essential for understanding concentration risk and geographic diversification.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| ticker | string | Required | ETF ticker symbol (e.g., "SPY", "QQQ", "VTI") |
Examples:
https://api.axionquant.com/etfs/VTI/weightshttps://api.axionquant.com/etfs/QQQ/weightsResponse Fields
sector array
Array of sector allocations
name string
Sector name (e.g., "Technology Services")
weight string
Formatted weight percentage (e.g., "21.08%")
rawWeight number
Raw weight as decimal (0.0-1.0)
regions array
Array of geographic exposures
name string
Country or region name
weight string
Formatted weight percentage or "--" for negligible
benchmarkWeight string
Benchmark weight percentage
rawWeight number|string
Raw weight as decimal or "--"
Sector & Region Weights
Request
1from axion import Axion
2client = Axion(api_key='axn_123')
3
4weights = client.etfs.weights('SPY')
5print(weights)Response
{
"sector": [
{
"name": "Technology Services",
"weight": "21.08%",
"rawWeight": 0.21079285342758
},
{
"name": "Commercial Services",
"weight": "2.90%",
"rawWeight": 0.0289666913939312
}
],
"regions": [
{
"name": "United States",
"weight": "100.00%",
"benchmarkWeight": "99.89%",
"rawWeight": 1
},
{
"name": "Canada",
"weight": "--",
"benchmarkWeight": "0.11%",
"rawWeight": "--"
}
]
}/etfs/:ticker/exposureIdentifies all ETFs that hold a particular stock and provides detailed exposure analysis including allocation percentages and market values. Essential for understanding fund-of-funds relationships and analyzing indirect ownership structures.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| ticker | string | Required | Stock ticker symbol to analyze (e.g., "AAPL", "NVDA", "MSFT") |
Examples:
https://api.axionquant.com/etfs/QQQ/exposurehttps://api.axionquant.com/etfs/SPY/exposureResponse Fields
ticker string
ETF ticker that holds the stock
fundName string
ETF fund name
segment string
ETF market segment
allocation string
Formatted allocation percentage
marketValue string
Formatted market value (with B/M/K suffix)
rawAllocation number
Raw allocation as decimal (0.0-1.0)
rawMarketValue number
Raw market value in USD
ETF Exposure Analysis
Request
1from axion import Axion
2client = Axion(api_key='axn_123')
3
4exposure = client.etfs.exposure('AAPL')
5print(exposure)Response
[
{
"ticker": "XLK",
"fundName": "Technology Select Sector SPDR Fund",
"segment": "Equity: U.S. Information Technology",
"allocation": "24.17%",
"marketValue": "$10.46B",
"rawAllocation": 0.2417,
"rawMarketValue": 10460000000
},
{
"ticker": "FTEC",
"fundName": "Fidelity MSCI Information Technology Index ETF",
"segment": "Equity: U.S. Information Technology",
"allocation": "23.75%",
"marketValue": "$1.45B",
"rawAllocation": 0.2375,
"rawMarketValue": 1450000000
},
{
"ticker": "IXN",
"fundName": "iShares Global Tech ETF",
"segment": "Equity: Global Information Technology",
"allocation": "23.39%",
"marketValue": "$737.66M",
"rawAllocation": 0.2339,
"rawMarketValue": 737660000
}
]