Dienstag, 16. April 2024, 06:26 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Marek246

unregistriert

1

Sonntag, 28. Dezember 2008, 17:31

Probleme mit Short- und Longaustiegen

Hallo Allerseits,



habe Probleme mit Austiegssignalen, die teilwese unpassend(zu früh) ausgeführt werden.





Beschreibung(Dax-System auf End of Day-Basis):

Das System geht sofort long, wenn „LE“ nach oben durch das High geschnitten wird und

sofort short wenn „SE“ durch Low nach unten geschnitten wird.

Als zusätzliche Ausstiegslevel aus einer Longposition gilt: wenn das aktuelle Tief < als Tief vor 15 Perodien ist, dann schließe die Position zum nächsten Eröffnungskurs.

Als zusätzliche Ausstiegslevel aus einer Shortposition gilt: wenn das aktuelle Hoch > als das Hoch vor 7 Perioden ist, dann schließe die Position zum nächsten Eröffnungskurs.

Problem: Manchmal kommt es zu Überschneidungen.

Bsp.: das System ist seit mehreren Tagen short und der Dax steigt über „LE“ und löst somit eine sofortige Long-Order aus. Wenn aber am demselben Tag die zusätzliche Bedingung für einen Ausstieg aus der Shortposition auftritt „high > Ref(high,[-7,-15,-1,-15,-1,1,1.1317])“ wird diese am gleichen Tag rückwirkend zum open ausgeführt statt verzögert(siehe exit short: delay:1) und dann die Longorder zum „LE“

Wie kann ich dieses Problem umgehen oder die Exitbasis wählen?

Wenn das System short ist und am selben Tag die Longregel und der zusätzliche Ausstiegslevel aus einer Shortposition auftretten sollte das System dann diese Order nur zum „LE“ –Kurs ausführen. Ansonsten wenn nur die zusätzliche Ausstiegslevel aus einer Shortposition auftritt sollte die Position zum open mit delay: 1 geschlossen werden

Wie kann man das programmieren?

Regeln:
Enter long: Cross(High, LE, 1) = 1
Exit long: low < Ref(low,[-15,-15,-1,-15,-1,1,5.8641,])
Enter short: Cross(low, SE, 1) = -1
Exit short: high > Ref(high,[-7,-15,-1,-15,-1,1,1.1317])

Enter-Basis
Long: MAX(LE, open)
Short: MIN(SE,open)
Delay: 0

Exit-Basis
Long: open
Short: open
Delay: 1Definitionen:global calc LE:Resist(High,0.15 ,0.07, %);
global calc SE: Support(Low,0.15,0.07, %);





Vielen Dank


Markus

Registrierungsdatum: 4. September 2007

Beiträge: 311

Wohnort: Stuttgart

2

Montag, 29. Dezember 2008, 16:09

Hi Markus,

als erstes mal die Überlegung ob Du Deine Definition nicht ins Ref stellst. Ich bin der Meinung das sich die Support und Resist-Marken beim aktuellen Balken bewegen und so unter Umständen bei einer starken Bewegung, wo der Balken die Linie voran treibt erst beim Close ein Signal kommen könnte. Nur mal so ne Überlegung um evt. Fehler auszumerzen.

Dann beisst sich meiner Meinung nach etwas. Du gehst Realtime bei LE oder SE sofort in den Markt aber willst erst zum Open des nächsten Balkens raus. Normal müsstest Du dann auch Realtime raus wenn Du Long bist und entweder ein Short Signal kommt oder das Low Periode 7 unterschritten wird. Denn Du schreibst das die Order rückwirkend ausgeführt wird anstatt verzögert. Das rückwirkend ist natürlich ein Fehler aber das verzögert macht ja auch keinen Sinn. Diese Order muss auch sofort ausgeführt werden wie die Entrys auch.

Dann hast Du als Regel: Exit long: low < Ref(low,[-15,-15,-1,-15,-1,1,5.8641,]) Das ist das Tief VOR 15 Perioden. Dieses Tief kann aber höher sein als Deine LE Line. Bedeutet Du gehst Long und sofort wieder raus. Wenn Du das tiefste Tief der letzten 15 Perioden willst musst Du mit Lowest Low arbeiten. Einfach mal Deine Exit-Long Regel als Formel in Deinen Chart legen dann siehst Du was ich meine.

Ich würde zuerst mal an diesen Punkten arbeiten bevor Du weiter machst. Denn das mit Exit Open rückwirkend kann man dann evt. durch andere Formeln beheben oder durch Stops. Oder indem Du unter Exit-Long z.B. folgendes eingibst:

Quellcode

1
low < Ref(low,[-15,-15,-1,-15,-1,1,5.8641,]) or low < SE
Aber das würde ich erst probieren wenn die, meiner Meinung nach, Logikfehler behoben sind.
Grüße aus dem Schwabenland
Arend

Marek246

unregistriert

3

Dienstag, 30. Dezember 2008, 13:27

Hallo Arend,

die Logis die dahinten steckt ist beabsichtig. In übergeordnetem Abwärtstrend werden Longsignale am nächsten Tag zum open geschlossen(bis der Trend neutralisiert oder gebrochen wird), wenn die Exitregel (low < Ref(low,[-15,-15,-1,-15,-1,1,5.8641,])) greift.

Mein Problem: ist es möglich einerseits zum open des nächsten Tages(exit mit delay= 1) auszusteigen, wenn die Exitregel (ihre Bedingung) erfüllt ist, aber andererseits falls ein Signalwechsel von short auf long LE auftritt diese nicht zum open des gleichen Tages(sonst wäre das ein eine Fehlberechnung) sondern auch zum LE-Kurs ausführt?

Ist es möglich diese unterschiedliche Art des Ausstiegs irgendwie umzusetzen(ein Mal zum open mit delay=1 und das zweite mal zum LE falls man short positioniert ist und der exit und ein Entry am gleichen Tag erfolgen)?



Viele Grüße aus Baden-Baden

Markus

Registrierungsdatum: 4. September 2007

Beiträge: 311

Wohnort: Stuttgart

4

Dienstag, 30. Dezember 2008, 15:44

Hallo,

hm, läuchtet mir zwar nicht ganz ein wieso Du auf ein Exit wartest aber das Problem erkenne ich. Das ist wirklich ein Problem, so wie Du es beschrieben hast.
Wenn man Long ist und die Ref-low7 wird unterschritten aber nicht die Support-Line steigt er zum open 1 aus. Problem ist wenn Gleichzeitig beide Linien unterschritten werden. Dann geht er zum aktuellen Open raus, den es gar nicht mehr gibt und am Support Short.

Also so auf die schnelle fällt mir da leider jetzt auch keine Lösung ein. Habe es auch mal mit Schalter versucht um mir die Situtation zu merken aber bisher auch ohne Erfolg. Vielleicht gibt es hier jemdanden der schon ein ähnliches Problem hatte.
Grüße aus dem Schwabenland
Arend

Marek246

unregistriert

5

Dienstag, 30. Dezember 2008, 16:38

Hallo,

vielen Dank für schnelle Hilfe. Vielleicht kann man so einen unterschiedlichen Ausstieg nicht programmieren.
Aber vielleicht hat jemand doch einen Rat. Ich würde mich über eine Lösung freuen.

Viele Grüße und einen guten Rutsch ins 2009

Markus

Registrierungsdatum: 4. September 2007

Beiträge: 311

Wohnort: Stuttgart

6

Dienstag, 30. Dezember 2008, 16:46

Also ich kann mir nicht vorstellen das es nicht geht, auch wenns verzwickt ist.

Zu Programmieren wäre, um es mal kürzer auszudrücken:

- Wenn das Tief kleiner als das Low 7 ist, aber das Tief höher bleibt als die Support-Line - dann Exit Open 1 (bei Long)
- Wenn das Tief kleiner als das Low 7 ist und das Tief auch kleiner als die Support-Line - dann sofortiges Drehen der Position in Short (bei Long)

...und das wenn es in einem Balken vorkommt.

So habe ich es doch richtig verstanden, oder?
Grüße aus dem Schwabenland
Arend

Marek246

unregistriert

7

Dienstag, 30. Dezember 2008, 17:13



Ja, so wäre es richtig.

wenn nur ein Exit-signal vorliegt, dann zum open mit delay = 1 raus. Wenn Exit- und ein Entrysignal am gleichen Tag gleichzeitig vorliegen, sollte die Position je nach Signal zum LE(Longeinstieg) oder zum SE(Shorteinstieg) sofort gedreht werden.

Meine bisherige Regeln:
Enter long: Cross(High, LE, 1) = 1
Exit long: low < Ref(low,[-15,-15,-1,-15,-1,1,5.8641,])
Enter short: Cross(low, SE, 1) = -1
Exit short: high > Ref(high,[-7,-15,-1,-15,-1,1,1.1317])

Enter-Basis
Long: MAX(LE, open)
Short: MIN(SE,open)
Delay: 0

Exit-Basis
Long: open
Short: open
Delay: 1

Definitionen:global calc LE:Resist(High,0.15 ,0.07, %);
global calc SE: Support(Low,0.15,0.07, %);