Zum Inhalt springen
View in the app

A better way to browse. Learn more.

#T/N/X/T

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Neuronale Netze

Geschrieben

@ vola

 

Das Rätsel hatte es aber auch in sich. Hast Dir das Smile verdient :ot:

 

@ Rest

 

Wie bitte soll so ein Neuronales Netz programmiert werden?!

Ist doch ein Programm welches dazu lernt, oder?!

Featured Replies

Geschrieben
@ Rest

Wie bitte soll so ein Neuronales Netz programmiert werden?!

Ist doch ein Programm welches dazu lernt, oder?!

Habe zwar null Plan von der Materie, aber das hier für Interessierte gefunden.

 

In Deutsch !

 

ic.arrow.right.png N_N

Geschrieben
Wie bitte soll so ein Neuronales Netz programmiert werden?!

 

Kommt drauf an, ein "normales" NN ist eigentlich nur eine hintereinanderfolge von Funktionen auf verschiedenen Layern (meist alle Funktionen auf einem Layer gleich). Wobei man die Funktionen halt Neuronen nennt.

Sprich du startest mit d Inputvariablen (zB die Kurse der letzten Tage, halt ein bissl zurechtgestutzt), jedes Neuron(Funktion) des ersten Layers kriegst diese als Inputs und rechnet einen output aus (normalerweise wird die gewichtete Summe in eine eindimensionale Funktion geworfen, meist linear oder sigmoid teils auch die heavyside-funktion). Du hast also für jedes Neuron des ersten Layers (sagen wir es waren a Stück) einen Wert. Diese a Werte sind jetzt die neuen Inputs für Layer 2 etc. das ganze geht so weiter bis zum output layer, der dann zB für jede Antwortkategorie ein Neuron hat (für die Börse zB 3 Kategorien: Buy,Flat,Short). Ausgewertet wird meist nach dem "The winner takes it all" Prinzip. Sprich das Output neuron mit dem höchsten Wert wird genommen.

Das "Lernen" bedeutet in dem Fall das setzen der Gewichte innerhalb des Netzes. Hierfür braucht man trainingsbeispiele (also eine Menge von Inputs, für die man die richtigen Outputs kennt). Wie die gewichte dann daraus gesetzt werden, dafür gibts eigene Algorithmen, und fertige Packete die das ganze rechnen.

 

In der Praxis sollte man hier das lernen in regelmäßigen Abständen von einem externen Prog (zB Matlab) machen lassen, und dann nur die Gewichte ins System laden. Denn wenn die Gewichte bekannt sind, kann man ein NN sogar direkt in MT implementieren.

 

Es gibt dann natürlich noch andere Formen der Neuronalen Netze (probabilistische Neuronale Netze zum Beispiel), aber da müsst ich jetzt nochmal nachschauen wie die genau laufen, ist auch oft unterschiedlich je nach Quelle.

 

EDIT: erklärung bezieht sich natürlich nur auf feed-forward netze, rekurrente Netze werden dann aufwändig von der Entscheidung wie die Loops gerechnet werden sollen.

Geschrieben
  • Autor

Also brauch ich mir da jetzt im Moment keine Gedanken darüber zu machen, ob es bald mal einen EA gibt der Lernt und auf Erfahrung basierend neue eigene Strategien entwirft...oder doch :ot:

 

Aber ansonsten schon ein sehr sehr interessantes Thema...

 

LG NC

Geschrieben
Also brauch ich mir da jetzt im Moment keine Gedanken darüber zu machen, ob es bald mal einen EA gibt der Lernt und auf Erfahrung basierend neue eigene Strategien entwirft...oder doch :ot:

 

Eigentlich könnte man einen schreiben der z.B. auf die Muster vor grösseren Bewegungen achtet, diese sozusagen 'lernt' und sich dann in freudiger Erwartung beim nächsten Mal entsprechend positioniert.

 

Das muss nicht unbedingt erfolglos sein, der Aufwand ist aber auch nicht ohne.

 

Und ob es so viel mehr bringt als auf die schon bekannten Muster zu warten?

 

Lutz

Geschrieben

Mustererkennung ist denke ich das Stichwort.

Wenn es möglich wäre diese Muster in allgemeiner Form aufzulisten könnte man wohl einiges erreichen.

Geschrieben
Also brauch ich mir da jetzt im Moment keine Gedanken darüber zu machen, ob es bald mal einen EA gibt der Lernt und auf Erfahrung basierend neue eigene Strategien entwirft...oder doch :ot:

 

Ob der EA selber lernt will ich mal bezweifeln da MQL eher nicht die beste Sprache für solche Algos ist. Ein EA der ein NN verwendet, das man regelmäßig (zB wöchentlich) extern (zB Matlab) "updated" (also die neuen Daten dazulernt) ist aber nicht so weit hergeholt (genaugenommen hab ich irgendwo in meinem experts Ordner so ein Teil rumliegen ;)

 

Aber wenn man den EA/das System selber lernen/adaptieren lassen will, sind NNs nur ein Tool um den unendlichen Zustandsraum in den Griff zu kriegen. Reinforcement Learning ist da glaub ich derzeit so das Stichwort.

 

Eigentlich könnte man einen schreiben der z.B. auf die Muster vor grösseren Bewegungen achtet, diese sozusagen 'lernt' und sich dann in freudiger Erwartung beim nächsten Mal entsprechend positioniert.

 

Das muss nicht unbedingt erfolglos sein, der Aufwand ist aber auch nicht ohne.

 

Ja kann man ;), Aufwand ist nicht ohne, aber mit Kenntniss in dem Bereich und den entsprechenden Tools doch überschaubar. Die wichtigere Frage ist ob es was bringt.

 

Ich hab damals versucht einen Tradingrobot zu bauen, der selber lernt was es heißt zu traden. Also für den nur der Gewinn zählt und der rein auf den Daten der letzten x Bars arbeitet.

Aber ohne Erfolg :( , macht man ihn komplex genug lernt er auswendig (und versagt ihm forwardtest), hält man ihn simple versagt er beim lernen UND im forwardtest ;)

 

Wofür NNs natürlich sehr wohl gut sind, ist Mustererkennung mit "schwammigen" Mustern. Also wenn man zB hergeht und ein Netz drauf trainiert auf zB 20 Bars zu erkennen ob das ein 1-2-3 (oder irgend ein anderes Muster) ist. Dann könnte das sehr wohl gut funktionieren, wäre zu versuchen. Hier müsste man auch nicht nachlernen sondern dem EA nur einmal die Gewichte reinschreiben.

Dafür braucht man halt Muster für die man "Interpretationen" hat und muss alles nach der Erkennung der Muster selber machen.

 

Kurz noch eine Auflistung der Probleme beim Selbstlernenden:

1. Standardisierung der Inputdaten (einfach roh reinhauen funktioniert nicht, aber wie man sie sinnvoll standardisiert ist eine andere Frage)

2. Was ist "gut"? Klingt blöd, aber woher soll das System wissen ob die Entscheidung richtig war oder nicht? Es gibt kein 100% System, also darf das System bei einem Fehltrade noch nicht den ganzen Ansatz verwerfen. zusätzlich ist nur mit dem Einstieg noch nichts entschieden. Fixiert man eine Ausstiegstrategie und lässte perfekte Einstiege dafür lernen oder umgekehrt? oder beides? Und was ist eine gute Ausstiegsstrategie?

3. Was soll das System alles kontrollieren? Alle Entscheidungen? Soll es nur als zusätzlicher Indikator arbeiten (hier wirds wieder schwer mit dem "was ist richtig")?

 

man sieht: die Idee "selbstlernend" klingt gut, aber es Bedarf vieler Vorarbeit und doch einiger Regeln damit das Ding überhaupt eine Chance hat.

Geschrieben
Kurz noch eine Auflistung der Probleme beim Selbstlernenden:

1...

2...

3...

4. Es ist schwer eine getroffene Entscheidung nachzuvollziehen. Um so schwerer wird dann natürlich die Fehlerkorrektur bzw. Fehlerfindung falls er tradet ob dies überhaupt gerechtfertigt war.

Geschrieben
4. Es ist schwer eine getroffene Entscheidung nachzuvollziehen. Um so schwerer wird dann natürlich die Fehlerkorrektur bzw. Fehlerfindung falls er tradet ob dies überhaupt gerechtfertigt war.

Stimmt, schwer bzw. eigentlich unmöglich und Fehlerkorrektur/findung detto. Da gibts nur hop oder drop. Wenn das Ding negativ ist, kann man nicht wirklich sagen warum, sondern nur ein "so gehts nicht".

Geschrieben
  • Autor

Na dann mach ich mich mal an die Arbeit. Sehen uns die nächsten Jahre dann leider nichtmehr... Werde statt dessen Arbeiten gehen um die Forschung zu finanzieren :blush:

 

Also kommt ein NN für mich eigentlich nicht in Frage. Jedenfalls jetzt noch nicht. Aber das wäre sicherlich auch ein guter Anfang, wenn man einen EA schreibt der Zig Ein- und Ausstiege auswertet und dann alles zusammen zählt und einen kleinen Bericht auswirft...auf das Auswreten wäre ich dann schon sehr gespannt :ot: :ot: :ot:

 

LG NC

Geschrieben
Ja kann man ;), Aufwand ist nicht ohne, aber mit Kenntniss in dem Bereich und den entsprechenden Tools doch überschaubar. Die wichtigere Frage ist ob es was bringt.

 

Stimmt, auch aus anderen Gründen. Seitdem ich mal eine Weile mit den Monte-Carlo Simulationen herumgespielt habe und sah welche Streuungen im Ergebnis auch bei einer Strategie mit gutem Erwartungswert möglich sind suche ich überhaupt nicht mehr danach dort noch im Detail etwas zu verfeinern.

 

Lutz

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

Account

Navigation

Suche

Suche

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.