Freitag, 19. April 2024, 04:11 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

John

unregistriert

1

Freitag, 22. November 2002, 14:11

"Chart"-Praxis kontra NN-Theorie

Hallo,

im folgenden möchte ich auf ein Problem hinweisen, das mir keine bekannte Chartsoftware, die mit Neuronalen Netzen arbeitet, gelöst hat. Es handelt sich also nicht um konkretes Problem von Investox, sondern ist vielmehr als Anregung gedacht. Es betrifft vor allem NN´s für längere Perioden, z.B. Intraday-Handel.

Gemäß der Theorie soll einem NN - verständlich ausgedrückt - die annähernd gleiche Anzahl guter und schlechter Beispiele präsentiert werden. Für NN-Klassifikatoren gilt eine gleichmäßige Verteilung der Beispiele auf die Klassen.

Oder andersherum: Präsentiert man dem NN hundertmal mehr schlechte als gute Beispiele, wird es über die schlechten Beispiele generalisieren. Wahrscheinlich entsteht ein Rauschen mit kleinen Amplituden.

Genau diesen Fall haben wir bei den NN´s für die fortlaufenden Datenreihen von Wertpapieren oder Indikatoren als Inputs. Ein Handelssignal soll bekanntlich nicht für jedes zweite Bar generiert werden, sondern gemäß der Inputs über größere Zeitspannen. Das Netz lernt jedoch, daß die schlechten Beispiele (= Phasen mit keinem Signal) sehr wichtig sein müssen, da sie in derart hoher Zahl präsentiert werden und die guten Beispiele aufgrund ihrer relativ geringen Anzahl fast zu vernachlässigen sind.

Damit noch nicht genug, um das Problem nun weiter zuzuspitzen: Wie erreicht man es, daß dem NN ausschließlich gute Beipiele präsentiert werden?

Das NN wäre dann sozusagen "hardcodiert" und erfüllt die Aufgabe eines besseren Fuzzy-Regelsystems. Dies macht genau dann Sinn, wenn im Chartverlauf die exakt gleichen bzw. "unscharfe" Bedingungen auftreten, diese jedoch "per Hand" hard-zu-codieren oder als Fuzzy-Regelbasis aufzustellen, zu aufwendig sind oder die Beziehungen nicht genügend bekannt sind. Beispiele hierfür wären Candlestick- und Chartformationen oder das Zusammenwirken von Indikatoren mit je mehreren Vorgängern.

Sollte das Problem nicht verständlich genug dargestellt sein, versuche ich es gern noch einmal.


Viele Grüße
John


(Eine sehr aufwendige Lösung, aber immer noch besser als eine eigene Software zu schreiben, wäre zwar, das NN auf normalen Weg zu erstellen, die gewünschten Inputdaten aus der Datentabelle heraus nehmen, diese dann zusammen zu fassen und als extra Wertpapier anzulegen und ein NN auf dieses spezielle Wertpapier zu trainieren. Übertreiben wollen wir es nun aber auch nicht, oder?)

Thomas

unregistriert

2

Freitag, 22. November 2002, 15:07

Lernbeschränkungen

Hallo John,
ich habe es noch nicht ausprobiert, aber meiner Meinung nach kannst du so etwas in Version 3 über die Lernbeschränkungen erreichen.

Diese Funktion sieht die Beschränkung des Lernens auf bestimmte per Formel zu definierende Zeitbereiche vor. Diejenigen, die schon damit gearbeitet haben mögen mich bitte korrigieren, aber genau für so etwas ist diese Funktion m.E. gedacht.

Es müsste z.B. möglich sein über eine Formel ein Pattern darzustellen und das NN dann gezielt darauf lernen zu lassen. Genauso gut könnte man das Training des NN auch auf Zeitabschnitte begrenzen, in denen Indikatoren Extremwerte annehmen oder divergieren. Selbst die Definition von Seitwärtsphasen und Trendmärkten müsste über den Formeleditor möglich sein.

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

3

Freitag, 22. November 2002, 15:09

RE: Lernbeschränkungen

Hallo,

so ist es: genau dies leistet die "Lernbeschränkung" von Investox XL V3.

Viele Grüße
Andreas Knöpfel

John

unregistriert

4

Freitag, 22. November 2002, 16:43

RE: Lernbeschränkungen

Hallo,

danke für die schnellen Antworten.

Da ich noch V1 habe (und trotz parallel laufender TS weiterhin sehr zufrieden mit Investox bin), habe ich auf Eure Anregung hin in der V3 Demo Hilfe nachgelesen. Zwar kann ich es nicht ausprobieren, dennoch scheint es die Lösung zu sein. Zudem ist die Umsetzung durch die Formel-Methode elegant gelöst.

Ich hoffe, daß die V3 User diese m.E. wichtige Funktion trotz ihrer bescheiden wirkenden Implementierung zu würdigen wissen.


Viele Grüße
John

Thomas

unregistriert

5

Montag, 25. November 2002, 09:00

Mir gefällt die neue Methode auch sehr gut. Ich bin gerade dabei die ersten Tests mit dem ADX als Lernbeschränkung durchzuführen. Um sicher zu gehen, dass ich die neue Funktion richtig verstanden habe noch zwei Fragen dazu:

Das Training des NN wird über die Lernbeschränkung eingegrenzt. Wohingegen die Bewertung des NN über alle Daten erfolgt. Heißt dies, die Lernbeschränkung greift nur für die Daten im Trainingszeitraum, nicht auf Daten im Evaluierungs- und Kontrollzeitraum?

Kann man sehen, wieviele Perioden dem Netz nach Einfügen einer Lernbeschränkung für das Training zur Verfügung stehen?

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

6

Montag, 25. November 2002, 12:21

Hallo,

die Lernbeschränkung wirkt sich natürlich nur auf das Lernen aus (Trainingszeitraum). Aber auch zur Bewertung im Trainingszeitraum werden alle vorhandenen Daten verwendet.

>>Kann man sehen, wieviele Perioden dem Netz nach Einfügen einer Lernbeschränkung für das Training zur Verfügung stehen?
Dies geht nur über eine Visualisierung im Chart (Lernbeschränkungsformel dort einfügen - empfiehlt sich sowieso, um ein Gefühl für die Formel zu bekommen).

Viele Grüße
Andreas Knöpfel

Thomas

unregistriert

7

Montag, 25. November 2002, 19:19

Hallo Herr Knöpfel!
Vielen Dank für den Hinweis, an die Möglichkeit einer Visualisierung habe ich gar nicht gedacht.

Die Funktion der Lernbeschränkung ist jetzt klarer für mich geworden. Sie wäre dann doch etwas anders, als die von John vorgeschlagene "aufwendige Lösung" der Kreation einer eigenen Datenreihe. Beim zusammenbasteln von ausgewählten Beispielen hätte das NN dann auch im Evaluierungs- und Kontrollzeitraum nur ausgewählte Daten zur Verfügung. Ein so trainiertes Netz könnte auch sicher nicht mehr generalisieren und würde komplexe Filter für einen diskretionären Einsatz benötigen.