Dienstag, 16. April 2024, 11:45 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.

sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

1

Sonntag, 19. Juni 2005, 10:51

NN60min in einem Tageskontext HS einsetzen

Hallo,

vielleicht lässt sich die Prognosequaliätät von kurzfristigen, tagesbasierten, neuronalen HS verbessern, indem man für das Training eine 1h-Basisdatenreihe verwendet, weil dann dem NN mehr Daten zur Verfügung stehen.

Das Handelssystem soll immer nur zur Börseneröffnung zum Open (z.B. BUND um 8:00 Uhr) eine Position eröffnen bzw. schliesen, d.h. pro Tag gibt es maximal einen Trade.

Handelsregel:
Ist am Vorabend das NN60min pos. dann gehe am nächsten Morgen long.
Ist am Vorabend das NN60min neg. dann gehe am nächsten Morgen short.

Zitat

global Calc NN60min: NNintraday60min(O);

global Calc EnterLong: NN60min > 0;
global Calc EnterShort: NN60min < 0;


Um diesen "einen Trade pro Tag" umzusetzen, habe ich die Intradaybegrenzung auf 7:59 bis 8:01Uhr gesetzt, siehe Bild.

Frage:
Wie kann ich erreichen, dass der Trade nicht schon um 9 Uhr beendet wird, sondern in der angefangenen Richtung weiter läuft, bis ein Gegensignal (das aber immer nur zur Börseneröffnung umgesetzt werden soll) kommt?

Ich habe keine Ahnung, ob diese Herangehensweise erfolgversprechend ist, aber ich würde es gerne mal ausprobieren. Bei diesem Ansatz müsste es auch möglich sein, zwei tagesgültige Stops gleichzeitig zu setzen (für Braketorder: Verlust- & GewinnSTOP) und den Erfolg auf der Kurshistory durchzurechnen.
Danke.

Viele Grüße
Torsten
»sten« hat folgendes Bild angehängt:
  • 050619_NN60min2DayHS.gif

Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von »sten« (19. Juni 2005, 11:03)


Frieder

unregistriert

2

Sonntag, 19. Juni 2005, 13:45

Hallo Sten!

Zitat

Frage:
Wie kann ich erreichen, dass der Trade nicht schon um 9 Uhr beendet wird, sondern in der angefangenen Richtung weiter läuft, bis ein Gegensignal (das aber immer nur zur Börseneröffnung umgesetzt werden soll) kommt?

Ganz einfach: in dem Du die Tradingzeit nicht um 09:01 beendest, sondern um 19:00!

Für die Gewinn-und Verluststopps kannst Du dann ja die Intraday-Stopps mit dem ROB optimieren:] .

Gruß,
Frieder

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Frieder« (19. Juni 2005, 13:47)


sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

3

Sonntag, 19. Juni 2005, 18:58

Hallo Frieder,

das war auch mein erster Gedanke gewesen. Leider werden dann wärend des Tages auch neue Trades erzeugt, z.B. am 26.5.05 würde nach etwa 3h aus dem short ein long-Trade werden.
Das möchte ich aber nicht machen, d.h. die einmal eingeschlagene Richtung soll den ganzen Tag beibehalten werden.

Nur als Notkrücke habe ich die Intradaybegrenzung auf 7:59 bis 8:01Uhr eingestellt, damit man im Chart besser sehen kann, worauf ich hinaus möchte. Ich möchte den einmal angefangene Trade nur auf den ganzen Tag ausdehnen.

Viele Grüße
Torsten

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »sten« (19. Juni 2005, 18:59)


Tobias Männlich

Meister

Registrierungsdatum: 3. September 2002

Beiträge: 663

Wohnort: NRW / Paderborn

4

Montag, 20. Juni 2005, 08:12

Hi Sten,

haste´s mal mit Schalter() probiert ?
Setz´ den Schalter auf 1 bei NN>0, auf -1 bei NN<0 und auf Null bei 19 Uhr z.B. mit Datepart. Den Schalter fragst Du dann im HS ab.
Dann sollte es doch klappen ...
Gruss Tobias

sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

5

Montag, 20. Juni 2005, 10:16

Hallo Tobias,

Danke für den Tip, so gehts:

Zitat


global Calc NN60min: NNintraday60min(O);
global calc Uhrzeit: DatePart(h);

global Calc EnterLong: NN60min > 0 AND Uhrzeit=18;
global Calc EnterShort: NN60min < 0 AND Uhrzeit=18;


aber:
Bei mir geht die Zeitreihe meistens bis 18 aber an einigen Tagen auch bis 19. Ich möchte immer den letzten Uhrzeitwert nehmen, d.h. 19 wenn dieser existiert.
Wie kann man die letztes Stunde des Tages ermitteln?
Gibt es einen Befehl "Exist(Datepart=19)...liefert true(1) falls existiert sonst liefert false(0)" ähnlich wie bei der Shellprogrammierung?
Oder geht es irgendwie anders, ich probiere gerade mit if() und max() herum.

Zitat


global Calc lastStunde: ...; {liefert 18 oder 19 zurück}

dann könnte man statt einer fixen Zeit "Uhrzeit=18" diesen Ausdruck so ersetzten "Uhrzeit=lastStunde"


Danke.

Viele Grüße
Torsten

Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von »sten« (20. Juni 2005, 10:23)


sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

6

Montag, 20. Juni 2005, 11:19

ich hab's, so müsste es gehen:

Zitat


global Calc Uhrzeit: DatePart(h);

global Calc kurzerTag: Uhrzeit=18 AND Ref(Uhrzeit,1)<18;
global Calc langerTag: Uhrzeit=19 AND Ref(Uhrzeit,1)<19;

global Calc EnterLong: NN60min > 0 AND (kurzerTag OR langerTag);
global Calc EnterShort: NN60min < 0 AND (kurzerTag OR langerTag);

sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

7

Mittwoch, 22. Juni 2005, 07:46

Hallo,

meine Lösungsvorschlag das variable Tagesende (18 oder 19 Uhr) über

Zitat

Uhrzeit=18/19 AND Ref(Uhrzeit,1)<18/19

zu ermitteln ist nicht so gut, denn ich brauche immer erst einen Kurs vom nächsten Tag. Und das ist zu spät, wenn man vor der Börseneröffnung bereits die Orders aufgeben möchte.

Hat jemand vielleicht eine andere Idee?
Ich möchte die Tageswechselerkennung auch in einem Anwenderstop-Trailingberechnung verwenden, wo ich im einfachsten Fall z.B. am Tagesanfang jedes weiteren Tradingtags den Stop um 5 Ticks enger ziehe.
Danke.

Viele Grüße
Torsten

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »sten« (22. Juni 2005, 12:31)


sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

8

Mittwoch, 22. Juni 2005, 23:30

Hallo,

ich habe jetzt mal untersucht, wie die unterschiedliche Tageslänge zustande kommt. Ich habe die IB-Kurse von BUND begrenzt auf 8:00 bis 19:01Uhr, d.h. ist wollte eigentlich noch die Schlussauktion mitnehmen.

Ein langer Tag entsteht dann, wenn zw. 19:00 Uhr & 19:01 mindestens ein Kurs aufgezeichnet wird. Das tritt relativ selten auf, weil die Schlußaution meisten erst um 19:03 statt findet.

Viele Grüße
Torsten

Fazit:
Ich habe einen Fehler bei der Tagesbegrenzung gemacht. Wenn man die obere Grenze höher setzt, dann werden immer alle Kurse genommen und es gibt dann nur "lange Tage".
Perspektivisch wäre es aber praktisch, wenn es einen exist()-Befehl gebe, so wie ich es weiter vorne beschrieben habe.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »sten« (23. Juni 2005, 09:13)