This article shows you an easy way to find Mutual funds with edgartools.
When you buy a mutual fund, you are essentially purchasing shares in a specific class contract of a fund within a series. The series defines the overall investment strategy or theme, and the class contract specifies the terms under which you invest in that fund, including fee structures and minimum investment requirements.
For instance, Vanguard offers the Vanguard 500 Index Fund, which is a series focusing on tracking the S&P 500 index. Within this fund series, there are different class contracts like the Investor Shares (VFINX) and Admiral Shares (VFIAX). Each class has different minimum investment requirements and fee structures.
So, if you decide to invest in the Vanguard 500 Index Fund, you are choosing to buy shares in a specific class (like VFINX or VFIAX) of this fund series, which in turn is managed by the mutual fund company, Vanguard.
If you don't have edgartools go ahead and install using pip
from edgar import * set_identity('First Last First.Last@domain.com')
Finding Fund Contracts
You can see this when you search for the ticker VFINX in edgartools
If you search for VFIAX which belongs to the same series
The fund ticker e.g. VFIAX identifies the fund class to buyers, but the fund also has a class contract id C000245415. You can the contract id to find the mutual fund using the class contract id.
It's the same fund but it looks somewhat different. Why? Because of a technical term that rhymes with "I didn't know at the time" that two slightly different urls would lead to a slightly different view of the same object. This will probably be changed in an upcoming version of edgartools.
Finding Fund Series
Similarly, you can get the fund series. This shows you the series and the filings for the entire fund series.
Getting the Fund Company
What about the fund company? You can get the fund company from the fund class or series.
fund_class = Fund('C000245415') fund_class.fund
Note that this fund company is just a limited view of the fund company specific to that fund class or series. This means that the fund filings here are just for that class or series.
Getting the full company
If you know the fund company CIK you can get it directly by using
Company(cik). This gives you all the company and all of its filings, not just for that one fund you found earlier.
fund_company = Company("0000923202")
You can use edgartools to find Mutual fund using the ticker, the series or class id