Fortschritte in der Rechenleistung haben es zunehmend praktikabler gemacht, große und oft unstrukturierte Datenquellen wie Text, Audio und Video für wissenschaftliche Analysen zu nutzen. In den Sozialwissenschaften sind Textdaten die am schnellsten wachsende Datenform in der akademischen Forschung.

In einem kürzlich veröffentlichtem Forschungspapier wurde eine neue Technik des maschinellen Lernens vorgestellt, mit der man die sentimentale Struktur eines Textkorpus verstehen kann, ohne sich auf bereits vorhandene Wörterbücher stützen zu müssen.

Die vorgeschlagene Methode hat drei Haupttugenden.

  • Einfachheit – sie erfordert lediglich ökonometrische Standardtechniken wie Korrelationsanalysen und Maximum-Likelihood-Schätzungen. Im Gegensatz zu bspw.  Deep Learning Ansätzen, die für ihre Benutzer häufig als Black Boxes bezeichnet werden, ist der hier vorgeschlagene Ansatz des supervised Learnings laut den Autoren vollständig „white box“.
  • Minimale Rechenleistung – die Methode kann mit einem Laptop in wenigen Minuten für Textkorpora mit Millionen von Dokumenten ausgeführt werden.
  • Die Methode erlaubt es dem Anwender, ein „Stimmungsbewertungsmodell“ zu konstruieren, das speziell an den Kontext des vorliegenden Datensatzes angepasst ist. Dadurch wird der Anwender davon befreit, sich auf ein bereits vorhandenes Wörterbuch zu verlassen, das ursprünglich für verschiedene Zwecke konzipiert wurde.

Die im Forschungspapier dargestellte empirische Analyse befasst sich mit der vielleicht am häufigsten untersuchten textbasierten Forschungsfrage im Finanzbereich, nämlich dem Ausmaß, in dem Wirtschaftsnachrichten die beobachteten Vermögenspreisschwankungen erklären und vorhersagen.

Genauer gesagt wird durch eine Art des Machine Learnings die Datenbank des Dow Jones Newswires analysiert bzw. genutzt, um Sentiments für Aktien zu erstellen welche die Rendite des Folgetages hervorbringen sollen. Die Datenbank umfasst insgesamt 38 Jahre und die verwendeten Artikel der Datenbank werden immer einer bestimmten Aktie zugewiesen, um Dopplungen zu vermeiden. Zusätzlich werden die verwendeten Artikel, welche alle einer Aktie zugeordnet worden sind, mit den jeweiligen Aktienrenditen verbunden.

Das Hauptmerkmal dieses Ansatzes besteht darin, dass das Stimmungs-Scoring-Modell aus dem gemeinsamen Verhalten von Artikeltext und Aktienrenditen lernt, anstatt die Stimmungs-Scores lediglich anhand der Texte abzuleiten.

Die Prognosefähigkeit des Modells wird durch eine einfache Handelsstrategie demonstriert, bei der bei positiver Nachrichtenlage Aktien gekauft und bei negativer Stimmung Aktien verkauft werden. Das auf dem Modell basierende Portfolio liefert ausgezeichnete risikobereinigte Out-of-Sample-Renditen und übertrifft eine ähnliche Strategie, die auf den Bewertungen von RavenPack (dem branchenführenden kommerziellen Anbieter von Bewertungen für die Stimmung in den Finanznachrichten) basiert.

Im Folgenden möchte ich eine kurze Zusammenfassung über das Forschungspapier sowie darin enthaltenen Erkenntnisse geben.

Datensatz

Der verwendete Textdatensatz ist die Dow Jones Newswires Machine Text Feed and Archive Datenbank. Sie enthält Echtzeit-Newsfeeds vom 1. Januar 1989 bis zum 31. Juli 2017, die 22.471.222 einzelne Artikel umfassen. Ungefähr 62,5% der Nachrichtenartikel sind mit einem oder mehreren festen Tags versehen, die die wichtigsten Firmen beschreiben, auf die sich der Artikel bezieht. Um die Daten möglichst genau auf die Modellstruktur abzustimmen, werden Artikel mit mehr als einem Firm-Tag entfernt, d.h. 16,4 % der Artikel, und man erhält so eine Stichprobe von 10.364.189 Artikeln. Es werden das Datum, der genauen Zeitstempel, der markierte Firmenticker, die Überschrift und der Text jedes Artikels verfolgt.

Mit Hilfe von Ticker-Tags (Aktienticker) wird jeder Artikel mit der mit Tags versehenen Marktkapitalisierung des Unternehmens und den angepassten täglichen Renditen abgeglichen.

Folgenden zwei Grafiken bieten einen guten Überblick über die veröffentlichten Artikel nach der jeweiligen Uhrzeit und nach den einzelnen Monaten.

Die grundlegende Vorgehensweise zur Aufbereitung eines Textdatensatzes hatte ich bereits in einem vorherigen Artikel erläutert. Insgesamt werden am Ende der Aufbereitung 2337 negative sowie 353 positive Wörter herausgefiltert.

Bildung des Modells

Das Modell wird mit Hilfe der Schätzung eines rollierenden Betrachtungszeitraum berechnet. Das rollierende Fenster besteht aus einem Intervall von fünfzehn Jahren, von denen die ersten zehn Jahre für das Training und die letzten fünf Jahre für die Validierung/Tuning verwendet werden. Das anschließende Ein-Jahres-Fenster wird dann für Out-of-Sample-Tests genutzt. Am Ende des Testjahres wird die gesamte Analyse um ein Jahr vorgerollt und erneut trainiert. Dieses Verfahren wird so lange wiederholt, bis die gesamte Stichprobe verwendet wurde, was einer 14-fachen Schätzung und Validierung des Modells entspricht.

Performance

Obige Abbildung zeigt die kumulativen Ein-Tages-Handelsstrategierenditen auf der Grundlage der Out-of-Sample Stimmungsvorhersagen. In gelb ist zum Vergleich die Performance des  S&P500 dargestellt.

Bei den Portfolios wird unterschieden zwischen Equal-Weighted (Gleichgewichtet) und Value-weighted (Wertgewichtet).

In der Out-of-Sample-Testperiode werden die Sentiment-Werte der Artikel unter Verwendung des optimal abgestimmten Modells geschätzt, das aus der Validierungsstichprobe ermittelt wurde. Falls eine Aktie in mehreren Nachrichtenartikeln am selben Tag erwähnt wird, wird die Rendite am nächsten Tag unter Verwendung des durchschnittlichen Sentiment-Wertes über die übereinstimmenden Artikel prognostiziert.

Grundlegendes Vorgehen

An dieser Stelle möchte ich nicht allzu tief in die statistischen Feinheiten des Modells abtauchen, sondern lediglich grob erläutern welche Schritte nun letztendlich zur oben gezeigten Performance führen.

Zu erst wird der Datensatz aufbereinigt, um jeden Artikel eine gewisse Aktie zuzuordnen bzw. den jeweiligen Tag hinzufügen zu können. Anschließend verknüpft man die zugeordneten Artikel mit den täglichen Renditen der jeweiligen Aktien, da dass Model auf beiden Komponenten basiert. Um das Modell zu trainieren, wird ein rollierendes Zeitfenster gewählt wie es weiter oben übersichtlich dargestellt wurde.

Die Aktienauswahl dieses Modells erfolgt folgendermaßen:

  1. Berechnung des Sentiment-Scores jeder Aktie auf Basis der Artikel
  2. Ordnen der Aktien nach Höhe des Scores
  3. Long die positivste 50 Scores und Short die negativsten 50 Scores
  4. Unterscheidung zwischen equal-weighted (gleichgewichteten) und value-weighted (wertgewichteten) Portfolios
  5. Das Portfolio wird zu Beginn eines jeden Tages umgeschichtet

Im Forschungspapier selbst wird auch noch auf den Kostenfaktor eingegangen, was ich an dieser Stelle allerdings nicht machen werden. Der interessierte Leser sei an dieser Stelle direkt auf Abschnitt 3.8 im Forschungspapier verwiesen.

Fazit

Im Artikel habe ich grob die Vorgehensweise der Autoren dargestellt, da ich wollte, dass für jeden Leser die Vorgehensweise nachvollziehbar ist. Die Einzelheiten finden sich im Forschungspapier wieder, weshalb ich an dieser Stelle auch darauf verweisen möchte. Ich wollte wie schon in vorherigen Artikeln, welche ebenfalls dem Themengebiet des Machine Learnings zuzuordnen sind, aufzeigen, wie ein Privatanleger mit lediglich seinem eigenen Laptop und dem nötigen Know-How durchaus überzeugende Modelle erstellen kann. Selbstverständlich kann man sich ein solches Know-How nicht schnell mit ein oder zwei Bücher aneignen, doch gibt es im Internet genügend Anbieter, die einen einfachen Einstieg im Bereich Machine Learning durch Online-Kurse ermöglichen.

Falls dir dieser Artikel gefallen hat, du dazu Fragen hast oder in Zukunft mehr über das Thema Machine Learning lesen möchtest, dann teile mir das doch bitte in den Kommentaren mit.

Mit freundlichen Grüßen und bleib gesund,

Dein Felix von Portfolio-Architekt

0 Kommentare

Dein Kommentar

An Diskussion beteiligen?
Hinterlasse uns Deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.