Freitag, 19. April 2024, 05:03 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.

Martin

unregistriert

1

Sonntag, 15. Januar 2006, 11:42

Ermittlung der Outpositionen

Hallo zusammen,

ich habe ein EoD-Handelssystem entworfen, welches zum Schlusskurs Long geht.
Da ich nicht exakt den Schlußkurs handeln kann möchte ich dieses HS nun mit Intradaydaten testen. Somit kann ich überprüfen, wie sensibel das HS reagiert, wenn ich nicht zum Schlußkurs sondern ein paar Minuten früher Long gehe.

Mein EoD-Handelssystem hat systembedingt eine Mindestoutzeit von 2 Tagen. Dies habe ich unter den Testbedingungen Mindestdauer der Outpositionen eingestellt.

Wie kann ich das mit Intradaydaten in Investox einstellen, dass ich mindestens 2 Tage Out bleibe?

Grüße Martin

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

2

Montag, 16. Januar 2006, 12:07

RE: Ermittlung der Outpositionen

Hallo,

wenn Sie mit einer Minuten-Komprimierung arbeiten, könnten Sie die entsprechende Anzahl Perioden auch unter Mindestlänge der Outputpositionen eintragen.

Viele Grüße
Andreas Knöpfel

Martin

unregistriert

3

Montag, 16. Januar 2006, 20:14

Hallo Herr Knöpfel,

vielen Dank für Ihre Hilfe.
Das mit der Mindestlänge der Outpositionen habe ich auch schon ausprobiert. Bei einer Minutenkomprimierung müsste ich für zwei Tage 93600 Perioden bei einer Handelszeit von 13 Stunden am Tag (FDAX) eingeben .
Das Problem ist nun, dass wenn sich die Handeslzeiten ändern (wegen Feiertage oder Umstellung der Handelszeiten wie vor kurzem) die Einstellung hier nicht mehr passt. Außerdem bin ich hier mit der Komprimierung nicht so flexibel, wenn ich diese mal ändern möchte.
Was hinzu kommt ist, dass mein System mit einem Intradaystop arbeitet. Das bedeutet, dass u. U. kurz vor Börsenschluss verkauft wird und ich dann min. 93600 Perioden Out bin. In diesem Fall könnte das HS nach einem Tag Out am folgenden Tag kurz vor Börsenschluss long gehen, was aber ein Tag zu früh wäre.
Irgendwie habe ich das Gefühl, dass ich mit den Outpositionen und Perioden nicht klar kommen werde.

Mir schwebt mehr oder weniger ein Zähler vor, der die Outpositionen zum Handelsbeginn zählt.
Ich habe es schon mal so versucht:

Uhrzeit = 090000
and
#_Position HS# = 0


Damit erhalte ich zumindest ein Flag, ob ich an diesem Tag Out bin oder nicht.
Nun scheitert es bei mir mit dem Aufsummieren der Flags.
Gibt es hierzu einen Zähler, der dann aber auch entsprechend zurückgesetzt werden kann?

Grüße Martin

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

4

Dienstag, 17. Januar 2006, 11:02

Hallo,

>>Gibt es hierzu einen Zähler, der dann aber auch entsprechend ><zurückgesetzt werden kann?

ja, die Funktion CumSince(Daten, Reset, Startwert), wobei Reset hier die Uhrzeitbedingung wäre.

Viele Grüße
Andreas Knöpfel

Martin

unregistriert

5

Mittwoch, 25. Januar 2006, 21:06

Hallo Herr Knöpfel,

das ist genau das was ich suche.
Leider komme ich noch nicht so ganz klar mit der Realisierung.
Mein Counter soll hochzählen, wenn ich Out bin und soll zurückgesetzt werden, wenn ich Long bin.
Das habe ich wie folgt unter Definitionen realisiert:

calc pos_out: (Uhrzeit() = 100000 and #_Position HS# = 0);
calc summe_cnt: CumSince(pos_out, #_Position HS#=1, 0);


Die Uhrzeitabfrage ist drin, damit nur einmal am Tag gezählt wird.

Mein Handelssystem soll Long gehen, wenn das System 2 Tage Out war.
Das habe ich unter Enter Long Bedingung wie folgt realisiert:

summe_cnt >= 2


Der Ausstieg erfolg über einen Intradaystop.

Bei meinen Tests kommt jedoch immer folgende Fehlermeldung, kann mir aber nicht vorstellen weshalb:

Zitat

Fehler in der Enterformel aufgetreten:
Vorgang: Indikatorberechnung
Datenreihe: FDAX
Indikator: GrößerGleich
Meldung: Für die Berechnung des Indikators stehen (bei dieser Datenkomprimierung) nicht genügend Daten zur Verfügung.
Der Fehler kann auch unter "Definitionen" enthalten sein.


Also an der Datenmenge kann es meiner Meinung nach nicht liegen und ich versteh nicht, weshalb die Bedingungen so nicht funktionieren.

Wenn ich das zurücksetzen des Zählers z.B. über datepart(w) = 4 mache >> calc summe_cnt: CumSince(pos_out, datepart(w)=4, 0) <<, dann funktionieren die Bedingungen, aber sobald die Position drin steht kommt der Fehler.

Haben Sie eine Idee, weshalb die oben dargestellte Bedingung nicht funktioniert?

Viele Grüße Martin

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

6

Donnerstag, 26. Januar 2006, 10:12

Hallo,

Sie schreiben ja #_Position HS#. Ist "HS" ein anderes Handelssysteme (müsste es sein, wenn es funktionieren soll)?

Viele Grüße
Andreas Knöpfel

Martin

unregistriert

7

Freitag, 27. Januar 2006, 17:34

Hallo Herr Knöpfel,

bei dem "HS" handelt es sich um das Handelssystem, für das der Zähler gebraucht wird.
Ich versteh nur nicht, weshalb es nach Ihrer Meinung nach dann nicht funktionieren sollte.

Wenn das Handelssystem Out ist, dann wird pos_out = 1 gesetzt, und der Zähler mit CumSince zählt hoch. Dies funktioniert auch, da ich das Zurücksetzen des Zählers mit datepart ausprobiert habe.

Ist das Handelssystem Out, dann soll der Zähler zurückgesetzt werden. Dies sollte meiner Meinung nach auch funktionieren, wenn ich die Position mit #_Position HS# = 1 abfrage.

Grüße Martin

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

8

Montag, 30. Januar 2006, 10:54

Hallo,

es ist nicht sinnvoll, in einem Handelssystem Bezug auf die Kapitalkurve oder Positionen des eigenen Systems zu nehmen, da diese Daten erst nach Berechnung des Handelssystems zur Verfügung stehen.
Daher wird das "eigene" System vom Schlüsselwort-Assistenten ja auch nicht angeboten, wenn Sie Kapital/Position einfügen möchten.

Für Ihr Vohaben ist die folgende Vorgehensweise aber m.E. sinnvoller. Sie arbeiten wie bisher weiterhin auf Tagesbasis (aber mit komprimierten Tickdaten, nicht mit EoD-Daten) und ermitteln die Enter/Exitbasis mit dem Komprimierungsindikator z.B. auf 1-Minuten-Basis:

So erhalten Sie z.B. den Close-Kurs um 19:45 wie folgt:

Komp(#ValueWhen(Close,DatePart(h)=19 AND DatePart(n)=45, 1, V)#, #1#)

Viele Grüße
Andreas Knöpfel

Martin

unregistriert

9

Montag, 6. Februar 2006, 21:56

Hallo Herr Knöpfel,

bin nun endlich mal dazugekommen, Ihren Vorschlag mit >> Komp(#ValueWhen(Close,DatePart(h)=19 AND DatePart(n)=45, 1, V)#, #1#) << auszuprobieren.

Es funktiniert genau so, wie ich es mir vorgestellt habe.
Nun kann ich mal mein HS ausprobieren, wie sensiebel es reagiert, wenn ich nicht genau zum Schlusskurs einsteige.

Vielen Dank für Ihre Hilfe :)

Grüße Martin