Allgemeines Projekt

Vorhersage von Aktienkursen mittels tiefen LSTM-Netzwerken

Silvio Jäger, Joel Erzinger

Die random walk Theorie [1] besagt, dass der Verlauf eines Aktienkurses völlig zufällig ist, und dieser nicht anhand vergangener Kursdaten vorhergesagt werden kann. Da es jedoch diverse Investoren gibt, die regelmässig Gewinne an der Börse erzielen können, ist diese Theorie sehr umstritten. Eine Vorhersage, die nur knapp besser ist als der Zufall, kann bereits zu einer profitablen Anlagestrategie führen. Diese Arbeit beschäftigt sich mit der These, Aktienkurse mittels rekurrenten Neuronalen Netzen (RNN = recurrent neural nets) mit LSTM Zellen (LSTM=long-short term memory) vorhersagen zu können [2-6]. Dabei werden verschiedene Features und Netzwerkstrukturen getestet und die besten Ergebnisse vorgestellt. Die Arbeit behandelt sowohl das Beschaffen und Vorverarbeiten der Daten als auch die systematische Gittersuche zur Findung der optimalen Parametrisierung des neuralen Netzwerkes.

Was sind LSTM-Netzwerke?

Das menschliche Gehirn ist ein Rekurrentes Neuronales Netzwerk (RNN), ein Netzwerk von Neuronen mit Rückkopplungsverbindungen. Es kann viele Verhaltensweisen erlernen, die mit herkömmlichen maschinellen Lernmethoden nicht erlernbar sind. Das Interesse an künstlichen RNNs für technische Anwendungen ist ungebrochen. Ein Feedback-Netzwerk namens Long Short-Term Memory LSTM [2-6] überwindet die grundlegenden Probleme traditioneller RNNs und lernt effizient, bisher nicht erlernbare Aufgaben zu lösen, z.B.:

  1. Erkennung von zeitlich erweiterten Mustern in verrauschten Eingabesequenzen
  2. Erkennung der zeitlichen Abfolge von weit auseinanderliegenden Ereignissen in verrauschten Eingangsdaten
  3. Extraktion von Informationen, die durch den zeitlichen Abstand zwischen den Ereignissen codiert werden.

LSTM hat das maschinelle Lernen und die künstliche Intelligenz (KI) verändert. LSTMs sind in der Lage, Eingangssequenzen auf Ausgangssequenzen abzubilden, entweder in Form von überwachtem oder nicht überwachtem Lernen. Sie sind zwar rechenintensiver, jedoch biologisch plausibler als andere adaptive Ansätze wie beispielsweise Hidden Markov-Modelle, welche keine kontinuierlichen Zustände aufweisen, oder Support Vektor Maschinen, welche überhaupt keine internen Zustände aufweisen.

In dieser Arbeit geht es um die Abklärung der Machbarkeit, Börsenkurse mittels tiefen LSTM-Netzen voraussagen zu können.

Daten-Analyse und Feature Engineering

Ein wichtiger Teil der Arbeit ist beinhaltet die korrekte Vorverarbeitung der Daten. Hierzu sind alle Verfügbaren Kurse mittels Kreuzkorrelation verglichen, die Daten normalisiert und Lücken aufgearbeitet worden. Das Ergebnis lässt sich in einer Korrelationskarte graphisch darstellen.

Klassifikation und Regression

Die Vorhersage der Aktienkurse wird mit verschiedenen Regressions- und Klassifizierungs-Modellen implementiert und evaluiert. Regressionsmodelle versuchen den exakten Kurswert vorauszusagen, während die Klassifizierungsmethode die grobe Richtung des Kurses zu bestimmen versucht.

Nebst den reinen Kursdaten werden auch verschiedene Indikatoren berechnet und als Input für das LSTM Netzwerk definiert. Mit diesen verschiedenen Inputs und Konfigurationen des Netzwerks werden automatisierte Gittersuchen über durchgeführt. Die erhaltenen Ergebnisse werden mittels eigenen Validierungsmethoden ausgewertet. Zusätzlich wurden diese auch noch per Kreuzvalidierung ausgewertet.

Obwohl die Vorhersage diverser Aktienkurse nicht signifikant besser als der Zufall ausgefallen ist, wurden Modelle gefunden, die die Richtung des Kurses in über 70 Prozent der Fälle korrekt vorhersagen konnten. Dies zeigt auf, dass durchaus Potential besteht, LSTM Netzwerke als Indikatoren für Kaufentscheidungen im Finanzmarkt einzusetzen.

Online Learning verbessert deutlich die Performance

LSTMs schneiden am besten ab, wenn sie erst durch eine ausreichende Menge an Trainingsdaten vortrainiert und anschliessend mit Online-Updates kombiniert und aktualisiert, d.h. nachtrainiert werden [6]. Dies hat zwei wesentliche Vorteile: Das Training der Online-Batches ist weniger rechenintensiv und zweitens tragen die Online-Daten der nicht-stationären stochastischen Natur der Kursdaten Rechnung. Es scheint, dass die Kurskorrelationen der ausgewählten Aktien- und Börsenkurse nur für kurze Zeit gültig sind. Eine Zeitreihe ist stationär, wenn sie einen konstanten Erwartungswert und eine nicht vom Zeitpunkt t abhängige Varianz besitzt. Mit dem Dicky Fuller Test [7] lässt sich eine Aussage über den Grad Stationarität eines stochastischen Prozesses basierend auf den Zeitreihendaten machen. Je näher der p-Wert der Teststatistik bei null liegt, desto stationärer ist die Zeitreihe. Tatsächlich schneiden die trainierten LSTM-Netze in Kombination mit Online-Learning deutlich besser ab als über längere Zeit statisch trainierten LSTM-Netze.

Fazit: Die Börse ist kurzfristig stationär

So zufällig die Börse zu sein scheint, so zufällig fallen meist auch die Vorhersagen aus. Und doch gibt es einige Vorhersagen, welche erstaunlich gute Resultate liefern. Nur eben sind diese nicht allgemein gültig. Die Frage, ob sich nun die Börse mittels LSTM vorhersagen lässt, kann wie folgt beantwortet werden: Die Vorhersage ist besser als der Zufall und doch nicht gut genug, um sich blind darauf zu verlassen. Trotzdem sollte man sich bei Kaufentscheidungen nicht nur auf die Vorhersage des Netzwerkes verlassen, sondern auch andere Wirtschaftliche Aspekte und Indikatoren berücksichtigen. Im Grossen und Ganzen kann man jedoch durchaus sagen, dass Potential besteht, LSTM Netzwerke als Indikatoren für Kaufentscheidungen im Finanzmarkt einzusetzen.

Mittels Online-Learning kann der nicht-stationären Natur oder der nur für kurze Zeit gültigen Annahme der Stationarität der Prozesse Rechnung getragen werden. Aktien- und Börsenkurse scheinen korreliert zu sein, auch untereinander, aber diese Korrelationen sind nur für kurze Zeit gültig. Tatsächlich schneiden die trainierten LSTM-Netze in Kombination mit Online-Learning deutlich besser ab als über längere Zeit statisch trainierten LSTM-Netze.

Disclaimer

Man kann durchaus in Betracht ziehen, eine Vorhersage des Kurses dieser Arbeit als weiteren Indikator für andere Tätigkeiten an der Börse einzusetzen. Ohne weitere Indikatoren oder Strategien sollten damit aber keine Kaufentscheide gefällt werden.

Der komplette Programm-Code steht frei online auf dem Code Repository von Github zur Verfügung:

https://github.com/silviojaeger/ba_machine_learning_2019

Referenzen

[1]  Random Walk: https://de.wikipedia.org/wiki/Random_Walk

[2]  Sepp Hochreiter, Jürgen Schmidhuber: Long Short Term Memory,  Neural Computation 9(8):1735-1780, 1997, https://www.bioinf.jku.at/publications/older/2604.pdf

[3]  Long Short-Term Memory: http://people.idsia.ch/~juergen/rnn.html

[4]  J. Schmidhuber. Deep Learning in Neural Networks: An Overview. Neural Networks, Volume 61, January 2015, Pages 85-117 (DOI: 10.1016/j.neunet.2014.09.003), published online in 2014.

[5]  Ian Goodfellow and Yoshua Bengio and Aaron Courville : Deep Learning, MIT Press (2016), http://www.deeplearningbook.org

[6]  Jack Press: LSTM Online Training and Prediction:Non-Stationary Real Time Data Stream Forecasting, Department of Computer Science, Wayne State University, https://www.researchgate.net/publication/328228359_LSTM_Online_Training_and_Prediction_Non-Stationary_Real_Time_Data_Stream_Forecasting

[7]  Dickey, D.A. und W.A. Fuller: Distribution of the Estimators for Autoregressive Time Series with a Unit Root, Journal of the American Statistical Association, 1979, 74, S. 427–431. doi:10.1080/01621459.1979.10482531 JSTOR 2286348

Laufzeit: 27.11.2019