Ressourcen
Methodik
So funktioniert StockVS
StockVS entsteht durch eine automatisierte Pipeline: Datenerfassung, ein nächtlicher Build, automatisierte Prüfungen und Veröffentlichung – jede davon im Folgenden beschrieben.
Datenerhebung
Marktdaten stammen von Yahoo Finance über die Open-Source-Bibliothek yfinance: tägliche Kurse und Handelsvolumen, Dividenden, Unternehmens- und Fondsprofile mit wichtigen Kennzahlen, jährliche Gewinn- und Verlustrechnungen für Aktien und die größten Positionen für ETFs. Die erfassten Wertpapiere stammen aus den öffentlichen Notierungslisten US-amerikanischer und kanadischer Börsen; Nachrichtenschlagzeilen stammen vom Nachrichtendienst Finnhub. Bei Hinterlegungsscheinen (ADRs) entspricht die Marktkapitalisierung dem ADR-Kurs multipliziert mit der Anzahl der ADR-äquivalenten Aktien, so wie Yahoo Finance sie ausweist; sie kann vom Wert des Unternehmens an seinem Heimatmarkt abweichen, wenn der ADR mit einem Aufschlag gehandelt wird (zum Beispiel TSM und SKHY).
Die Datenpipeline
Erfassungs-Jobs schreiben Kurse und Profil jedes Wertpapiers sowie Nachrichtenschlagzeilen für Aktien in eine PostgreSQL-Datenbank. Jede Nacht rendert ein statischer Website-Build jede Seite aus dieser Datenbank, und automatisierte Prüfungen kontrollieren das Ergebnis; schlägt eine Prüfung fehl, wird nichts hochgeladen, und die vorherige Version bleibt online. Ein Build, der die Prüfung besteht, wird auf ein statisches Hosting hinter dem Netzwerk von Cloudflare hochgeladen, und anschließend wird eine zufällige Stichprobe der neuen Seiten geladen, um zu bestätigen, dass sie antworten.
Aktualisierungsplan
Kurse werden an jedem Handelstag nach Börsenschluss erfasst, und der nächtliche Build startet, sobald die Erfassung abgeschlossen ist, sodass die Seiten den Schlusskurs dieses Tages in der Regel noch am selben Abend zeigen; Builds am Wochenende verwenden die Daten der letzten Handelssitzung. Unternehmensprofile und wichtige Kennzahlen werden an jedem Wochentag aktualisiert, ETF-Bestände und die vollständige ETF-Kurshistorie wöchentlich, und die Gewinn- und Verlustrechnungen jedes Unternehmens etwa einmal pro Quartal, bei einer neuen Notierung innerhalb einer Woche. Nachrichtenschlagzeilen für Aktien werden für die größten Unternehmen täglich aktualisiert, für kleinere alle paar Tage. Schlägt die Erfassung an einem Wochentag fehl, läuft der Build an diesem Abend nicht, die vorherige Version bleibt online, und ein Überwachungssystem löst einen Alarm aus.
Wie Kennzahlen berechnet werden
Renditen für gleitende Zeiträume, Kalenderjahre und Monate werden aus den gespeicherten täglichen Schlusskursen berechnet, so wie Yahoo Finance sie beim jeweiligen Download um Splits und Dividenden bereinigt hat; die Volatilität ist die annualisierte Standardabweichung der täglichen Renditen. Marktkapitalisierung, Bewertungskennzahlen, Margen, Gewinn je Aktie und Dividendenrenditen werden so angezeigt, wie Yahoo Finance sie ausweist, und ein Wert außerhalb eines plausiblen Bereichs wird nicht angezeigt. Kennzahlen behalten ihre Berichtswährung, US- oder kanadische Dollar, und werden nie umgerechnet; Summen, die beide Währungen umfassen, werden je Währung angegeben. Branchenvergleiche verwenden den Branchenmedian, und Abstände zwischen Prozentwerten werden in Prozentpunkten angegeben.
Wie die Analyse verfasst wird
Die Analyse auf Aktien- und ETF-Seiten wird aus vorformulierten Satzvorlagen in jeder unterstützten Sprache zusammengesetzt und mit Zahlen aus der Datenbank gefüllt. Fehlende Daten lassen einen Satz entfallen, anstatt einen Platzhalter zu hinterlassen. Die Vorlagen beschreiben die Daten und ihren Vergleich mit dem Branchenmedian, ohne Bewertungen, Empfehlungen oder Prognosen. Beim Erstellen der Seite läuft kein Sprachmodell, und kein Modell verfasst Text über eine einzelne Aktie oder einen einzelnen Fonds. Die abstrakten Illustrationen neben manchen Nachrichtenschlagzeilen wurden einmalig von einem Bildmodell erzeugt und stellen die Geschichten nicht dar.
Qualitätskontrollen
Bereits während der Erfassung werden Kurse nur für Tage gespeichert, an denen die Börse des jeweiligen Wertpapiers geöffnet war, ein Kurs des laufenden Tages erst nach Handelsschluss, und die tägliche Aktualisierung kann einen gespeicherten Schlusskurs nicht durch einen Live-Kurs überschreiben. Ein abgeschnittener Name aus dem Datenfeed kann einen gespeicherten vollständigen Namen nicht ersetzen, und Wertpapiere, die keine Kurse mehr liefern, werden im Laufbericht markiert. Auf den Seiten zeigt ein nicht mehr aktueller Kurs das Datum seines letzten Handels, und doppelt notierte Unternehmen werden nur einmal gezählt.
Vor jeder nächtlichen Veröffentlichung lesen automatisierte Prüfungen die fertige Seite, Seite für Seite oder stichprobenweise. Der Build muss in seiner Größe nahe an der zuletzt veröffentlichten Version liegen, mindestens so viele Seiten enthalten, wie seine Sitemaps aufführen, und Kurse enthalten, die so aktuell sind, wie es der Zeitplan verlangt. Strukturierte Daten müssen wohlgeformt sein, Kursdaten müssen auf Handelstage fallen und dürfen nie in der Zukunft liegen, jede Seite darf nur ein einziges Datenstand-Datum tragen, und Zahlen und Summen müssen über die Seiten hinweg übereinstimmen. Keine Tabelle darf ein Unternehmen doppelt aufführen oder unterschiedliche Währungen addieren. Die Analyse und die Übersichtstexte müssen im Schriftsystem der Seitensprache verfasst sein.
Bekannte Einschränkungen
StockVS bietet keine Echtzeitkurse: Die Daten beziehen sich auf den Handelsschluss, und manche Seiten können eine oder mehrere Sitzungen zurückliegen, wenn Yahoo Finance einen Kurs verspätet veröffentlicht oder eine Erfassung fehlschlägt. Die Kennzahlen sind nur so genau wie die Daten von Yahoo Finance. Nicht alle Finanzkennzahlen sind für jede Aktie oder jeden ETF verfügbar. Die Verfügbarkeit historischer Daten variiert je nach Ticker. Die meisten Kurshistorien werden Tag für Tag fortgeschrieben, sodass eine spätere Split- oder Dividendenbereinigung ältere Kurse möglicherweise nicht mehr erreicht und langfristige Renditen von anderen Quellen abweichen können. Wertpapiere, die nicht mehr gehandelt werden, behalten ihre Seite, wobei der letzte Kurs als nicht mehr aktuell markiert ist, und Unternehmensbeschreibungen erscheinen nur auf den englischen Aktienseiten.
Korrekturen
Fehler werden durch die oben beschriebenen automatisierten Prüfungen und durch Durchsicht der veröffentlichten Seiten entdeckt. Jeder wird an seinem Ursprung korrigiert – in den Daten, einer Berechnung oder einer Vorlage –, und der nächste nächtliche Neuaufbau trägt die Korrektur auf jede betroffene Seite; Korrekturen werden im internen Ticketsystem des Projekts erfasst. Derzeit gibt es keinen öffentlichen Kanal, um Fehler zu melden.