Samstag, 31. Oktober 2020, 05:53 UTC+1

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Börselino

Benutzer

Registrierungsdatum: 29. Januar 2019

Beiträge: 44

1

Dienstag, 13. Oktober 2020, 17:59

System-Stop Uhrzeit / Uhrzeitstops in Abhängigkeit von VERSCHIEDENEN Einstiegssignalen

Hallo Herr Knöpfel,

Wäre es möglich, die System-Stops um einen Stop vom Typ "Uhrzeit" zu ergänzen?
Tradedauer gibt es, Uhrzeit leider nicht.

Oder gibt es auch so eine elegante Möglichkeit, verschiedene, sich ggf. überlappende Trades in Abhängigkeit von den jeweiligen Bedingungen, die beim jeweiligen Einstieggültig waren, später zu einer jeweils im Voraus bestimmten, verschiedenen, festen Uhrzeit zu beenden (zu der die jeweiligen Einstiegsbedingungen im Zweifel nicht mehr erfüllt sind)?

Vereinfachtes Beispiel:
  1. Regeln A -> Einstieg A -> Uhrzeitstop A
  2. Regeln B -> Einstieg B -> Uhrzeitstop B
Wenn Trade A und B beim Uhrzeitstop A noch aktiv sind, soll die Pyramide um Stückzahl A abgebaut werden. Entsprechend umgekehrt beim Uhrzeitstop B.
Das normale Vergleichen der aktuellen Uhrzeit mit dem Uhrzeitstop A (bzw. B) hilft nicht weiter. Denn der Uhrzeitstop A (bzw. B) darf nur ausgeführt werden, soweit der Trade A (bzw. B) überhaupt noch aktiv ist auch wenn die Einstiegsbedingungen A (bzw. B) längst nicht mehr erfüllt sind. Die zusätzliche Prüfung, welche Uhrzeitstops noch ausgeführt werden dürfen, macht die Sache kompliziert. Wenn es einen System-Stop Uhrzeit gäbe, müsste man nur die jeweilige Bedingung beim Einstieg eintragen und wäre fertig.
Viele Grüße, Börselino
P.S.: Leider zerreißt es mir dauernd die Formatierung.

jones

Profi

Registrierungsdatum: 22. Oktober 2011

Beiträge: 200

Wohnort: Österreich

2

Dienstag, 13. Oktober 2020, 19:52

Hallo,

hier mal ein Vorschlag für die Zeitsteuerung mit der Funktion DatePart().

z.B. Trades nur von 0 bis 1800 eingehen und von 1800 - 2400 OUT.

Formel: Deine Entry Formel and DatePart(h)<=18
Ob ein Trade noch aktiv ist oder nicht sollte mit den Schlüsselwörtern #_Depot_Pos# umsetzbar sein
lg jones

Börselino

Benutzer

Registrierungsdatum: 29. Januar 2019

Beiträge: 44

3

Dienstag, 13. Oktober 2020, 22:19

Hallo jones,
Hallo,

hier mal ein Vorschlag für die Zeitsteuerung mit der Funktion DatePart().

z.B. Trades nur von 0 bis 1800 eingehen und von 1800 - 2400 OUT.

Formel: Deine Entry Formel and DatePart(h)<=18
Ob ein Trade noch aktiv ist oder nicht sollte mit den Schlüsselwörtern #_Depot_Pos# umsetzbar sein
Danke für die Idee. Bin mir nicht sicher, ob mir das weiter hilft.
Die allgemeine Zeitsteuerung, kein Trade vor, kein neuer Trade nach, go flat um ... kenne und nutze ich. Hilft mir hier aber nicht. Es genügt nicht, nur zu identifizieren, dass noch Trades laufen. Die Herausforderung besteht darin, wenn mehrere Trades gleichzeitig laufen, den "richtigen" Trade mit dem jeweils "richtigen" Zeitstop zu beenden. Die Zeitstops (und die sonstigen Stops) sind je nach Einstiegsgrund verschieden, d.h. (auch) meine Uhrzeitstops hängen davon ab, warum ich eingestiegen bin.

Nach meinem Verständnis liefert #_Depot_Pos# "nur" die aktuelle Stückzahl. Wenn von ursprünglich 5 Trades aktuell 2 Trades noch laufen, wie kann ich dann bestimmen, was die für diese verbleibenden 2 Trades gültigen Uhrzeitstops sind?
Wohlgemerkt, ich starte pro Fallgruppe mit verschiedenen Uhrzeitstops.
Gruß Börselino

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 004

Wohnort: Iringsweg

4

Donnerstag, 15. Oktober 2020, 13:00

Ich lese hier von streuende Entries vercode in einem HS. Naturgemäss schwer, anschliessend die Exits und Stops zu trennen. Wahrscheinlich noch schwerer, die einzelnen Zweige zu backtesten. Welche Entry Kombinationen wohl erfolgreich gewesen wären - und mit welchen Exits.

Meist hilft trennen und entwirren.

In der Entwicklung: mehrere HSe anlegen im selben Projekt, eines pro Entry Methode. Getrennt backtesten. Vielleicht, je nach Underlying, sogar gentrennt nach Enter Long und Enter Short. Theoretische Ergebnisse zusammenführen im Projekt-Portfolio Test.

Im Real-Handel ggf. aufteilen auf mehrere Projekte / Investox Instanzen (CPU Power nutzen!) und wenn nötig virtuelle Konten einsetzen, um die Margin nicht zu überreizen.
Gruss
Bernd

Börselino

Benutzer

Registrierungsdatum: 29. Januar 2019

Beiträge: 44

5

Samstag, 17. Oktober 2020, 00:13

Hallo Bernd,

Ich schätze Deine Meinung sehr. Streuende Entries vermag ich allerdings nicht zu erkennen. Das Beispiel, von 5 Trades laufen 2 noch, war nur zu Veranschaulichung der Coding Challenge "differenzierter Uhrzeitstop je nach Einstiegsgrund" gedacht, nachdem ich nach der ersten Rückmeldung den Eindruck hatte, die Fragestellung nicht klar genug beschrieben zu haben.

Ich habe die näher untersuchten Fallgruppen ein- und desselben Systems in
getrennten Handelssystemen aufgesetzt und in
verschiedenen Instanzen ausgiebig getestet, um das
Backtesting in Investox zu beschleunigen. Wenn man es hinterher bei
getrennten Handelssystemen belässt, gibt es
natürlich kein Problem. Ich hätte die fertige Entwicklung gerne wieder in einem Handelssystem konsolidiert, was
mit dem von mir vorgeschlagenen System-Uhrzeitstop ohne Weiteres möglich wäre. Einstieg A -> Uhrzeitstop A, Einstieg B -> Uhrzeitstop B, unabhängig davon, ob nur A oder nur B oder A und B noch im Markt sind, wer zuerst war, und ob die Einstiegsbedingungen noch erfüllt sind. Im Grunde ist das nur eine Abwandlung des bereits vorhandenen Tradedauerstops ohne mühseligen Umweg über eine Zusatzberechnung der jeweiligen Endzeit - Startzeit, geteilt durch Anzahl Perioden = jeweiliger Tradedauerstop als Variable. Diese Berechnung würde zu falschen Ergebnissen führen, wenn mal wieder Kerzen fehlen sollten. Daten-Aussetzer gibt es ja leider immer mal wieder (Eurex-Probleme, usw.). Daher geht das nicht.
Der Rest des Systems ist so KISS, dass der Rechner auch bei "all in one" sicher nicht überfordert ist.
Gruß Börselino

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 616

6

Mittwoch, 21. Oktober 2020, 13:06

Hallo,

mehrere Stops mit unterschiedlicher "Einstiegsbedingung" (=jwl. Enter-Bedingung) verwenden hilft nicht weiter?

Viele Grüße
Andreas Knöpfel

Börselino

Benutzer

Registrierungsdatum: 29. Januar 2019

Beiträge: 44

7

Mittwoch, 21. Oktober 2020, 22:56

Hallo Herr Knöpfel,
Ihre Rückfrage
mehrere Stops mit unterschiedlicher "Einstiegsbedingung" (=jwl. Enter-Bedingung) verwenden hilft nicht weiter?
hat mich zunächst stutzig gemacht, da es ja keinen System-Stop vom Typ "Uhrzeit" gibt, dem man diese Einstiegsbedingung mitgeben könnte.
Und der normale Uhrzeitvergleich hilft nicht weiter, da die Einstiegsbedingung bei Ausstieg nicht mehr gültig sein muss/wird.
Aber dann habe ich mich gefragt, ob man den System-Tradedauerstop nicht möglicherweise umfunktionieren kann.

Das geht tatsächlich (auch ohne die von mir oben beschriebene umständliche und unzuverlässige Nebenrechnung) und zwar wie folgt:
Schritt 1) Man fügt pro Einstiegsgrund einen Tradedauerstop hinzu und trägt unter Einstiegsbedingung den Einstiegsgrund ein.
Schritt 2) Zusätzlich trägt man unter Zusatzbedingung die gewünschte Uhrzeit als Berechnung ein. Wer die Uhrzeit anderweitig definiert hat mit "global calc Uhrzeit: DatePart(h)*100+DatePart(n);" schreibt als Zusatzbedingung also z.B. Uhrzeit = 900 hin, wenn der Trade um 9.00 Uhr per Uhrzeitstop beendet werden soll.
Funktioniert einwandfrei !!! Meine Anfrage hat sich somit erledigt.

Danke, Börselino