Samstag, 20. April 2024, 00:46 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Lieber Besucher, herzlich willkommen bei: INVESTOX-Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

ojb Männlich

Profi

Registrierungsdatum: 2. Februar 2003

Beiträge: 381

Wohnort: München

1

Freitag, 22. Oktober 2004, 16:28

Getrennte NNs für Long und Short

Hallo Kollegen,

angeregt durch den Artikel im Warrants & Zertifikate Oktober 2003 (http://warrants.bnpparibas.com/de/doc/WZ_10_03.pdf) bin ich auf folgendes Problem gestossen.

Ich habe ein HS analog dem im Artikel beschriebenen gebaut.

Hier wird die quasi die ROC verschiedener Intermarket-Artikel über Cross ausgewertet und dann mit jewils -1, -0.5, 0, 0.5 oder 1 gewichtet aufaddiert. Ist Gesamt > 0 geht man Long, andernfalls Short.

Man baut -- wie ich in einem anderen Beitrag schon einmal geschrieben habe -- quasi ein NN konventionell nach.

Interessanterweise ist das Ergebnis, wenn man die Long- und die Short-Seite einzeln optimieren lässt besser, als wenn man nur ein Gesamt für beide verwendet.
Es scheinen also für Long und für Short unterschiedliche Intermarketzusammenhänge zu existieren.

Hier der Code:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Calc Gold: 
Cross(ROC(Close("GOLD       -%"), 1, %), 0, 1);

Calc Bund: 
Cross(ROC(Close("GERMAN BUND-%"), 1, %), 0, 1);

Calc TBond: 
Cross(ROC(Close("TBONDS COMP-%"), 1, %), 0, 1);

Calc Nasd: 
Cross(ROC(Close("NASDAQ 100 -%"), 1, %), 0, 1);

Calc GesamtLong: 
([1,-1|-0.5|0|0.5|1] * Gold) + ([-1,-1|-0.5|0|0.5|1] * Bund) + ([-1,-1|-0.5|0|0.5|1] * TBond) + ([-0.5,-1|-0.5|0|0.5|1] * Nasd) > 0;

Calc GesamtShort: 
([-0.5,-1|-0.5|0|0.5|1] * Gold) + ([-0.5,-1|-0.5|0|0.5|1] * Bund) + ([0,-1,1,-1,1,0.05,3.3550,I] * TBond) + ([0,-1|-0.5|0|0.5|1] * Nasd) < 0;


So weit so gut. Das man die Idee mit einem NN eleganter umsetzen kann ist klar, wird ja auch von Sebastian Schmidt erwähnt.

Die Variante mit einem Gesamt in ein NN umzubauen ist kein Problem, was aber wenn ich ein NN für Long und für Short nehmen will? Wie würdet Ihr das machen?
Ich habe mal versucht in der Lernbeschränkung nur Bereiche zuzulassen, in denen man Long oder Short gegangen wäre, etwas besseres ist mir jetzt nicht eingefallen.

Hat einer von Euch eine Idee, wie man ein NN sinnvollerweise nur für die Long- und nur für die Short-Seite trainieren kann?

Um jeden Hinweis dankbar.

Liebe Grüße
Oli

ojb Männlich

Profi

Registrierungsdatum: 2. Februar 2003

Beiträge: 381

Wohnort: München

2

Freitag, 22. Oktober 2004, 16:28

Getrennte NNs für Long und Short

Hallo Kollegen,

angeregt durch den Artikel im Warrants & Zertifikate Oktober 2003 (http://warrants.bnpparibas.com/de/doc/WZ_10_03.pdf) bin ich auf folgendes Problem gestossen.

Ich habe ein HS analog dem im Artikel beschriebenen gebaut.

Hier wird die quasi die ROC verschiedener Intermarket-Artikel über Cross ausgewertet und dann mit jewils -1, -0.5, 0, 0.5 oder 1 gewichtet aufaddiert. Ist Gesamt > 0 geht man Long, andernfalls Short.

Man baut -- wie ich in einem anderen Beitrag schon einmal geschrieben habe -- quasi ein NN konventionell nach.

Interessanterweise ist das Ergebnis, wenn man die Long- und die Short-Seite einzeln optimieren lässt besser, als wenn man nur ein Gesamt für beide verwendet.
Es scheinen also für Long und für Short unterschiedliche Intermarketzusammenhänge zu existieren.

Hier der Code:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Calc Gold: 
Cross(ROC(Close("GOLD       -%"), 1, %), 0, 1);

Calc Bund: 
Cross(ROC(Close("GERMAN BUND-%"), 1, %), 0, 1);

Calc TBond: 
Cross(ROC(Close("TBONDS COMP-%"), 1, %), 0, 1);

Calc Nasd: 
Cross(ROC(Close("NASDAQ 100 -%"), 1, %), 0, 1);

Calc GesamtLong: 
([1,-1|-0.5|0|0.5|1] * Gold) + ([-1,-1|-0.5|0|0.5|1] * Bund) + ([-1,-1|-0.5|0|0.5|1] * TBond) + ([-0.5,-1|-0.5|0|0.5|1] * Nasd) > 0;

Calc GesamtShort: 
([-0.5,-1|-0.5|0|0.5|1] * Gold) + ([-0.5,-1|-0.5|0|0.5|1] * Bund) + ([0,-1,1,-1,1,0.05,3.3550,I] * TBond) + ([0,-1|-0.5|0|0.5|1] * Nasd) < 0;


So weit so gut. Das man die Idee mit einem NN eleganter umsetzen kann ist klar, wird ja auch von Sebastian Schmidt erwähnt.

Die Variante mit einem Gesamt in ein NN umzubauen ist kein Problem, was aber wenn ich ein NN für Long und für Short nehmen will? Wie würdet Ihr das machen?
Ich habe mal versucht in der Lernbeschränkung nur Bereiche zuzulassen, in denen man Long oder Short gegangen wäre, etwas besseres ist mir jetzt nicht eingefallen.

Hat einer von Euch eine Idee, wie man ein NN sinnvollerweise nur für die Long- und nur für die Short-Seite trainieren kann?

Um jeden Hinweis dankbar.

Liebe Grüße
Oli

sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

3

Freitag, 22. Oktober 2004, 17:09

Hallo Oli,

ich hatte das bisher nur über die Einstellung im Handelssystem gemacht, d.h. ich würde dort nur Long bzw. Short-Trades zulassen.
Die NN's ganz gezielt für die eine bzw. andere Seite zu trainieren habe ich noch nicht versucht. Bin auf diese Idee noch nicht gekommen.
Ich würde es mal so probieren.

Lernbeschränkung für ein Long-NN:
Const periodeKlein: 10;
Const periodeGross: 100;
GD(Close, periodeKlein, S) > GD(Close, periodeGross, S)

Lernbeschränkung für ein Short-NN:
Const periodeKlein: 10;
Const periodeGross: 100;
GD(Close, periodeKlein, S) < GD(Close, periodeGross, S)

Vielleicht kann man ja sogar Optimierungsvariablen für die Perioden in der Lernbeschränkung einsetzen?

Viele Grüße
Torsten

PS:
In der Anfangszeit hatte ich mal versucht für Tradingfonds nur Long-Handelssysteme zu entwickeln. Bin aber dann davon wieder abgekommen.
Laß mal von Dir hören, ob dieser Ansatz was bringt oder ob es nur nochmehr Optimierung ist & das HS als Ganzes noch instabiler macht.

Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von »sten« (22. Oktober 2004, 17:30)


sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

4

Freitag, 22. Oktober 2004, 17:09

Hallo Oli,

ich hatte das bisher nur über die Einstellung im Handelssystem gemacht, d.h. ich würde dort nur Long bzw. Short-Trades zulassen.
Die NN's ganz gezielt für die eine bzw. andere Seite zu trainieren habe ich noch nicht versucht. Bin auf diese Idee noch nicht gekommen.
Ich würde es mal so probieren.

Lernbeschränkung für ein Long-NN:
Const periodeKlein: 10;
Const periodeGross: 100;
GD(Close, periodeKlein, S) > GD(Close, periodeGross, S)

Lernbeschränkung für ein Short-NN:
Const periodeKlein: 10;
Const periodeGross: 100;
GD(Close, periodeKlein, S) < GD(Close, periodeGross, S)

Vielleicht kann man ja sogar Optimierungsvariablen für die Perioden in der Lernbeschränkung einsetzen?

Viele Grüße
Torsten

PS:
In der Anfangszeit hatte ich mal versucht für Tradingfonds nur Long-Handelssysteme zu entwickeln. Bin aber dann davon wieder abgekommen.
Laß mal von Dir hören, ob dieser Ansatz was bringt oder ob es nur nochmehr Optimierung ist & das HS als Ganzes noch instabiler macht.

Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von »sten« (22. Oktober 2004, 17:30)


klexer

unregistriert

5

Sonntag, 24. Oktober 2004, 21:17

Hallo Oli

getrennte Optimierungen für long und short haben bei mir immer bessere Ergebnisse gebracht.

Nach der alten Faustregel: Abwärts geht´s doppelt so schnell wie aufwärts kann es ja gar nicht sein, daß eine Optimierung für alles passt.

Meine Meinung:
man braucht je 3 Strategien für long UND short
für Abwärts
für seitwärts
für aufwärts

Meine bisherigen Ergebnisse bestätigen dies.

Nun gut, bin noch nicht so lange dabei.

Aber das änder sich ja gerade

schöne Grüße igi

klexer

unregistriert

6

Sonntag, 24. Oktober 2004, 21:17

Hallo Oli

getrennte Optimierungen für long und short haben bei mir immer bessere Ergebnisse gebracht.

Nach der alten Faustregel: Abwärts geht´s doppelt so schnell wie aufwärts kann es ja gar nicht sein, daß eine Optimierung für alles passt.

Meine Meinung:
man braucht je 3 Strategien für long UND short
für Abwärts
für seitwärts
für aufwärts

Meine bisherigen Ergebnisse bestätigen dies.

Nun gut, bin noch nicht so lange dabei.

Aber das änder sich ja gerade

schöne Grüße igi