本文へ移動
cccskills
無料GitHub で公開

edgartools-sec-data

How to pull SEC EDGAR data with the edgartools Python package — company lookup, filings, XBRL financial statements, and filing sections like Item 1A risk factors. Use whenever a task involves SEC filings, 10-K/10-Q data, or company financials.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md4.3 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

edgartools: SEC EDGAR data access

edgartools is the desk's standard way to read SEC data. It is preinstalled in your environment. Work in Python (a script or python -c), not by fetching sec.gov pages by hand.

Always set your identity first

The SEC requires a contact identity on automated requests. Do this before any other call, every session:

from edgar import set_identity
set_identity("Research Desk workshop attendee@example.com")  # use the EDGAR_IDENTITY value you were given

(Equivalently, the EDGAR_IDENTITY environment variable, exported before running Python.)

Companies and filings

from edgar import Company

company = Company("NVDA")              # by ticker (or CIK)
company.name, company.cik, company.industry

filings = company.get_filings(form="10-K")   # also "10-Q", "8-K", "DEF 14A", ...
latest_10k = filings.latest()                # most recent of that form
latest_10q = company.get_filings(form="10-Q").latest()

latest_10k.form, latest_10k.filing_date, latest_10k.accession_no

Pick whichever of the latest 10-K / 10-Q is more recent when asked for "the most recent filing". Foreign private issuers file 20-F instead of 10-K.

Reading the filing

filing = latest_10k
tenk = filing.obj()        # rich object for 10-K/10-Q: sections, financials

# Sections (10-K item numbers; 10-Q uses Part/Item naming)
risk_factors = tenk["Item 1A"]      # Risk Factors text
mda = tenk["Item 7"]                # Management's Discussion & Analysis
business = tenk["Item 1"]

# Plain text of the whole filing if you need to search it
text = filing.text()

Sections are long — extract what you need rather than pasting whole sections into your reply.

Financial statements (XBRL)

financials = tenk.financials          # also: company.get_financials() for the latest annual figures

income = financials.income_statement()
balance = financials.balance_sheet()
cashflow = financials.cashflow_statement()

These return tabular objects (pandas-friendly). Typical fields: total revenue, gross profit, operating income, net income, cash and equivalents, total debt, inventory, R&D expense. The same statement usually carries the prior period's column — use it for year-over-year comparisons instead of fetching another filing.

Segment and geographic revenue

Consolidated revenue hides the story; the segment note is where concentration and regional shifts show up. Segment data lives in the financial-statement notes (ASC 280), not the primary statements:

# The segment/geography breakdown is a note, not a primary statement.
# Search the filing text for the segment note and read the tables around it.
text = filing.text()
for marker in ["Segment Information", "revenue by geographic", "Disaggregation of Revenue"]:
    idx = text.find(marker)
    if idx != -1:
        print(text[idx : idx + 3000])   # the note's tables follow the heading
        break

Report segment/geography revenue alongside the consolidated figure and call out: any region or segment that moved more than ~20% year over year, and any customer-concentration disclosure (usually phrased "one customer accounted for X% of revenue").

Useful patterns

  • Year-over-year risk-factor diff: pull Item 1A from this year's and last year's 10-K (company.get_filings(form="10-K") is sorted; take the first two) and compare.
  • Insider activity: company.get_filings(form="4") lists Form 4 insider transaction filings.
  • Be defensive: the API surface evolves. If an attribute or method isn't there, inspect it (dir(obj), help(obj)) or fall back to filing.text() and targeted searching, and note the fallback in your output.
  • Be polite to EDGAR: keep requests to what you need; everything is cached within the session by the library.

Units and reporting hygiene

  • Statement values are typically raw USD; convert to millions when reporting (value / 1e6) and label them.
  • Always state which filing (form, fiscal period, filing date) a number came from.
  • If a figure is missing or ambiguous in XBRL, say so rather than estimating.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

How to produce a demand forecast for a SKU, and when to delegate that to a subagent vs. compute it yourself. Load this for any task involving "forecast", "how much will we sell", "next month", promos, or seasonal SKUs.

日本語の概要は準備中です。原文の説明を表示しています。

anthropics/cwc-workshops2,1662026年8月28日 更新

The SRE team's runbook for triaging production latency and error-rate incidents. Use this whenever investigating an incident, a latency spike, elevated error rates, or when asked "what caused X" about a production service.

日本語の概要は準備中です。原文の説明を表示しています。

anthropics/cwc-workshops2,1662026年8月28日 更新

mining

無料

Where diamonds spawn in Minecraft 1.20.

日本語の概要は準備中です。原文の説明を表示しています。

anthropics/cwc-workshops2,1662026年8月28日 更新

Fixed-format templates for Slack alerts, supplier emails, and escalations. Load this whenever the task is "notify", "alert", "email", or "tell ops".

日本語の概要は準備中です。原文の説明を表示しています。

anthropics/cwc-workshops2,1662026年8月28日 更新

How to decide whether and how much to reorder a SKU. Load this whenever a task involves reorder recommendations, purchase orders, or "should we restock" questions.

日本語の概要は準備中です。原文の説明を表示しています。

anthropics/cwc-workshops2,1662026年8月28日 更新

Guide a workshop attendee through committing their starter-agent decomposition and opening a PR with their solution + workshop feedback. Invoke when the user says "submit", "I'm done", "open a PR", or asks how to share their solution.

日本語の概要は準備中です。原文の説明を表示しています。

anthropics/cwc-workshops2,1662026年8月28日 更新

anthropics のスキルをすべて見る

このスキルの問題を報告する