Registrierung Kalender FAQ & Boardregeln Suche Mitgliederliste Moderatoren und Administratoren Linkdatenbank Startseite
Tradestation User Group Germany » freie Foren » Posts aus dem alten Userforum » HILFFFE ... Bug oder Denkfehler ? » Hallo Gast [registrieren|anmelden]
« Vorheriges Thema Nächstes Thema » Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Autor
Beitrag
_Ralf
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 56

_Ralf ist offline
  HILFFFE ... Bug oder Denkfehler ?Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Hallo,

ich wollte folgenden Ansatz testen:

- Erhöhe nur die Positionsgröße nach einem Gewinntrade.
- Nach einem Verlusttrade wird der nächste trade nur mit 1 contract getätigt.
- Erhöhe wieder nach einem Gewinntrade....

ELA-Umsetzung:

vars: negtrade(0);

{*** Moneymanagement ***}
if positionprofit(1)>0 then negtrade=0;
if positionprofit(1)<0 then negtrade=1;

if negtrade=0 then begin
if netprofit>25000 then size=4;
if netprofit>35000 then size=5;
end;
if negtrade=1 then size=1;
setstoploss(700*size);

Es funktioniert auch alles richtig bis zum trade 38 und 43 (siehe Bild)

Hab ich einen Denkfehler oder ist das ein TSPro Bug ?

Danke für eure Vorschläge ich bin im Moment ziemlich Ratlos..

Ciao

Ralf

12.12.2001, 09:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Ralf senden Homepage von _Ralf
_Klaus Eckhoff
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 149

_Klaus Eckhoff ist offline
  RE: HILFFFE ... Bug oder Denkfehler ?Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Hallo Ralf,

ist sichergestellt, dass beim Durchlaufen des von Dir geposteten Codes die letzte Position schon geschlossen ist? Falls Du mit mehreren Signalen gleichzeitig arbeitest könnte es nämlich sein, dass das Exit-Signal erst nach dem Entry läuft.

Dies könnte zumindest Trade 38 erklären, weil dann PositionProfit(1) sich noch auf Trade 36 (= Winner) bezieht.

Unter der Voraussetzung, dass am 3.12. gehandelt wurde erklärt dies allerdings noch nicht Trade 43. Da fällt mir erstmal auch nichts zu ein...

MfG

-Klaus

12.12.2001, 10:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Klaus Eckhoff senden Homepage von _Klaus Eckhoff
_Ralf
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 56

_Ralf ist offline
  es wird immer verwirrter...Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Hallo,

mit "setexitonclose" sollten doch eigentlich alle offenen positionen geschlossen sein.

vorher hatte ich folgende Ausstiegsbedingung

if marketposition=1 then sell size contracts this bar on close;
if marketposition=-1 then buytocover size contracts this bar on close;

Zum test habe ich dann die Bedingung durch setexitonclose ersetzt sowohl vor wie auch hinter den Kauf/Verkaufsanweisungen ohne Erfolg trotzdem wird nach einem Verlust bei beiden Bsp. wieder mehr als 1 contract gekauft.

Aber ich mußte auch feststellen das einmal trotz meiner ersten Anweisung doch contracte über Nacht gehalten wurden (siehe trade nr 35 ... was ich mir aber selbst nicht erklären kann)

Wie auch immer setexitonclose hat diesen fehler beseitigt aber ansonsten steh ich weiter wor einem Rätsel

UND was viel schlimmer ist ich habe langsam Zweifel inwieweit ich überhaupt den Ergebnissen des Performance report trauen kann. - wenn man jeden trade nachkontrollieren muß. Ich bin auf dieses Problem ja mehr durch zufall gestoßen, den am Anfang wie gesagt bis trade 37 hat ja alles wie gewollt funktioniert...

BIN FÜR JEDE LÖSUNGMÖGLICHKEIT DANKBAR

Ciao

Ralf

12.12.2001, 11:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Ralf senden Homepage von _Ralf
_Klaus Eckhoff
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 149

_Klaus Eckhoff ist offline
  RE: es wird immer verwirrter...Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Hallo Ralf,

Don t Panic!

Ich kenne leider TSPro (bzw. TS 6) nicht, habe selber nur die TS 2000i. Kenne daher auch keinen "buytocover" Befehl, kannst Du mal kurz schreiben was der macht?

Ansonsten zu Deinem Problem:

1.) SetExitOnClose ist eigentlich nur für Intraday Strategien gedacht. Deine Auswertung sah aber eher nach daily Charts aus?! Was verwendest Du für Charts? Mit was für Orders (Market, Limit oder Stop) gehst Du in den Markt?

2.) Um Positionen zu beenden verwendet man in der TS2000i "ExitLong" bzw. "ExitShort". Ein Sell oder Buy führt dort automatisch zum DREHEN einer Position. Ich vermute stark, dass dies bei der TSPro nicht anders ist, was auch Deinen Trade 35 erklären könnte.

Ich würde Dir empfehlen, mit "MarketPosition" abzufragen, ob nicht noch eine Position besteht. Falls ja (MarketPosition <> 0) solltest Du PositionProfit ohne "(1)" verwenden, dann sollte das eigentlich hinhauen.

-Klaus

12.12.2001, 15:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Klaus Eckhoff senden Homepage von _Klaus Eckhoff
_Uwe
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 313

_Uwe ist offline
  RE: es wird immer verwirrter...Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Vermutlich liegt die "Ungereimtheit" in den "normalen" Ausstiegen (cover) und den Turn-Aktionen begründet, die, da noch keine "Verlustposition" der aktuell offenen Position bestimmt wird, zum Zeitpunkt ihrer Ausführung den davor liegenden Trade auf Gewinn-/Verlust ex (1) prüft und entsprechend reagiert.

Entweder eine besondere "Vorlogik", die den laufenden Gewinn-/Verlustaussicht der noch offen Position prüft und danach die size setzt oder möglich umstrukturierung der Abfragen (Ist nur am Gesamtcode zu erkennen).

Gruß
Uwe

12.12.2001, 16:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Uwe senden Homepage von _Uwe
_Ralf
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 56

_Ralf ist offline
  An Klaus Eckhoff / UweAntwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

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 Profil von Füge  deiner Freunde-Liste hinzu Email an _Ralf senden Homepage von _Ralf
_Ralf
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 56

_Ralf ist offline
  Problem gefunden ...Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

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 Profil von Füge  deiner Freunde-Liste hinzu Email an _Ralf senden Homepage von _Ralf
_Uwe
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 313

_Uwe ist offline
  RE: An Klaus Eckhoff / UweAntwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

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 Profil von Füge  deiner Freunde-Liste hinzu Email an _Uwe senden Homepage von _Uwe
    _Uwe
    Administrator



    Dabei seit: 12 2001
    Herkunft: User altes Forum
    Beiträge: 313

    _Uwe ist offline
      RE: Problem gefunden ...Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

    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 Profil von Füge  deiner Freunde-Liste hinzu Email an _Uwe senden Homepage von _Uwe
    _Ralf
    Administrator



    Dabei seit: 12 2001
    Herkunft: User altes Forum
    Beiträge: 56

    _Ralf ist offline
      Danke für die Hilfe ... o.T.Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

    a

    13.12.2001, 10:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Ralf senden Homepage von _Ralf
      « Vorheriges Thema Nächstes Thema »
    Neues Thema erstellen Antwort erstellen
    Gehe zu:

    Powered by: Burning Board 1.1.1 © 2001 WoltLab GbR