Donnerstag, 25. April 2024, 01:30 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

felixhn Männlich

Benutzer

Registrierungsdatum: 1. März 2004

Beiträge: 63

Wohnort: Kiel

1

Sonntag, 15. Januar 2006, 20:27

Wie Trainingszeiträume wählen?

Hallo,

mich treibt zur Zeit folgende Frage zu NN´s um:

Wenn ich ein Netz im Entwicklungsstadium trainiere, wähle ich den Trainingszeitraum so, dass ich zum Beginn meines Datenmaterials beginne und an einem Zeitpunkt ende, der noch genügend Luft für einen Kontrollzeitraum und einen OOS-Zeitraum lässt.

Das bedeutet dann aber doch, dass das System eine eventuell geänderte Korrelation der letzten Zeit nicht gelernt haben kann. Wenn die gelernten Beziehungen der Input-Variablen zum Output allerdings bis zum OOS-Zeitraum Gültigkeit haben, wird das System vorerst laufen.

Wenn ich dann feststelle, dass mein System neu trainiert werden muss, weil sich die Verhältnisse geändert haben, welchen Trainingszeitraum wähle ich denn dann? Um die geänderten Verhältnisse einzubeziehen, müsste er doch bis zum Ende des Datenmaterials gehen. Dann habe ich aber noch nicht einmal einen Kontrollzeitraum.

Wer kann mir das erklären?

Vielen Dank,
Felix

Cash Männlich

Meister

Registrierungsdatum: 14. August 2005

Beiträge: 543

Wohnort: Stuttgart

2

Sonntag, 15. Januar 2006, 21:13

RE: Wie Trainingszeiträume wählen?

Hallo Felix,

diese Frage beschäftigt mich auch gerade. :)
Ich gehe momentan davon aus, daß sich die Verhältnisse (oder auch Korellationen) nicht schlagartig ändern.
Wenn Dein NN nicht mehr funktioniert muß eben neu trainiert werden, und genau wie beim ersten erstellen des Systems/NN's wird man wieder einen entsprechenden Prozentsatz als Kontrollzeitraum belassen.
Wenn man dann aufgrund von geänderten Verhältnissen kein profitables System mehr bekommt stellt sich die Frage, ob das System überhaupt robust ist.
Andererseits frage ich mich auch, ob man, wenn man ein NN gefunden hat, welches auch im Kontrollzeitraum funktioniert, nicht abschließend vor dem realen Einsatz über den gesamten Zeitraum traineren sollte. ?(

gruß, Frank

Moneymaker

unregistriert

3

Montag, 16. Januar 2006, 10:36

Hallo Felix, hallo Frank,

Zitat

Andererseits frage ich mich auch, ob man, wenn man ein NN gefunden hat, welches auch im Kontrollzeitraum funktioniert, nicht abschließend vor dem realen Einsatz über den gesamten Zeitraum traineren sollte.

Mit NN´s habe ich mich nicht wirklich beschäftigt, meine Erfahrung mit "normalen" HS hat mir gezeigt, daß die Zeitraumwahl eine Glaubens-/Vertrauensfrage ist.
Ich voroptimiere zunächst mit langem KZR, schlussendlich aber für das Trading HS immer auf den Gesamtzeitraum!
Vorausgesetzt die Robustheit meines HS bei o.e. "Voroptimierung" ist im GZR optimal gegeben UND sie setzt sich im weitgehenden KZR (>30%) fort UND zeigt auf total unbekannter Datenstrecke auch eine noch positive Performance.

Die o.e. Vorgehensweise resultierte aus der Überlegung (deshalb Glaubens-/Vertrauensfrage), daß, wenn während z.B. 30 % KZR die KK sich innerhalb fortgeführter positiver Range eines Trendkanals hierauf entwickelt, die gleiche Wahrscheinlichkeit besteht, daß mit Optimierung über den GZR diese 30% bevorstehen.
Auf diese Weise aproximiert sich für mich auch der maximale Zeitraum einer Nachoptimierung, wobei ich diesen nicht in den Maximalwert laufen lasse, sprich, eine Überprüfung der Variablenwerte erfolgt hier im ca. 2 Wochenrhytmus. (GZR zb. ca. 1 Jahr => Max. 3,6 Monate bei 30%).
Zeigen sich größere Veränderungen, wird nachgetunt.

An solcher Vorgehensweise scheiden sich aber die Geister! Mancher nennt das "Blauäugigkeit" , bei mir bewährte sie sich in der Praxis.
Einer fortgeführten Diskussion sehe auch ich sehr interessiert entgegen!

Registrierungsdatum: 30. August 2002

Beiträge: 8 155

Wohnort: Trade-Planet

4

Montag, 16. Januar 2006, 11:28

Hallo,

abgesehen von den NNs die ein etwas anderes Trainigsverfahren beinhalten wie GAs sehe ich bei diesen keinen grossen Spielraum zum "genialen" nachoptmieren! Der Grund liegt an der Wirkungsweise dieses Verfahrens. Mittels Pseudo-Startpunkte werden Generatiponen gebildet von denen jede ein anderes Ergebnis generiert!Optimal wäre, wenn ein Verfahren auf das beste Generationen Ergebnis aufbaut und nicht erneut von vorne anfängt und wieder Generationen bildet!

Beispiel:

Man trainiert 100 Durchläufe. Bei Durchlauf 5-10-20-30-50 usw. wird immer ein besseres Ergebnis in Bezug zur Vorperiode festgestellt. Jetzt wird das Ergebnis des aktuell besseren Durchlaufes verwendet, und setzt auf das der "schlechter performenden Generation,in Bezug auf die eingestellten Fitness Kriterien direkt auf!. So ist es beispielsweise auch möglich optimal Feed Forward Tests zu gestalten und zu überprüfen wieviel Generationen über längeren Zeitraum profitabel gewesen wären! zeiträume könnten auch getendert werden und mittels Feed Forward ein aktuell guter Tender -Zeitraum gefunden werden!

Beispiel:

Man test wie sich ein HS verhält, bei dem der Zeitraum stetig 4 Wochen getendert wird. "4 Wochen tendern" heisst,das ab dato immer nur 4 Wochen Daten im Feed Forward bzw. nachtrainieren zum testen herangezogen werden.Der restliche Zeitraum bleibt unberücksichtigt und wird quasi automatisch abgeschnitten! So erhält man bessern Aufschluss darüber,wann und welche Strategie man anwenden könnte um ein "optimales" nachtrainieren ,in Bezug auf Datenmenge und Zeitraum zu gewährleisten! Dies kann mit GAs m.M. in dieser Form nicht präzise und schnell ermittelt werden-aufgrund der erwähntes,grob dargestellten Funktionsweise! Das Problem der Eingangsfrage wird umso grösser, je mehr Variable das HS beinhaltet! Viele Variable fächern den Genrationen-Stammbaum sehr breit. Das Ergebnis könnte so aussehen, das man 100 Generationen mit 100 verschiedenen Ergebnissen vorliegen hat von denen die vermeintlich beste im Grunde die schlechteste ist!Ein weiteres Problem ist die Auswertung dieses Geflechtes-und noch schlimmer die Auswertung und Auswahl beim nachtrainieren......
Happy Trading

felixhn Männlich

Benutzer

Registrierungsdatum: 1. März 2004

Beiträge: 63

Wohnort: Kiel

5

Montag, 16. Januar 2006, 19:56

Hallo,

erstmal vielen Dank für die Antworten.

Gerd, Deine Methode ist ein Ansatz, über den ich auch bereits nachgedacht habe. Bei -wie Du sie nennst- "normalen" Handelssystemen kann ich mir das auch so vorstellen. Das Problem bei NN´s ist aber natürlich, dass Du die Auswqirkungen des abschließenden Trainings nicht nachvollziehen kannst, da NN´s ja "black boxes" sind.

Udo, wenn ein Nachtrainieren bei drohendem oder beginnendem Absturz eines NN´s nicht möglich ist (Deine Ausführungen zur Generationenbildung konnte ich gut nachvollziehen), verstehe ich die betreffenden Anmerkungen nicht mehr , die ich hier mehrfach im Forum gelesen habe (vgl. Adrian, Dr. Paasche), dass dies erforderlich ist. Dieses Nachtrainieren wiederum leuchtet mir eben auch völlig ein. Hierbei stellte sich mir nur die Frage des Trainingszeitraumes. Das von Dir geschilderte Problem kann wohl doch nur durch völliges Neutraining beseitigt werden, oder?

Viele Grüße,
Felix

Registrierungsdatum: 30. August 2002

Beiträge: 8 155

Wohnort: Trade-Planet

6

Montag, 16. Januar 2006, 22:28

Hallo Felix.

ich beziehe mich nachfolgend auf GA, auch in Verbindung mit NNs . Der Trainigsprozess mit NNs ist anders zu bewerten!Die GAs wirken in Verbindung mit einem NN nicht anders wie mit einer Variablen!Es werden ebenfalls Generationen gebildet die man sich nachher betrachten und sondieren kann!

>>wenn ein Nachtrainieren bei drohendem oder beginnendem Absturz eines NN´s nicht möglich ist (Deine Ausführungen zur Generationenbildung konnte ich gut nachvollziehen), verstehe ich die betreffenden Anmerkungen nicht mehr , die ich hier mehrfach im Forum gelesen habe (vgl. Adrian, Dr. Paasche), dass dies erforderlich ist.

Der erste Knackpunkt ist wie man einen drohenden Absturz aus,-und bewertet. An einer funktionellen Methodik an diesem wichten Punkt scheitern viele und noch schwieriger ist es, dafür mech. Regeln zu erstellen. Ob die Methode von U.Paasche hält was sie verspricht, kann ich nicht bewerten aber wenn es so ist, wäre es genial weil man quasi "vorausblickend agieren kann.Voraussetzung ist natürlich das damit auch schwierige Märkte gemeistert werden können und nicht nur Idealverläufe der Underlyings!

Das nachtrainieren ist auf jeden Fall erforderlich und unumgänglich da jede mathematische Methode nur bis zu einem gewissen Grad adaptiv ist! Die Märkte sind teils hochdynamisch und verändern auch in breiter Zeitebene Bewegung und Struktur! Ob die neuen Muster immer der Vergangenheit nahekommen lasse ich dahingestellt! Beim Intraday-Trading hat man teils Tage die gleiche Muster generieren-manchmal jeden Tag unterschiedliche. Dies überträgt sich auch auf Time Frames höherer Zeitebnen wie z.B. EOD nur das alles viel langsamer und in breiter Zeiteben abläuft!

Die einfachste Methode der Zeitraumbestimmung wäre doch, das man den Zeitraum in der das HS/NN gut gelaufen ist hinten abschneidet und gleichezeitig den neuen Startpunkt für den Trainings-Zeitraum bekommt! So könnte man,wie oben bereits angesprochen, bei Feed Forward Test vorgehen wenn dieser ständig regelmässig nachtrainiert!Der Vorteil der Methode ist das man immer sehr nah am Zeitgeschehen arbeitet und die neueren Zyklen höher bewertet! Der Nachteil liegt aber auch auf der Hand: Wenn das Underlying lange Trends generiert wird das System nur noch an einem Zyklus trainiert. Die Wahrscheinlichkeit des versagens erhöht sich enorm, da es mit anderen Zyklen vermutlich kaum zurechtkommt!Demzufolge benötigt man einen Zeitraum der von allen etwas bietet und dieser Zeitraum sollte nicht zu lange zurückliegen um ev. Strukturbrüchen und "Neuordnungen" der Märkte aus dem Wege zu gehen-sprich keine alten Kamellen trainieren!

Wenn ich ehrlich bin, kann ich absolut keinen regelkonstanen Tip geben,welchen Zeitraum man verwendet um ein möglichst gutes Endergebnis beim nachtrainieren zu erzielen! Ich habe in diversen Tests im laufe der Jahre vieles beobachtet! Bestes Beispiel war, als ich einen reinen Abwärtstrend mit ein paar Inputs trainierte und das NN am einem folgenden Aufwärtstrend richtig Geld verdient hat und das über Wochen-leider ohne mich! Ähnliches kann ich auch von den GAs berichten! Natürlich brechen diese Systeme ohne zutun genauso ein, wie alle anderen!Wenn der Zyklus lange anhält, eben etwas später!

>>Dieses Nachtrainieren wiederum leuchtet mir eben auch völlig ein. Hierbei stellte sich mir nur die Frage des Trainingszeitraumes. Das von Dir geschilderte Problem kann wohl doch nur durch völliges Neutraining beseitigt werden, oder?

Wenn das NN mit GAs trainiert wurde ist es ja im Grunde ein "neues" NN genauso wie das GA-System!Ev. muss auch noch Stopp,- und Money Managment korrigiert werden!Was ich ober angesprochen habe ist die Methodik der genetischen Algorithmen! Die anschliessende Selektion der Generationen (egal ob NN oder GA-system) stellt ein weiteres Problem dar. Ich meinte das man eine Metode verwenden müsste die nicht das komplett System über den haufen wirft sondern nur korrigiert, was sich in der Vergangenheit verändert hat-quasi das aufsetzen auf den vergangenen Parametern und nur den nötigsten Änderungen im engen Rahmen! Eine erneute GA Optimierung wird u.U. aber alles neu ordnen und wenn man Pech hat, stimmt nichts mehr! Wenn ein NN schon mal funktioniert hat wird mit hoher Wahrscheinlichkeit in einen Zyklus kommen, in dem es wieder hervorragend funktioniert! Vielleicht könnte man alternativ Überlegungen dahin anstellen,mehere NNs HSSe zu trainieren, und eine Regel für den Wechsel der Systeme zu finden!Vorraussetzung wäre eine Methode für die Bestimmung zu finden, wann ein System nicht mehr taugt! Das eigene Konto sollte man aber besser nicht als "Prüfstein" verwenden..;)

Wenn man ein grosses Konto hat ,kann man über Divesifikation nachdenken denn so geht man mit vielen Systemen geht man wankenden einzelnen am besten aus dem Weg!

Sorry,wenn ich vom eigentlichen Thema ein bisschen vorbeigeredet habe aber man könnte über das/die Themen Bücher schreiben und findet doch kein allgemeingültiges Regelwerk da zu viele,auch individuelle Faktoren reinspielen.
Happy Trading