Autor |
|
_Ralf
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 56
|
|
|
12.12.2001, 09:10 |
|
_Klaus Eckhoff
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 149
|
|
|
12.12.2001, 10:10 |
|
_Ralf
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 56
|
|
|
12.12.2001, 11:10 |
|
_Klaus Eckhoff
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 149
|
|
|
12.12.2001, 15:10 |
|
_Uwe
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 313
|
|
|
12.12.2001, 16:10 |
|
_Ralf
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 56
|
|
Hallo,
die TSPro hat eine neue sysntax für trade ein- und ausstiege d.h.
Befehlsveränderung: TS2000i -> TSPro/6.0 buy -> buy sell -> sellshort exitlong -> sell exitshort -> buytocover
und deshalb muß man alle Signale erst umarbeiten um sie in TSPro/6.0 zu verwenden
chart: Nasdaq-emini daily - setexitonclose funktioniert aber auch auf daily-basis
meine ausstiege entsprachen exitlong und exitshort
Bsp.: if marketposition=1 then sell size contracts this bar on close; {entspricht exitlong}
hier mal der ELA-Code für mein Moneymanagement-Test: die TS2000i Syntax hab ich mal in {} dazugeschrieben
{*********************}
var: size(1), negtrade(1);
{*** Moneymanagement ***} if positionprofit(1)>0 then negtrade=0; if positionprofit(1)<0 then negtrade=1; if negtrade=0 then begin if netprofit>5000 then size=4; if netprofit>35000 then size=5; end; if negtrade=1 then size=1; {***}
{Einstieg} If Close <= close[3] then Buy size contracts next bar at high stop; If Close >= Close[3] then sellshort {TS 2000i -> sell}size contracts next bar at low stop;
{Ausstieg} if marketposition<>0 then begin sell {TS2000i -> exitlong}size contracts this bar on close; buytocover {TS2000i ->exitshort}size contracts this bar on close; end; setstoploss(700*size);
{*********************}
Das was mir Kopfzerbrechen bereitet ist ja einfach die Tatsache, dass es eine zeitlang genau wie gewollt funktioniert und dann kommen die Fehler
Ciao
Ralf
|
|
12.12.2001, 17:10 |
|
_Ralf
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 56
|
|
Hallo,
ich hab das Problem jetzt näher eingekreist:
1. der Fehler zeigt sich nur dann, wenn am darauffolgenden Tag auch wieder ein Tradingsignal vorliegt 2. und die offene Position erst zum close geschlossen wird.
D.h. für mich die Order wurde schon generiert und vor der Orderausführung wird das Signal nicht mehr abgearbeitet.
Im Umkehrschluss heißt das, dass es in Tradestation auf Tagesdaten ohne eine Nextopen.dll wohl nicht ohne den Effekt zu realisieren ist.
Trotzdem Danke für die Hilfe...
Ciao
Ralf
|
|
12.12.2001, 18:10 |
|
_Uwe
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 313
|
|
RE: An Klaus Eckhoff / Uwe | |
Mit positionprofit(1) fragst Du nach dem Gewinn der letzten abgeschlossen Position!
Im Fall einer offenen Position überprüfst Du den aufgelaufenden Verlust/Gewinn nicht. Daher funktioniert dein MM-Stop, welches ja die Position schließt und beim nächtsen Durchgang vor neuer Ordermöglichkeit, den Gewinn/Verlust der zuvor geschlossenen Position überprüft.
Die Size beim Einstieg richtet sich also nach der letzten geschlossenen Position, wird sie also gedreht, so gilt z.B.: aktuell Long (offen), vorhreige Position (1) wurde mit Gewinn abgeschlossen -> size > 1; z.B. 5, sell-Bedingung erfüllt: -> sell-Order mit Size=5, egal ob diese Position im Gewinn oder Verlust geschlossen hat. nach Ausführung wird PositionProfit(1) den Gewinn-/Verlust der eben geschschlossenen Longposition enthalten, da ist jedoch die Size aber bereits als Order "heraus".
Hier ein Versuch aus dem Stehgreif (nicht getestet):
var: size(1), negtrade(1), OpenProfit(0);
{*** Moneymanagement ***} if marketposition = 0 then begin if positionprofit(1)>0 then negtrade=0; if positionprofit(1)<0 then negtrade=1; end else begin OpenProfit=marketposition*((close-EntryPrice)*BigPoint)-(Commission+Slippage); {beachte: mit marketposition (+/-1) als Faktor, wird die Spanne des aktuellen Kursverlaufes seit Einstieg in der Gewinnrichtung bestimmt}
if OpenProfit>0 then negtrade=0; if OpenProfit<0 then negtrade=1; end; {ACHTUNG: GLEICH NULL wird hier unberücksicht gelassen}
if negtrade=0 then begin if netprofit>5000 then size=4; if netprofit>35000 then size=5; end; if negtrade=1 then size=1; {***}
|
|
12.12.2001, 19:10 |
|
_Uwe
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 313
|
|
Habe meinen Beitrag offline mit zeitlicher Unterbrechung geschrieben, daher habe ich Deine erfolgsmeldung nicht gesehen. Genau auf den von Dir beschrieben Umstand, wollte ich in meinem vorherigen Beitrag (17:51)hinweisen und habe versucht, im Beitrag um 19:03 Dir vielleicht eine Lösungsrichtung aufzuzeigen.
Viel Erfolg weiterhin Uwe
|
|
12.12.2001, 19:10 |
|
_Ralf
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 56
|
|
|
13.12.2001, 10:10 |
|
|