הלולאה הידנית
מישהו פותח את אתר הרגולטור, מוריד את ה-PDF, שם אותו בכונן משותף, ומשנה שם — כל עונת דיווח, על כל שם. זה זמן אנליסט שאתם משלמים עליו כעבודת ניקיון מסמכים.
למנהלי נכסים
58 מקורות רגולטור מנורמלים לטקסונומיית KPI אחת חוצת-GAAP — זהו אחזקות לפי טיקר, LEI או ISIN, השלימו יסודות בקריאה אחת, וקבלו webhook חתום כששם בתיק מגיש דיווח.
נסו את MCP החינמי ב-Claude, או שלחו לנו את היקום, לפני כל שיחה מסחרית.
הבעיה
מישהו פותח את אתר הרגולטור, מוריד את ה-PDF, שם אותו בכונן משותף, ומשנה שם — כל עונת דיווח, על כל שם. זה זמן אנליסט שאתם משלמים עליו כעבודת ניקיון מסמכים.
אין EDGAR גלובלי אחד. 10-K אמריקאיים, שנתיים של ESEF, Yūho, DART ו-MOPS מפרסמים כל אחד אחרת. תחזוקת מנתחים וסקרייפרים על פני 58 מקורות היא רבעוני-מהנדס שלעולם לא חוזרים.
קובצי PDF גולמיים וממירים מהמדף מאבדים מבנה טבלה ומשאירים פריטי שורה ב-GAAP מקומי. מסכים ותשובות RAG רצים על מספרים שאינם באמת ברי-השוואה בין אחזקות.
AI או הערת מחקר בלי מה ללחוץ אליו הם סיכון ברגע שהם מגיעים למנהל תיק. אם אי אפשר לפתוח את הדיווח מאחורי הסכום, אי אפשר להגן עליו.
מה מקבלים
דיווחים מ-SEC EDGAR, EDINET, OpenDART, MOPS, ESEF, Companies House ועוד ב-58 שווקים — כל רשומה מקשרת חזרה למסמך המקור.
הכנסות, מרווחים, EPS ודלתאות YoY ממופים לטקסונומיה אחת בזמן הניתוח — שאלו את אותם קודי line_items לאחזקה אמריקאית ולעמית קוריאני או יפני.
הרשמה לכל אסטרטגיה לסט טיקרים משלה. POST חתום נורה כשמרכיב מגיש דיווח — דסקי רעיונות מפסיקים לרוץ על גילויים של אתמול.
כל KPI וקטע נושאים filing_id וכתובת מקור. עקבו אחר המספר עד הגילוי לפני שהוא מגיע לישיבת התיק.
אינטגרציה
זהו אחזקות, שלפו KPI רב-שנתיים, ואז הירשמו ל-webhook של רשימת מעקב — תלות FastAPI מאמתת את חתימת 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, ותנאי תוכנית Business למשלוח webhook. MCP החינמי נשאר בין אם תחתמו ובין אם לא.
שאלות נפוצות
החצי האמריקאי זול יחסית מ-EDGAR. החלק היקר הוא הזנב הארוך של שווקים ופורמטים, ועוד שמירת נכונות KPI חוצי-GAAP כשמנפיקים מתקנים. OpenFilings הוא שכבת ההטמעה: קליטת מקור ראשוני, טקסונומיה מתוקננת ומשלוח בדחיפה.
כל תגובת KPI וקטע נקשרת חזרה ל-filing_id ולכתובת מסמך מקור עם חותמת זמן הפרסום המקורית. שבצו ציטוטים לשליפה או לתבנית ההערה כך שכל סכום בלחיצה אחת מהגילוי.
השאירו אותם. OpenFilings הוא השלמה לדיווחי מקור ראשוני ויסודות מנורמלים בשווקים שטרמינלים משרתים פחות — לא החלפה כוללת לתמחור או לקונצנזוס.
משלוח webhook חתום הוא יכולת של תוכנית Business. REST API ו-SDK ב-Python עובדים בתוכניות בתשלום; webhooks מוסיפים את שכבת הדחיפה מעל הסקר.
כן — שרת MCP החינמי עובד ב-Claude ובלקוחות MCP אחרים כבר היום. הדביקו את רשימת ה-ISIN או הטיקרים בטופס למטה ונשיב עם פירוט כיסוי ליקום שלכם.
לא. OpenFilings מכסה דיווחים רגולטוריים של מנפיקים רשומים ו-KPI/קטעים הנגזרים מהם — לא יסודות של חברות פרטיות ולא נתוני שוק. צרפו אותנו לספק המחירים כשצריך את שניהם.