Dokumentation → Screening und Bewertung
Dokumentation

Screening und Bewertung

Persistierte Bewertungen, Peer-Gruppen und Perzentile.

Wozu das gut ist, steht auf der Produktseite: Screening und Bewertung

GET /analysis/earnings

Earnings Analysis

Kennzahlen ueber alle Ticker im Termine-Cache.

  • by_country — setzt voraus, dass die Ticker mit origin=yf oder
origin=all geholt wurden (das Land kommt aus yfinance.info).
  • upcoming_earnings — Termine bis 90 Tage in der Zukunft mit Konfidenz
ab 0,6.
  • stale_tickers — Eintraege, deren fetched_at mehr als 7 Tage
zurueckliegt.

Keine Parameter.

Beispiel

curl "$API/analysis/earnings" \
  -H "X-API-Key: $KEY"
GET /analysis/earnings/isin-quality

Earnings Isin Quality

Qualitaetsuebersicht fuer den ISIN-basierten Termine-Sync.

Der Umfang umfasst die Eintraege in ticker_reference, die

  • eine nicht leere isin haben,
  • zu den angefragten type_filters gehoeren,
  • und market='stocks' sowie active=True sind.
NameTypBedeutung
type_filtersarray, in der Abfrage
optional · Vorgabe ['CS', 'ADRC']
include_untyped_stocksboolean, in der Abfrage
optional · Vorgabe False

Beispiel

curl "$API/analysis/earnings/isin-quality" \
  -H "X-API-Key: $KEY"
GET /analysis/ticker-reference/missing-isin

Missing Isin Analysis

Untersucht ticker_reference auf Eintraege mit market='stocks' ohne ISIN (Feld fehlt, ist null oder leer).

Liefert die Gesamtzahl der Aktien, wie viele davon keine ISIN haben, und die vollstaendige Liste der betroffenen Ticker.

Keine Parameter.

Beispiel

curl "$API/analysis/ticker-reference/missing-isin" \
  -H "X-API-Key: $KEY"
GET /performance/peer-comparison/{identifier}

Peer Comparison

Eine Aktie gegen ihre Peer-Group über ein Zeitfenster.

Liest nur aus price_history; wenn dort für den Titel oder die Gruppe keine Balken liegen, sagt coverage das explizit — eine Gruppe darf nie vollständig wirken, wenn sie es nicht ist.

NameTypBedeutung
identifierstring, im Pfad
Pflicht
levelstring, in der Abfrage
optional · Vorgabe branch
branch = onvista-Branche (76, Median 116 Unternehmen), sector = Sektor (16, deutlich grober)
windowstring, in der Abfrage
optional · Vorgabe 7d
eines von ['14d', '1d', '1m', '1w', '1y', '3m', '6m', '7d', 'ytd']
weightingstring, in der Abfrage
optional · Vorgabe market_cap
currencystring, in der Abfrage
optional · Vorgabe EUR
exclude_selfboolean, in der Abfrage
optional · Vorgabe True
den Titel selbst aus der Gruppe nehmen
min_market_capnumber, in der Abfrage
optional · Vorgabe 5000000000.0
Untergrenze für die Ausreißer-Nennung
min_trading_daysinteger, in der Abfrage
optional · Vorgabe 5
Reihen mit weniger Handelstagen im Fenster gelten als zu dünn
max_driversinteger, in der Abfrage
optional · Vorgabe 3
max_outliersinteger, in der Abfrage
optional · Vorgabe 3

Beispiel

curl "$API/performance/peer-comparison/SAP" \
  -H "X-API-Key: $KEY"
GET /scoring

Scoring Screener

Screener über die persistierten Scores (stock_scores) — gefiltert, sortiert, paginiert. Liefert die flachen Kennzahlen (ohne Volldetail).

NameTypBedeutung
min_chancenumber, in der Abfrage
optional
max_risknumber, in der Abfrage
optional
confidencestring, in der Abfrage
optional
high | medium | low
sourcestring, in der Abfrage
optional
onvista | sec_xbrl
sort_bystring, in der Abfrage
optional · Vorgabe chance
chance | risk | data_quality
limitinteger, in der Abfrage
optional · Vorgabe 100
offsetinteger, in der Abfrage
optional · Vorgabe 0

Beispiel

curl "$API/scoring" \
  -H "X-API-Key: $KEY"
POST /scoring/batch

Scoring Batch

Berechnet die Chance-Risiko-Profile für das gesamte adressierbare Universum (~11k) und persistiert sie in stock_scores. Background-Job — Fortschritt über GET /scoring/jobs/{job_id}. Ohne yfinance (Bewertungssäule für XBRL-Titel füllt der spätere Kurs-Cache).

NameTypBedeutung
limitinteger, in der Abfrage
optional
max. Titel (Test)

Beispiel

curl -X POST "$API/scoring/batch" \
  -H "X-API-Key: $KEY"
GET /scoring/compare/{level}/{group_id}

Scoring Compare

Vergleicht alle Unternehmen einer Taxonomie-Peer-Gruppe anhand ihrer Chance/Risk-Scores. level: grandparent | parent | keyword; group_id z.B. product:cloud_platform (Grandparent), product:security_cloud (Parent) oder saas_subscription_model (Keyword).

Liefert Gruppenstatistik (Median/Mittel/Quartile für Chance & Risk) und die Mitglieder mit ihrem gruppeninternen Perzentil (chance_percentile_in_group, risk_percentile_in_group). On-demand berechnet über die persistierten Scores.

NameTypBedeutung
levelstring, im Pfad
Pflicht
group_idstring, im Pfad
Pflicht
min_confidencestring, in der Abfrage
optional
high | medium | low — nur mind. diese Konfidenz
sortstring, in der Abfrage
optional · Vorgabe chance_desc
chance_desc | chance_asc | risk_desc | risk_asc
dedupboolean, in der Abfrage
optional · Vorgabe True
Mehrfachnotierungen desselben Unternehmens (company_id) zusammenfassen
limitinteger, in der Abfrage
optional
max. Ergebnisse (leer = vollständige Liste)

Beispiel

curl "$API/scoring/compare/grandparent/SAP" \
  -H "X-API-Key: $KEY"
GET /scoring/jobs/{job_id}

Scoring Job Status

NameTypBedeutung
job_idstring, im Pfad
Pflicht

Beispiel

curl "$API/scoring/jobs/job_7f3c" \
  -H "X-API-Key: $KEY"
GET /scoring/peers/{ticker}

Scoring Peers

Wo steht ein Ticker in seinen Taxonomie-Peer-Gruppen? Für jede Gruppe (parent + grandparent) das gruppeninterne Chance-/Risk-Perzentil des Tickers plus Gruppen-Median. Zusätzlich der bereits persistierte Sektor-Perzentil als universeller Fallback.

Grandparent-Gruppen werden standardmäßig auf kohärente/approved Cluster beschränkt (draft-Cluster lumpen unzusammenhängende Themen); Parent-Gruppen bleiben (feinkörnig, verlässlich). include_incoherent=true zeigt alle.

NameTypBedeutung
tickerstring, im Pfad
Pflicht
all_tagsboolean, in der Abfrage
optional · Vorgabe False
auch nicht-vergleichsrelevante Tag-Arten (geography, financial_metric, …)
include_incoherentboolean, in der Abfrage
optional · Vorgabe False
auch draft/nicht-kohärente Grandparent-Cluster einbeziehen
min_scoredinteger, in der Abfrage
optional · Vorgabe 3
Mindestzahl gescorter Peers je Gruppe

Beispiel

curl "$API/scoring/peers/SAP" \
  -H "X-API-Key: $KEY"
POST /scoring/percentiles

Scoring Percentiles

Berechnet Peer-Perzentile (universumsweit + je Sektor) über die persistierten Scores und schreibt sie zurück. Nach /scoring/batch laufen lassen. chance_percentile (höher=besser), risk_percentile (niedriger=besser).

Keine Parameter.

Beispiel

curl -X POST "$API/scoring/percentiles" \
  -H "X-API-Key: $KEY"
POST /scoring/price-cache/refresh

Refresh Price Cache

Füllt den Kurs-Cache für alle XBRL-Titel mit Aktienanzahl (~4.900) per yfinance-Batch — Voraussetzung, damit der Batch-Score die Bewertungssäule auch für SEC-only-Titel füllt. Background-Job, danach /scoring/batch erneut.

NameTypBedeutung
limitinteger, in der Abfrage
optional

Beispiel

curl -X POST "$API/scoring/price-cache/refresh" \
  -H "X-API-Key: $KEY"
GET /scoring/{ticker}

Stock Score

Fundamentales Chancen-Risiko-Profil (Phase 1a, absolut) für einen Ticker.

Live berechnet (inkl. yfinance-Kurs für XBRL-Titel). ?stored=true liefert stattdessen den zuletzt persistierten Batch-Score.

NameTypBedeutung
tickerstring, im Pfad
Pflicht
storedboolean, in der Abfrage
optional · Vorgabe False
persistierten Score liefern statt live rechnen

Beispiel

curl "$API/scoring/SAP" \
  -H "X-API-Key: $KEY"