Tradestation User Group Germany (http://www.tradernet.org/wbb/index.php)
|- Newbies (http://www.tradernet.org/wbb/board.php?boardid=3)
|-- prozentuale Stops (http://www.tradernet.org/wbb/threadid.php?boardid=3&threadid=1866)


Geschrieben von Clemens1 am 29.01.2008, 08:59:

  prozentuale Stops

Hallo,

ich würde in mein System gerne Stoplosses und Trailing-Stops einbauen, die keinen Dollarbetrag als Grundlage haben (= Amount), sondern einbeziehen, wieviel Prozent die Position in Gewinn oder Verlust gelaufen ist. Damit will ich erreichen, das System auf mehreren Märkten ohne Anpassungen testen zu können.

Also hier eine Beispielkombination der Stops:


setstopposition;
setpercenttrailing(400, 15);
setstoploss(600);

ich würde hier also gerne "400" und "600" durch relative Werte ersetzen.

Gibt es eine Möglichkeit? Evtl über "0.9 * BigPointValue" für 90% oder ähnliches?


Geschrieben von Uwe am 29.01.2008, 10:06:

 

Zitat:
Original von Clemens1
Hallo,

ich würde in mein System gerne Stoplosses und Trailing-Stops einbauen, die keinen Dollarbetrag als Grundlage haben (= Amount), sondern einbeziehen, wieviel Prozent die Position in Gewinn oder Verlust gelaufen ist. Damit will ich erreichen, das System auf mehreren Märkten ohne Anpassungen testen zu können.

Also hier eine Beispielkombination der Stops:


setstopposition;
setpercenttrailing(400, 15);
setstoploss(600);

ich würde hier also gerne "400" und "600" durch relative Werte ersetzen.

Gibt es eine Möglichkeit? Evtl über "0.9 * BigPointValue" für 90% oder ähnliches?



Hall, @Clemens1,

Du kannst ohne weiteres Variablen hier einsetzen. Hilfreich sind hier wohl einige fest im System gesetze Variablen (Reserved Word), die Du in der Hilfe zum Dictionary von EL findest. (z.B. Suchbegriff "I_", "NetProfit", "BigPointValue", ... ; Sammlung siehe unter Stichwort: "Reserved Word Library")

Gruß,
Uwe


Geschrieben von Clemens1 am 29.01.2008, 16:22:

 

danke, konnte das problem wie folgt lösen:

If marketposition = 1 then begin
sell tomorrow at entryprice * 0.95 stop;
sell tomorrow at highest(high, barssinceentry) * 0.95 stop;
end;
If marketposition = -1 then begin
buytocover tomorrow at entryprice * 1.05 stop;
buytocover tomorrow at lowest(low, barssinceentry) * 1.05 stop;
end;

jeweils für long und short position ein stoploss und ein trailingstop.


Geschrieben von Algotrader am 26.10.2008, 12:22:

 

Den Amount könnte man ja auch durch eine Formel mit relativem Bezug ersetzen (z.B. entryprice*0.02 oder average(truerange,10)*2).

Zu den Stops aber zwei generelle Fragen:

1. Welche Ausführungsunterschiede gibt es durch einen Funktionsstop, z.B. setstoploss(300) oder durch eine Stoporder (Sell next bar entryprice-300 stop) ? Welche Variante ist zu bevorzugen?

2. Wie wird eine Stoporder im Handelssystem (z.B. "Sell next bar entryprice-300 stop;") in den US-Futuresmärkten gleich an die Börse weitergeleitet oder zunächst bei TradeStation geparkt?




Geschrieben von Klaus am 27.10.2008, 12:30:

 

Hallo Algotrader!

Zitat:
1. Welche Ausführungsunterschiede gibt es durch einen Funktionsstop, z.B. setstoploss(300) oder durch eine Stoporder (Sell next bar entryprice-300 stop) ? Welche Variante ist zu bevorzugen?
Es gibt einen wichtigen Unterschied, die Funktionsstops (Setxxx) werden alle auch innerhalb eines Bars ständig realtime modifiziert. Das ist bei SetStopLoss nicht relevant, aber bei SetPercentTrailing oder SetDollarTrailing ist das ein grosser Unterschied zu ausprogrammierten Stops, die nur immer am Ende des Bars verschoben werden können.

Zitat:
2. Wie wird eine Stoporder im Handelssystem (z.B. "Sell next bar entryprice-300 stop;") in den US-Futuresmärkten gleich an die Börse weitergeleitet oder zunächst bei TradeStation geparkt?
Diese Frage bezieht sich ja wohl auf TradeStation 8.3 ? Da kann man es einstellen, ob die Stops direkt zur Börse geschickt werden sollen oder nicht.

Gruss
-Klaus


Geschrieben von Algotrader am 27.10.2008, 20:10:

 

Danke, Klaus.

Eines habe ich aber noch nicht ganz verstanden: Wenn der Funktionsstop (setstoploss etc.) "intrabar" funktioniert und normale Stoporders (sell next.. stop) direkt an die Börse weitergeleitert werden können, haben diese doch auch quasi eine "intrabar"-Wirkung, da die Stoporder an der Börse ja ebenfalls nicht zum Ende der Barperiode aktiviert wird, sondern sofort nach Erreichen des Stopkurses. Insofern warten beide Stops nicht das Periodenende ab. Allerdings hat die Stoporder, die an die Börse geht gegenüber dem Funktionsstop einen Geschwindigkeitsvorteil und ist damit zu bevorzugen. Oder mache ich da einen Denkfehler?

Ein weiterer Vorteil der Stoporder an der Börse wäre ja auch ein Schutz bei Verbindungsabbrüchen.

Oder könnten es Ordergebühren sein, den Funktionsstop anstelle der Stoporder zu verwenden?

Schon mal Danke vorab. Am Anfang gibt es eben noch die ein oder andere Frage.





Geschrieben von Klaus am 28.10.2008, 08:56:

 

Algotrader, es geht hier nicht um die Geschwindigkeit mit der eine Order an die Börse geschickt wird. Diese ist immer gleich, egal wie die Order erzeugt wird. Und diese Geschwindigkeit ist auch wirklich das Letzte, worüber Du Dir den Kopf zerbrechen solltest. Und mit Ordergebühren hat das auch nichts zu tun.

Was ich mit "innerhalb eines Bars ständig realtime modifiziert" meinte ist, dass diese Trailing-Stops (als Stops zur Gewinn-Mitnahme) abhängig vom Kursverlauf innerhalb des Bars ihren Wert ändern und man somit an grossen Bewegungen innerhalb eines Bars profitieren kann. Ob das allerdings in der Praxis funktioniert hängt von vielen Randbedingungen ab.

Bevor wir hier allerdings weiter rumstochern solltest Du vielleicht erst mal beschreiben, was für eine Art Trading Du Dir vorstellst, also Markt bzw. Instrument, Chart und welchen Zeithorizont Du betrachtest...

Gruss
-Klaus


Geschrieben von Algotrader am 29.10.2008, 01:04:

 

Klaus, zu Deiner Frage: Es geht mir um die technische Umsetzung von Stops im Intradaytrading (30 Min-Bars) des ES und E7. Dafür benötige ich folgende Exits: StopLoss, TakeProfit und Trailing gemeinsam.

Dabei frage ich mich, ob ich bei SL und TP mit Funktionsstops besser fahre oder mit Stoporders. Die Stoporder wird ja wohl zu Beginn jedes Bars gleich generiert und abgeschickt, so dass ich einen Geschwindigkeitsvorteil gegenüber dem Funktionsstop unterstellt hatte (und natürlich Schutz bei Verbindungsabbrüchen). Lediglich beim Trailingstopp bin ich wohl auf den Funktionsstop angewiesen. - Du hattest Dich ja differenziert geäußert, so dass ich noch mal nachfragen muss, ob die Überlegungen richtig sind oder welche technische Lösung vorteilhaft ist.






Geschrieben von Klaus am 29.10.2008, 09:16:

 

OK, 30min Chart hört sich schon mal gut an, vorausgesetzt die Stops und Targets sind nicht so eng, dass alle Trades schon im 1. Bar zu Ende sind. Bei den Exits muss man 3 Dinge unterscheiden:

  1. Programmierung
  2. Generierung
  3. Automatisierung bzw. Senden von Orders an die Börse
Programmieren kannst Du beliebige Kombinationen von Exits, d.h. Stops und Limits, ausprogrammiert und die eingebauten Exits (Setxxx). Meist ist es sinnvoll, verschiedene Stop-Techniken miteinander zu kombinieren, um in verschiedenen Phases des Trades Verluste zu begrenzen bzw. möglichst viel Gewinn mitzunehmen. Ob man hier lieber alles von Hand programmiert oder die Funktionen verwendet oder beides parallel macht ist reine Geschmackssache - einige Trader "denken" in Punkten und wollen das auch so programmieren, andere in Beträgen und fühlen sich mit den Funktionen wohler.

Läuft die Strategie im Chart, sorgt die TradeStation automatisch dafür, dass immer nur 1 Stop und 1 Limit (und zwar die jeweils engsten) gleichzeitig aktiv sind. Egal wieviele Stops Du also programmiert hast, generiert wird immer nur eine Stop- und eine Limit-Order zu einem Zeitpunkt. Diese arbeiten (intern) als OCA-Order (one cancels other).

Im Rahmen der Automatisierung kannst Du bei der TS 8 einstellen, ob die generierten Stop-Orders an die Börse geschickt werden sollen oder nicht. An der Börse sind jedoch keine 2 (Stop und Limit) Orders gleichzeitig aktiv, sondern im Rahmen der Automatisierung immer nur entweder oder. Wird der Stop nicht an die Börse weitergeleitet erfolgt das Glattstellen beim Ausstoppen der Strategie durch eine Market-Order. Zwar kann das Senden des Stops an die Börse Vorteile bei einem Ausfall bringen, jedoch nach dem Ausfall ist meist ein manueller EIngriff nötig um doppetle Orders zu vermeiden. Insofern haben beide Varianten ihre Vor- und Nachteile. Sowas solltest Du dann hinterher in der Praxis ausprobieren.

-Klaus


Geschrieben von Algotrader am 30.10.2008, 23:19:

 

Danke, Klaus.

Powered by: Burning Board 1.1.1 © 2001 by WoltLab