Deutlicher Vorteil gegenüber statistischen Methoden

Aktienkursprognose mit neuronalen Netzwerken

29.09.1989

Um die Leistungsfähigkeit neuronaler Netze an einem realen Problem zu testen, wurde versucht, die Tageskurse zufällig ausgewählter Aktien mit verschiedenen Typen neuronaler Netzwerke vorherzusagen. Die empirische Analyse der Ergebnisse läßt erwarten, daß neuronale Netzwerke die Prognose von Aktienkursen (und allgemeiner: die Prognose chaotischer Zeitreihen) bei einer gleichzeitigen Verbesserung des theoretischen und praktischen Instrumentariums zukünftig erheblich verbessern könnten.

Neuronale Netzwerke erleben zur Zeit einen beispiellosen Boom. Die Gründe dafür sind, (..) diese "intelligenten" Netzeke selbständig Zusammenhänge erkennen und lernen können, die ansonsten nur sehr schwer explizit zu formulieren sind.

Der Schwerpunkt lag im Bankenbereich

Um eine realistische Einschätzung der Leistungsfähigkeit neuronaler Netzwerke zu erhalten, haben wir umfangreiche Analysen mit verschiedenen Modellen neuronaler Netzwerke durchgeführt. Der Anwendungsschwerpunkt lag dabei im Bankenbereich. Es sollte empirisch untersucht werden, ob konventionell sehr komplexe Probleme mit neuronalen Nutzen gelöst werden können (..) welche Probleme dabei entstehen.

Als Prüfstein diente uns die technische Aktienanalyse und hier speziell die kurzfristige, das heißt tageweise, Kursprognose von Aktien. Der Grund für die Wahl dieser Anwendung waren vorherige Untersuchungen, die Aktienkursprognose mit Expertensystemen zu realisieren. Diese Bemühungen waren trotz anfänglicher Erfolge nicht ermutigend. Der Aufwand, der benötigt wird, das für die Kursprognose relevante Wissen zu akquirieren, umzusetzen und zu aktualisieren, wäre enorm gewesen. Daher gaben wir diesen Ansatz zunächst auf.

Die Idee, das Problem der Kursprognose alternativ mit neuronalen Netzen anzugehen, kam uns, als wir erkannten, daß die Kurse der Aktien nichts anderes darstellen als "chaotische Zeitreihen", die um so chaotischer werden, je kürzer der Prognosezeitraum ist. Liegt die Prognosegrenze innerhalb weniger Minuten oder Stunden, sehen die Kurse wie vertauschte Signale aus.

Selbst die tageweise Prognose, die wir genauer untersucht haben, muß starke kurzfristige Schwankungen berücksichtigen und kann daher nur sehr begrenzt von den Methoden der klassischen technischen Aktienanalyse Gebrauch machen (es kommt nur sehr selten zu solch klassischen Gebilden wie "Kopf Schulter-Formationen" oder W- und M-Formationen, zudem werden Nacken- und Widerstandslinien praktisch täglich durchbrochen, und Trendkanäle können nur selten über mehrere Tage angegeben werden.

Konventionelle Prognose-Methoden arbeiten am besten dort, wo der Kursverlauf ohne Verlust der Vorhersagerelevanz durch statistische Verfahren geglättet werden kann. Dies ist bei mittelfristigen Anlagen etwa für Privatanleger, die Aktien gewöhnlich über mehrere Wochen und Monate halten, realistisch und sinnvoll. Gute Statistikprogramme liefern für diese Bereiche Trefferquoten für die Prognose um 60 Prozent (±10 Prozent).

Großanleger und Händler stehen aber in der Regel vor einem anderen Problem. Sie wollen und müssen große Mengen von Aktien innerhalb weniger Tage oder Stunden kaufen und möglichst mit Gewinn wieder verkaufen. Der Gewinn kommt hier jedoch nicht wie bei dem privaten Anleger durch den möglichst hohen Kurszuwachs weniger Aktien zustande, sondern durch den relativ kleinen Kursanstieg sehr vieler Aktien.

Da die Kursschwankungen bei solch kurzen Zeiträumen aber in der Regel nur sehr gering sind (gewöhnlich nur wenige Mark), würden statistische Verfahren, die zur Prognose die Kurse zu stark glätten, gerade das vernachlässigen, was für die kurzfristige Vorhersage von zentraler Bedeutung ist: die kleinen Kursveränderungen.

Unser Ansatz war daher, das Prognoseproblem alternativ als ein Signalerkennungsproblem zu interpretieren. Kurse wurden von uns als Signale interpretiert, die "verrauscht" sind, wie man in der Nachrichtentechnik sagt. Das vertauschte Signal überlagert nach unserer Interpretation das "tatsächliche" Signal. Das tatsächliche Signal ist die "versteckte" Kurstendenz, die es zu erkennen und zu prognostizieren gilt.

Obwohl dieser Ansatz letztlich ebenfalls auf eine - wenn auch sehr viel feinere - Glättung der Aktienkurse hinausläuft, hat doch der Ansatz mit neuronalen Netzen einen erheblichen und unschätzbaren Vorteil gegenüber statistischen Methoden:

Jedes Statistikprogramm muß explizit alle Faktoren, die es für die Prognose berücksichtigt, zuvor kennen. Der Programmierer oder Aktienanalyst muß alle als relevant betrachteten Einflußgrößen angeben, die in die Berechnung mit einfließen sollen.

Ein neuronales Netz hingegen kann relevante Abhängigkeiten und Einflußgrößen bei geschicktem Training und Design selbständig erkennen! Es kann daher eventuell Zusammenhänge herauskristallisieren und bei der Prognose verwenden, die zuvor noch niemand in dieser Form berücksichtigt hat. Zudem gewichtet es mittels der impliziten Lernalgorithmen selbständig die Einflußgrößen so, daß die Fehler bei der Prognose insgesamt minimiert werden.

Diese Eigenschaften neuronaler Netze sind alleine bereits eine detaillierte Untersuchung wert.

Als Tools setzten wir mehrere Software-Simulationsprogramme für neuronale Netzwerke ein. Darunter waren Neural Works Professional II (Neural Ware) und NeuroShell (Ward Systems Group, Inc.). Zur Umsetzung der Ein-Ausgabe, der Prozeßkommunikation zwischen den Tools, der Handhabung der Lern- und Rezirkall-Daten, der Trefferauswertung, der Statistik und der Darstellung der Ergebnisse waren zusätzlich noch zirka 3000 Lines of Code in C zu realisieren.

Wir haben die Prognosefähigkeit neuronaler Netze an mehreren Netzwerkmodellen untersucht. Realisiert wurden unter anderem ein Adaline-Netzwerk, ein Madaline-Netzwerk (Abbildung 1), ein Perceptron-Netzwerk und ein Bach-Propagation-Netzwerk (siehe Abbildung 2). Als Test- und Trainingsdaten haben wir drei zufällig gewählte Aktiencharts verwendet: BASF, Commerzbank und Mercedes. Der Trainingszeitraum für die Netzwerke betrug 40 Tage (vom 9.2.89 bis 18.4.89). Prognostiziert wurden nach den 40 trainierten Tagen das Kursverhalten der Aktien für die nächsten (maximal) 58 Tage.

Die Eingabedaten müssen normiert sein

Jeder Netzwerk-Typ setzt eine gewisse Normierung der Eingabedaten voraus. So kann zum Beispiel ein Perceptron-Netzwerk nur binäre Eingaben (0 und 1) verarbeiten, ein Adaline-Netzwerk nur + 1 und -1. Daher mußten in einem ersten Schritt zunächst Verfahren entwickelt werden, die Eingabewerte zu Normieren bzw. zu Linearisieren, wie der Fachausdruck heißt. Zudem mußten die Eingabedaten festgelegt werden (der Eingabevektor). Als Eingabedaten haben wir pro Kurs an die Netzwerke angelegt:

- K = den aktuellen Kurswert des Tages

- VV = die absolute Veränderung des Kurses zum Vortag

- RV = die Richtung der Veränderung (steigt, fällt)

- RG = die Richtung der Veränderung zum Vor-Vortag

- G = Gravierende Veränderungen > 1 Prozent zum Vortag.

Einige daraus resultierende Linearisierungen sind in Abbildung 3 dargestellt. Der Eingabevektor für die Netzwerke hatte in den meisten Testfällen eine Breite von 40, das heißt, bei jedem Lernschritt wurden 40 Daten parallel an die Eingabeschicht der Netzwerke angelegt.

Die Bestandteile der Eingabevektoren wurden im Laufe der Untersuchungen nicht variiert. Der aktuelle Kurswert ist für den Lernprozeß der Netzwerke nicht unbedingt erforderlich, es genügt die Eingabe der relativen Abweichung zum Vortag, wie wir an einigen Testreihen feststellen konnten. Es bleibt zu untersuchen, wie sich andere Eingabevektoren auf die Prognosefähigkeit auswirken. Die Prognoseergebnisse bei Adaline-Netzwerken waren teilweise sehr stark von der gewählten Linearisierung und der Anzahl der Lernschritte abhängig. Als bestes Ergebnis erzielten wir für die BASF-Aktie bei Linearisierung c, d und 2500 Lernschritten eine Trefferquote von erstaunlichen 80 Prozent bezüglich einer "Steigt-Fällt-Prognose" für einen 10-Tage-Zeitraum. Die Commerzbank Aktie konnte mit Linearisierung d und ebenfalls 2500 Lernschritten sogar mit 90 Prozent und damit am besten vorhergesagt werden. Die Mercedes-Aktie erreichte bei Linearisierung a, b und e mit 2500 Lernschritten maximal 70 Prozent (siehe Abbildung 4).

Auffallend bei diesen Ergebnissen ist, daß eine Zunahme der Lernschritte nicht unbedingt die Trefferquote erhöht, und daß die Trefferquote bei der Mercedes-Aktie deutlich niedriger ist als bei den beiden anderen Aktien. Letzteres ist zumindest teilweise dadurch zu erklären, daß der Kurs der Mercedes-Aktie in dem Trainingszeitraum "chaotischer" verläuft als der der beiden anderen Aktien, die beinahe einen deckungsgleichen Verlauf zeigen.

Wird die Prognose über einen längeren Zeitraum durchgeführt, ergibt sich zum Beispiel für die BASF-Aktie das in Abbildung 5 dargestellte Resultat. Dabei zeigt sich, daß die Trefferquote wieder stark von der gewählten Linearisierung abhängt und daß die Trefferquote kontinuierlich mit der Länge des Vorhersagezeitraums abnimmt. Dies war aber auch nicht anders zu erwarten.

Interessant ist jedoch, daß einzelne Zehn-Tage-Perioden, wenn man sie isoliert betrachtet, in ihrer Trefferquote unabhängig von dem Abstand zum aktuellen Datum sind. Die Trefferquote ist immer dann recht hoch, wenn ein Kursverlauf in der Zukunft einem Kursverlauf der Vergangenheit ähnelt. Abbildung 6 verdeutlicht dies. Die fette Linie kennzeichnet den zu Prognostizierenden Verlauf, die dünne Kurve das Trainingsintervall und die Punkte die Zehn-Tage-Prognosezeiträume. Die Gerade gibt die Treffertendenz an.

Der wesentliche Unterschied zwischen einem Madaline- und einem Adaline-Netzwerk ist, daß ein Madaline-Netzwerk gewissermaßen aus mehreren Adaline-Elementen besteht. Die Anzahl der Adaline-Elemente in einem Madaline-Netzwerk kann man variieren. Dies haben wir getan. Die Auswirkungen auf die Trefferquoten zeigt Abbildung 7. Erstaunlich ist hierbei, daß eine Steigerung der Adaline-Elemente die Trefferquote nicht notwendig verbessert. Die besten Ergebnisse ergaben sich bei BASF mit 15 und 17 Adaline-Elementen (68 Prozent), bei der Commerzbank mit 11, 17 und 19 Adaline-Elementen (je 74 Prozent) und bei Mercedes mit 5, 11 und 17 Elementen und 63 Prozent Treffern.

Für die Commerzbank-Aktie ersehen Sie die längerfristige Prognose relativ zu den gewählten Linearisierungen und den Prozessorelementen aus Abbildung 8.

Das Perceptron-Netzwerk zeigte insgesamt die schlechteste Prognosefähigkeit. Das beste Ergebnis lag bei 68 Prozent, aber dies erstaunlicherweise ge(..) sehr häufig bei der von (..) anderen Netzwerken nicht gut prognostizierten Mercedes. Aktie (siehe Abbildung 9).

Das Back-Propagation-Netzwerk

Back-Propagation-Netzwerke sind die zur Zeit wohl populärsten Typen neuronaler Netzwerke. Der Grund dafür ist, daß in solchen Netzwerken mit "verdeckten Schichten" (Hidden-Layer) von Prozessorelementen gearbeitet werden kann. Diese Prozessorenschichten, die weder direkt mit der Eingabe noch mit der Ausgabe verbunden sind, können interne Repräsentationen der impliziten Abhängigkeiten zwischen den Elementen der Eingabeschicht lernen speichern. Dadurch erhält (..) in der Regel sehr gute Approximationen der Realität.

Entscheidend für die Leistungsfähigkeit eines Bach-Propagation-Netzwerkes ist die Anordnung der Zwischenschichten und die verwendeten Transferfunktionen der Prozessoren, die den jeweils anliegenden Input eines Prozessorelementes des Netzwerkes zu einem lokalen Output verarbeiten. Wir haben bei unseren Tests als Transferfunktionen die bewährte Sigmoid-Funktion (siehe Abbildung 10) und die Sinus-Funktion verwendet.

Die Prozessorelemente mit der Sinus-Funktion hatten die Aufgabe Zyklen und relativ kleine Schwankungen im Kursverlauf zu erkennen und zu repräsentieren, während die Sigmoid-Funktion vorwiegend aus "historischen" und technischen Gründen gewählt wurde.

Im Gegensatz zu den Adaline, Madaline und Perceptron-Netzwerken wurde mit den Bach-Propagation-Netzwerken nicht "nur" eine "Steigt-Fällt-Prognose" durchgeführt, sondern auch versucht, den tatsächlichen Kursverlauf zu prognostizieren.

Die erzielten Ergebnisse waren teilweise sehr gut. Es zeigte sich jedoch, daß im Vergleich zu den anderen Netzwerken zunächst eine weit höhere Anzahl von Lernschritten und damit Rechenaufwand nötig war. Gute Ergebnisse wurden erst mit 10 000 bis 20 000 Lernschritten erzielt. Ein Versuch, darüber hinaus eine weitere Verbesserung durch zusätzliches Lernen zu erreichen (200 000 Lernschritte!), brachte nicht das erhoffte Ergebnis.

Durch eine Optimierung der Struktur der Hidden-Layer konnten die nötigen Lernschritte letztlich auf zirka 5000 reduziert werden. Eine Gegenüberstellung des tatsächlichen Kursverlaufs und der Netzwerk-Prognose für die Mercedes-Aktie ist in Abbildung 12 dargestellt.

Ein neuronales Netzwerk muß nicht programmiert werden wie ein Programm, Es genügt, dem Netzwerk die Lerndaten zu präsentieren und den gewünschten Output anzulegen (bei hetero-assoziativen Netzwerken). Das Netzwerk lernt dann selbständig den Input mit dem jeweils gewünschten Output zu korrelieren. Diese Tatsache darf aber nicht zu der trügerischen Annahme verleiten, daß der Aufwand für die Erstellung eines leistungsfähigen und zuverlässigen neuronalen Netzwerkes gering ist.

Wir mußten nämlich feststellen, daß der Aufwand für das Design eines Netzwerkes sehr hoch sein kann. Wählt man eine falsche Netzwerk-Topologie, sind die Ergebnisse unbrauchbar. Für das Auffinden einer geeigneten Topologie gibt es aber bislang keine Methodik und deshalb ist man auf eine eingehende mathematische Analyse angewiesen, deren Komplexität von der jeweiligen Problemstellung abhängt. Für die Aktienkursprognose ist eine mathematische Theorie neuronaler Netzwerke leider noch nicht in Sicht.

Folglich ist man ausschließlich auf eine Art "Trial and error" Methodik angewiesen. Befindet man sich auf dem richtigen Weg, kann die Lösung eventuell sehr schnell gefunden werden, andernfalls kann es monatelang dauern, bis man feststellt, weshalb nur frustrierenden Ergebnisse zustandekommen.

Ein weiterer Problembereich waren die vielen Parameter, die beim Design eines Netzwerkes eine enscheidende Rolle spielen können. Zu diesen Parametern gehören zum Beispiel die Lernregel, die mittelfristige Lernstrategie, die Lernkoeffizienten, die Breite des Eingabevektors und des Ausgabevektors, die Linearisierung, die Anzahl der verwendeten Prozessoren, die Anzahl und die Verknüpfung der Hiden-Layersg, die Transfer- und Schwellenwertfunktionen, der Netzwerktyp etc. Im Mittel mußten wir je Netzwerktyp etwa zwölf Parameter einsteigen, und selbst kleinste Änderungen konnten die Prognosefähigkeit erheblich negativ beeinflussen.

Bei den komplexeren Netzwerktypen hatten wir es mit klassischen optimierungsaufgaben zu tun: die Netzwerke (vor allem das Back-Propagation-Netzwerk) tendieren dazu, in lokalen Minima (Maxima) "hängenzubleiben". Es ist dann in der Regel sehr schwierig festzustellen, wodurch das lokale Minimum zustandegekommen ist und wie man es auf der Suche nach einem globalen Minimum umgehen kann.

Trotz der nicht unerheblichen Probleme beim Design, Testen und Optimieren der neuronalen Netzwerke konnten mit vertretbarem Aufwand gute bis sehr gute Prognosen erstellt werden. Die Ergebnisse sind teilweise weit besser als mit konventionellen statistischen Verfahren.

Bessere Ergebnisse sind noch zu erwarten

Können zukünftig fundierte mathematische Analysen im Vorfeld zur Unterstützung des Netzwerk-Designs entwickelt und eingesetzt werden, so sind sogar noch weit bessere Ergebnisse zu erwarten.

Als wichtiger Vorteil neuronaler Netze hat sich während der Untersuchungen gezeigt, daß der Aufwand für die Wartung und Weiterentwicklung im Sinne der Anpassung an neue Kursverläufe bei neuronalen Netzwerken optimal lösbar ist. Die Netzwerke können umgehend den neuen Entwicklungen angepaßt werden, indem sie auf den neuen Daten trainiert werden. Ungelöst ist jedoch bislang das Problem, wie und ob falsche Prognosen des Netzwerkes durch zusätzliches Training auf den Fehlerdaten behoben werden können.

Die hier auszugsweise vorgestellten Untersuchungsergebnisse sind vollständig als Studie (zirka 100 Seiten) inklusive Demonstrationsprogramm bei Expert Informatik GmbH Postfach 13 38, D-7770 Überlingen, Tel.: 0 75 51/40 73 erhältlich.

Als Anregung und Ausblick seien hier noch kurz zwei Ansätze erwähnt, die zur Zeit von uns weiterverfolgt werden und sehr erfolgversprechend erscheinen.

Man kann die Prognosefähigkeit eines neuronalen Netzes erheblich durch die Auswahl der Trainingsdaten an der Eingabeschicht und des erwarteten Outputs an der Ausgabeschicht beeinflussen. Dazu benötigt man jedoch erhebliches Wissen darüber, wie man Netzwerke trainieren sollte. Legt man dieses Wissen in einem Expertensystem ab, so kann das Expertensystem dazu verwendet werden, das neuronale Netz zu "unterrichten". Eine Wissensbasis für ein solches Expertensystem als "Lehrer" für diverse Netzwerke wird von uns zur Zeit mit der (AICorp.) entwickelt. Dieser Ansatz erscheint uns erfolgversprechender als der Versuch, Kurse mit Expertensystemen direkt zu prognostizieren.

Da die Softwaresimulationen bei großen Netzwerken mit komplexen Transferfunktionen und Lernstrategien konventionelle Rechner stark belasten, Expertensystem-Shell KBMS empfiehlt sich zukünftig die Untersuchung und Realisierung von Neuronalen Netzen auf Transputern oder anderen Parallelrechnern. In den USA gibt es bereits Programme, die Neuronale Netze auf Transputern simulieren.

Eberhard Schöneburg ist Geschäftsführer, Manfred Gantert und Michael Reiner sind Mitarbeiter der Expert Informatik GmbH, Überlingen