Skip to main content

Download historical filing data directly from the United States Securities Exchange Commission (SEC)!

Project description

finsec

Download historical filing data directly from the United States (U.S.) Securities Exchange Commission (SEC).

finsec_logo

[!IMPORTANT]
finsec is not affiliated, endorsed, or vetted by the United. States. Securities Exchange Commission. It's an open-source tool that uses the SEC's publicly available APIs. This tool is intended for research and informational purposes only. It should not be used for making financial decisions. Always consult with a qualified financial advisor for investment guidance. You should refer to SEC Edgar's website for more details (here)

Python version PyPi version PyPi status PyPi downloads Star this repo

Python package

Blogs

Check out the following blog post for a detailed tutorial on how finsec has been used to aid with analysing the performance of some of the world's most prestigious hedge funds:
Unravelling investment fund manager strategies through 13f SEC filings.

Quickstart

Review 13F filings for Berkshire Hathaway CIK 0001067983

import finsec
filing = finsec.Filing('0001067983')    # Optional declared user variable can be input here (e.g. declared_user="Joe Blog Joe.Blog@gmail.com")

# Return the latest 13F reported holdings for Berkshire Hathaway.
print(filing.latest_13f_filing)

Output:

Name of issuer Title of class CUSIP Share or principal type Holding value Share or principal amount count
0 ACTIVISION BLIZZARD INC COM 00507V109 SH 4470946000 60141866
1 ALLY FINL INC COM 02005N100 SH 834901000 30000000
2 AMAZON COM INC COM 023135106 SH 1205258000 10666000

Note: Using the latest_13f_filing function will return the the latest "simplified" version of the 13F Information Table, this works well in most instances... However, there are some who may want to have a more detailed breakdown of the filing. Such as, which investment manager was responsible for investing in the security and the voting authority type granted. This can be handled with the function latest_13f_filing_detailed (below).

# Return the latest detailed 13F reported holdings for Berkshire Hathaway.
print(filing.latest_13f_filing_detailed)

Output:

Name of issuer Title of class CUSIP Holding value Share or principal type Share or principal amount count Put or call Investment discretion Other manager Voting authority sole count Voting authority shared count Voting authority none count
0 ACTIVISION BLIZZARD INC COM 00507V109 1906458000 SH 25645116 DFND 4,8,11 25645116 0 0
1 ACTIVISION BLIZZARD INC COM 00507V109 85095000 SH 1144672 DFND 4,10 1144672 0 0
2 ACTIVISION BLIZZARD INC COM 00507V109 2479393000 SH 33352078 DFND 4,11 33352078 0 0
# Return the latest 13F cover page details for Berkshire Hathaway.
filing.latest_13f_filing_cover_page

#Output
{'filing_manager': 'Berkshire Hathaway Inc', 'business_address': '3555 Farnam Street, Omaha, NE, 68131', 'submission_type': '13F-HR', 'period_of_report': '09-30-2022', 'signature_name': 'Marc D. Hamburg', 'signature_title': 'Senior Vice President', 'signature_phone': '402-346-1400', 'signature_city': 'Omaha', 'signature_state': 'NE', 'signature_date': '11-14-2022', 'portfolio_value': 296096640000, 'count_holdings': 179}

# Return the attributes of a specific 13F filing for the specified cik. In the below example we are looking to grab the cover page, full holdings table and simplified holdings table for Berkshire for Q2-2022 (Calendar Year). 
q2_cover_page, q2_holdings_table, q2_simplified_holdings_table = filing.get_a_13f_filing("Q2-2022")
print(q2_cover_page)
print(q2_holdings_table)
print(q2_simplified_holdings_table)

# Return the json object containing all 13F filings that are stored as part of the filing object (note this includes everything we've searched for so far).
filing.filings

# Write filings to excel. Record everything we've looked at to Excel. 
filing.filings_to_excel

Installation

Install finsec using pip:

$ pip install finsec

Requirements

Note that the above packages will be downloaded automatically using pip.

Author

Stephen Hogg

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

finsec-0.0.11.tar.gz (18.2 kB view details)

Uploaded Source

Built Distribution

finsec-0.0.11-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

Details for the file finsec-0.0.11.tar.gz.

File metadata

  • Download URL: finsec-0.0.11.tar.gz
  • Upload date:
  • Size: 18.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for finsec-0.0.11.tar.gz
Algorithm Hash digest
SHA256 61e80659e3756ccba972b0e157eefd4e27153c8f40e81ae3dc5b6526a9c42a42
MD5 109ed5619381afa027f871c13c6e9782
BLAKE2b-256 d5f2f88374eed2c80c8eaa0534b4f5f310a344b1182eb345851240620cbf2038

See more details on using hashes here.

File details

Details for the file finsec-0.0.11-py3-none-any.whl.

File metadata

  • Download URL: finsec-0.0.11-py3-none-any.whl
  • Upload date:
  • Size: 14.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for finsec-0.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 1865096bc334cf1f325c3dd8529e3c02788c388d15bcac5ea95d6650f107066f
MD5 754fe0df5edf3a8741618e181eccaef8
BLAKE2b-256 4b46c59ad06bdc5148fccad3c46f9c86d7a26280bfbb597dfeb54fc0873e28b6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page