Unified power-user entry point for edgarjure. Require as: (require '[edgar.api :as e])
Design principles:
Unified power-user entry point for edgarjure. Require as: (require '[edgar.api :as e]) Design principles: - Every function accepts ticker or CIK interchangeably - Keyword args throughout; no positional form/type args - Sensible defaults for taxonomy (us-gaap), unit (USD), form (10-K) - :concept accepts a string or a collection of strings - Functions that return datasets always return tech.ml.dataset, never seq-of-maps
Financial statement extraction with normalization.
Three output layers for each statement: raw-* ? all matching observations, unprocessed *-statement ? normalized, restatement-deduplicated, long-format get-financials ? all three statements, optionally wide-format
Concept fallback chains: each line item is a vector of concept names tried in order; the first one present in the facts data wins.
Duration vs instant: Income statement + cash flow -> duration observations (:frame does NOT end in "I") Balance sheet -> instant observations (:frame ends in "I")
Point-in-time / look-ahead-safe mode: Pass :as-of "YYYY-MM-DD" to any public function to restrict to filings where :filed <= as-of-date. Without :as-of the latest restated value is returned (as-reported / always-latest behaviour).
Financial statement extraction with normalization. Three output layers for each statement: raw-* ? all matching observations, unprocessed *-statement ? normalized, restatement-deduplicated, long-format get-financials ? all three statements, optionally wide-format Concept fallback chains: each line item is a vector of concept names tried in order; the first one present in the facts data wins. Duration vs instant: Income statement + cash flow -> duration observations (:frame does NOT end in "I") Balance sheet -> instant observations (:frame ends in "I") Point-in-time / look-ahead-safe mode: Pass :as-of "YYYY-MM-DD" to any public function to restrict to filings where :filed <= as-of-date. Without :as-of the latest restated value is returned (as-reported / always-latest behaviour).
Central loader for all built-in edgarjure form parsers.
Requiring this namespace registers filing-obj methods for all supported form types. Individual parsers can also be required directly.
Usage: (require '[edgar.forms]) ; loads all built-in parsers (edgar.filing/filing-obj filing) ; dispatches to the appropriate parser
Supported form types after loading: "4" — Form 4: insider trades (edgar.forms.form4) "13F-HR" — Form 13F-HR: institutional holdings (edgar.forms.form13f) "13F-HR/A" — Form 13F-HR/A: amended institutional holdings (edgar.forms.form13f)
Central loader for all built-in edgarjure form parsers. Requiring this namespace registers filing-obj methods for all supported form types. Individual parsers can also be required directly. Usage: (require '[edgar.forms]) ; loads all built-in parsers (edgar.filing/filing-obj filing) ; dispatches to the appropriate parser Supported form types after loading: "4" — Form 4: insider trades (edgar.forms.form4) "13F-HR" — Form 13F-HR: institutional holdings (edgar.forms.form13f) "13F-HR/A" — Form 13F-HR/A: amended institutional holdings (edgar.forms.form13f)
No vars found in this namespace.
Form 13F-HR parser — Institutional Investment Manager Holdings Report. Registers a filing-obj method for form type "13F-HR".
Only handles XML-era filings (post-2013 Q2). Earlier filings use heterogeneous plain-text infotables and are not supported.
Usage: (require '[edgar.forms.form13f]) ; side-effectful load registers the method (edgar.filing/filing-obj filing) ; => {:form "13F-HR" :holdings <dataset> ...}
Form 13F-HR parser — Institutional Investment Manager Holdings Report.
Registers a filing-obj method for form type "13F-HR".
Only handles XML-era filings (post-2013 Q2). Earlier filings use
heterogeneous plain-text infotables and are not supported.
Usage:
(require '[edgar.forms.form13f]) ; side-effectful load registers the method
(edgar.filing/filing-obj filing) ; => {:form "13F-HR" :holdings <dataset> ...}Form 4 parser — Statement of Changes in Beneficial Ownership. Registers a filing-obj method for form type "4".
Usage: (require '[edgar.forms.form4]) ; side-effectful load registers the method (edgar.filing/filing-obj filing) ; => {:form "4" :reporting-owner {...} :transactions [...]}
Form 4 parser — Statement of Changes in Beneficial Ownership.
Registers a filing-obj method for form type "4".
Usage:
(require '[edgar.forms.form4]) ; side-effectful load registers the method
(edgar.filing/filing-obj filing) ; => {:form "4" :reporting-owner {...} :transactions [...]}Malli schemas and validation helpers for the edgarjure public API.
Usage (in edgar.api): (schema/validate! ::filings-args {:ticker-or-cik toc :form form ...})
All public validate! calls throw ex-info with :type ::invalid-args on failure. The error message includes the human-readable Malli explanation.
Malli schemas and validation helpers for the edgarjure public API.
Usage (in edgar.api):
(schema/validate! ::filings-args {:ticker-or-cik toc :form form ...})
All public validate! calls throw ex-info with :type ::invalid-args on failure.
The error message includes the human-readable Malli explanation.HTML table extraction from SEC filings.
Extracts <table> elements from filing HTML and converts them to tech.ml.dataset objects. Handles iXBRL inline-tagged content, colspan attributes, and mixed numeric/string columns.
Usage: (require '[edgar.tables :as tables]) (tables/extract-tables filing) ; => seq of datasets (tables/extract-tables filing :nth 0) ; => first table as dataset (tables/extract-tables filing :min-rows 5) ; => only tables with >=5 data rows
HTML table extraction from SEC filings. Extracts <table> elements from filing HTML and converts them to tech.ml.dataset objects. Handles iXBRL inline-tagged content, colspan attributes, and mixed numeric/string columns. Usage: (require '[edgar.tables :as tables]) (tables/extract-tables filing) ; => seq of datasets (tables/extract-tables filing :nth 0) ; => first table as dataset (tables/extract-tables filing :min-rows 5) ; => only tables with >=5 data rows
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |