Active Share
Measure how much each fund’s holdings differ from every other fund’s: half the sum, over all holdings of either fund, of the absolute difference between their weights. Against an index fund it shows how far a fund departs from the index: an active share of 0.2 means 20% of the portfolio differs and 80% is the index. Cremers and Petajisto (2009) call funds below about 0.6 closet indexers.
Also known as: active share, portfolio difference, deviation from the benchmark.
The formula is as follows:
\[\text{Active Share} = 1 / 2 \cdot \operatorname{SUM}(| \text{Weight Fund}\; i - \text{Weight Other Fund}\; i |)\]For more information, see the following paper:
- Cremers, K.J.M., & Petajisto, A. (2009). “How Active Is Your Fund Manager? A New Measure That Predicts Performance.” Review of Financial Studies, 22(9), 3329-3365.
Active Share in Python or via the MCP
Install the Finance Toolkit with:
pip install financetoolkit -U
Then call get_active_share as shown below.
from financetoolkit import Toolkit
toolkit = Toolkit(["VOO", "QQQ", "SCHD", "MGK"], api_key="FINANCIAL_MODELING_PREP_KEY")
toolkit.etf.get_active_share()
Or, after setting up the Finance Toolkit MCP, ask:
How much do the holdings of VOO, QQQ, SCHD and MGK differ from each other, measured by active share?
Which returns:
| VOO | QQQ | SCHD | MGK | |
|---|---|---|---|---|
| VOO | 0 | 0.4508 | 0.9238 | 0.4784 |
| QQQ | 0.4508 | 0 | 0.945 | 0.3822 |
| SCHD | 0.9238 | 0.945 | 0 | 1 |
| MGK | 0.4784 | 0.3822 | 1 | 0 |
Parameters
get_active_share accepts the following parameters.
| Parameter | Type | Description | Example |
|---|---|---|---|
rounding | int | None | The number of decimals to round the results to. Defaults to None, which uses the rounding of the Toolkit. | 2 |