手動ループ
誰かが規制当局のサイトを開いて PDF をダウンロードし、それを共有ドライブに置き、名前を変更します。それは、報告シーズンごとに、あらゆる名前にわたって行われます。それは、アナリストが文書管理作業に支払う時間です。
資産運用会社向け
1 つのクロス GAAP KPI 分類法に正規化された 62 規制当局のソース — ティッカー、LEI、または ISIN によって保有株を解決し、1 回の呼び出しでファンダメンタルズをバックフィルし、書籍に名前が登録されたときに署名付き Webhook を取得します。
pip install openfilings — または、商用通話の前に Claude の無料の MCP を試してください。
問題
誰かが規制当局のサイトを開いて PDF をダウンロードし、それを共有ドライブに置き、名前を変更します。それは、報告シーズンごとに、あらゆる名前にわたって行われます。それは、アナリストが文書管理作業に支払う時間です。
単一のグローバル EDGAR はありません。米国の 10-Ks、ESEF 年刊誌、ゆうほう、DART、MOPS はそれぞれ発行方法が異なります。 62 ソース全体でパーサーとスクレイパーを維持することは、エンジニアの仕事であり、決して取り戻すことはできません。
Raw PDF と既製のコンバータはテーブル構造を失い、行項目がローカル GAAP に残ります。スクリーンと RAG の回答は、実際には保有銘柄間で比較できない数値に基づいて実行されます。
クリックする先が何もない AI や研究ノートは、PM に届いた瞬間に責任を負います。フィギュアの後ろにあるファイルを開けなければ、それを守ることはできません。
得られるもの
SEC EDGAR、EDINET、OpenDART、MOPS、ESEF、Companies House など 62 市場全体からの提出 — すべての記録は元の文書にリンクされています。
収益、利益率、EPS、および前年比デルタは解析時に 1 つの分類法にマップされます。米国の保有株と韓国または日本の同業他社に対して同じ line_items コードをクエリします。
各戦略を独自のティッカー セットにサブスクライブします。署名済みの POST は、構成員がファイルを作成したときに起動されます。つまり、昨日の開示に基づいてアイデア デスクの実行が停止されました。
すべての KPI とセクションには、filing_id とソース URL が含まれます。この数字をポートフォリオ会議に到達する前の開示に遡って追跡します。
統合
保有状況を解決し、複数年の KPI を取得し、ウォッチリスト Webhook をサブスクライブします。HMAC 署名を検証し、型指定されたイベントを返します。
portfolio_financials.py
from openfilings import Client
client = Client(api_key="of_...") # or OPENFILINGS_API_KEY
# Resolve holdings, then pull multi-year KPIs in one call
for ticker in ["AAPL", "7203.T", "005930.KS"]:
entity = client.entities.search(ticker=ticker).entity
market = entity.listings[0].market_id
series = client.companies.financials(
ticker=ticker,
market_id=market,
fiscal_year_from=2020,
fiscal_year_to=2024,
line_items=["revenue", "ebitda", "net_income"],
)
for period in series.periods:
print(entity.canonical_key, period.fiscal_year, period.values)webhook_handler.py · FastAPI
import os
from fastapi import Depends, FastAPI
from openfilings import Client
from openfilings.integrations.fastapi import openfilings_webhook_dependency
from openfilings.webhooks import WebhookEvent
app = FastAPI()
client = Client(api_key=os.environ["OPENFILINGS_API_KEY"])
verify = openfilings_webhook_dependency(os.environ["OPENFILINGS_WEBHOOK_SECRET"])
@app.post("/openfilings-webhook")
async def on_filing(event: WebhookEvent = Depends(verify)) -> dict:
if event.event == "filing.discovered":
kpis = client.filings.kpis(event.data["filing_id"])
# ... refresh the screen / research queue ...
print(event.data["ticker"], kpis.canonical.get("revenue"))
return {"ok": True}ライブ中継
始めましょう
対象とするユニバースを貼り付けます。市場ごとの対象範囲の詳細、API アクセス、Webhook 配信のビジネス プラン条件がフォローアップされます。署名するかどうかに関係なく、無料の MCP を保持してください。
よくある質問
米国の半分はEDGARから比較的自由です。コストがかかる部分は、市場とフォーマットのロングテールに加えて、発行者が修正するときにクロスGAAP] KPIを正しく維持することです。 OpenFilings はドロップイン層です: プライマリソースの取り込み、正規の分類法、およびプッシュ配信。
すべての KPI とセクションの応答は、元のリリース タイムスタンプを持つ file_id とソース ドキュメント URL に関連付けられます。引用を検索またはメモのテンプレートに結び付けて、すべての図をワンクリックで開示できるようにします。
保管しておいてください。 OpenFilings は、一次情報源の提出書類と、サービスが提供されていない端末が市場全体で正規化されたファンダメンタルズを補完するものであり、価格設定やコンセンサスを完全に置き換えるものではありません。
署名付き Webhook 配信はビジネス プランの機能です。 REST API と Python SDK は有料プランで動作します。 Webhook は、ポーリングの上にプッシュ レイヤーを追加します。
はい — 無料の MCP サーバーは現在、Claude および他の MCP クライアントで動作します。以下のフォームに ISIN またはティッカー リストを貼り付けてください。ユニバースのカバレッジの詳細が返信されます。
No. OpenFilings では、上場発行者の規制当局への届出と派生した KPI/セクションが対象となっており、民間企業のファンダメンタルズや市場データは対象外です。両方が必要な場合は、価格ベンダーと組み合わせてください。