spb/uqo-research-db
Public
1# ============================================================2# Project: EDGAR Research Database3# Description: SEC EDGAR Research Infrastructure4#5# Authors:6# - Manel Kammoun — manel.kammoun@uqo.ca7# - Djerrycharli Tandjambianda — djerrycharli.tandjambianda@uqo.ca8# - Simon-Pierre Boucher — simon-pierre.boucher@uqo.ca9#10# Institution:11# Université du Québec en Outaouais (UQO)12#13# License:14# Research / Academic Use15# ============================================================1617from pathlib import Path1819PROJECT_ROOT = Path(__file__).resolve().parent.parent.parent2021DATA_DIRS = {22 "raw": PROJECT_ROOT / "data" / "raw" / "sec",23 "processed": PROJECT_ROOT / "data" / "processed",24 "parquet": PROJECT_ROOT / "data" / "parquet",25 "duckdb": PROJECT_ROOT / "data" / "duckdb",26 "embeddings": PROJECT_ROOT / "data" / "embeddings",27 "metadata": PROJECT_ROOT / "data" / "metadata",28 "logs": PROJECT_ROOT / "data" / "logs",29}3031CONFIG_DIR = PROJECT_ROOT / "config"3233SEC_BASE_URL = "https://www.sec.gov"34SEC_ARCHIVES_URL = "https://www.sec.gov/Archives/edgar/data"35SEC_SUBMISSIONS_URL = "https://data.sec.gov/submissions"36SEC_FULL_TEXT_URL = "https://efts.sec.gov/LATEST/search-index"37SEC_COMPANY_TICKERS_URL = "https://www.sec.gov/files/company_tickers.json"3839SEC_FORM_TYPES = ["10-K", "10-Q", "8-K"]4041SEC_FORM_TYPES_EXTENDED = [42 "10-K", "10-Q", "8-K",43 "DEF 14A", "S-1", "13F-HR",44 "10-K/A", "10-Q/A", "8-K/A",45]4647FORM_10K_SECTIONS = {48 "1": "business",49 "1A": "risk_factors",50 "1B": "unresolved_staff_comments",51 "2": "properties",52 "3": "legal_proceedings",53 "4": "mine_safety",54 "5": "market_for_equity",55 "6": "selected_financial_data",56 "7": "md_and_a",57 "7A": "quantitative_disclosures",58 "8": "financial_statements",59 "9": "changes_in_accounting",60 "9A": "controls_and_procedures",61 "9B": "other_information",62}6364FORM_10Q_SECTIONS = {65 "P1_1": "financial_statements",66 "P1_2": "md_and_a",67 "P1_3": "quantitative_disclosures",68 "P1_4": "controls_and_procedures",69 "P2_1": "legal_proceedings",70 "P2_1A": "risk_factors",71 "P2_2": "unregistered_sales",72}7374DUCKDB_PATH = DATA_DIRS["duckdb"] / "edgar_research.duckdb"7576DEFAULT_START_YEAR = 20107778PARQUET_COMPRESSION = "zstd"79PARQUET_COMPRESSION_LEVEL = 380