Donnerstag, 18. April 2024, 09:19 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

hajo

Meister

Registrierungsdatum: 20. Oktober 2002

Beiträge: 553

1

Mittwoch, 30. April 2008, 14:50

Kombination von HS-Positionen

Hallo Investox'ler !

Ich habe bereits im Forum gesucht, aber ohne Ergebnis.

Mein Problem:
Ich habe 5 HS und möchte deren Signale in einem neuen HS benutzen.

Die Logik sollte sein:
EnterLong wenn (mindestens) 3 HS Long sind, also
#_Position HS_A# + #_Position HS_B# + #_Position HS_C# + #_Position HS_D# + #_Position HS_E# muß = 3 ergeben , tut es aber mit dieser Regel nicht. Undeutlich ist mir, ob bzw. warum #_Pos .....# nicht jeweils den Wert 1 oder 0 liefert.

Gleichfalls sollen dieselben HS die das EnterLong-Signal geliefert haben auch zusammen das ExitLong-Signal liefern.

Dank im Voraus.


Gruß,
hajo

Yoggi

unregistriert

2

Mittwoch, 30. April 2008, 16:10

Hallo Hajo,

ich hatte auch mal damit Probleme, weil meine Ursprungssysteme alle mit Sofortstops waren und daher nie den Wert 1 lieferten. Hier ein Auszug aus der Onlinehilfe:
Hinweise zum Zugriff auf Positionen
Der Zugriff auf Positionen anderer Handelssysteme erfolgt ganz analog zum Zugriff auf deren Kapitalkurve mit Hilfe des Schlüsselworts #_Position#. Sie erhalten damit die Positionen eines Handelssystems als Datenreihe mit folgender Kodierung:
1 = Longposition
0,5 = Longposition, die durch einen Sofortstop geschlossen wurde
0 = Out
-0,5 = Shortposition, die durch einen Sofortstop geschlossen wurde
-1 = Shortposition
Beachten Sie hierbei die Auswirkung des in den Testbedingungen angegebenen Delays des Handelssystems. Wenn Sie dort ein Delay von 1 definiert haben, erscheinen die Positionen eine Periode nach Auftreten des betreffenden Signals (ganz so, wie wenn Sie das Handelssystem im Chart anzeigen lassen). Sie erhalten mit #_Position# also nicht die Signale des Handelssystems, sondern die eingegangenen Positionen.


Hast Du daran gedacht, bei Definitionen
calc a: #_Position HS_A#;
zu schreiben? Ich würde dann noch unter Definitionen calc Summe: #_Position HS_A# + #_Position HS_B# + #_Position HS_C# + #_Position HS_D# + #_Position HS_E#;
und unter Enter Long
Summe>2

Hoffe, dass Dir damit geholfen ist.
Alles Gute
Yoggi

hajo

Meister

Registrierungsdatum: 20. Oktober 2002

Beiträge: 553

3

Mittwoch, 30. April 2008, 18:21

Hier ein Auszug aus der Onlinehilfe:
Hinweise zum Zugriff auf Positionen
Der Zugriff auf Positionen anderer Handelssysteme erfolgt ganz analog zum Zugriff auf deren Kapitalkurve mit Hilfe des Schlüsselworts #_Position#. Sie erhalten damit die Positionen eines Handelssystems als Datenreihe mit folgender Kodierung:
1 = Longposition
0,5 = Longposition, die durch einen Sofortstop geschlossen wurde
0 = Out
-0,5 = Shortposition, die durch einen Sofortstop geschlossen wurde
-1 = Shortposition
Beachten Sie hierbei die Auswirkung des in den Testbedingungen angegebenen Delays des Handelssystems. Wenn Sie dort ein Delay von 1 definiert haben, erscheinen die Positionen eine Periode nach Auftreten des betreffenden Signals (ganz so, wie wenn Sie das Handelssystem im Chart anzeigen lassen). Sie erhalten mit #_Position# also nicht die Signale des Handelssystems, sondern die eingegangenen Positionen.




Hallo Yoggi ,

besten Dank für die Antwort, die mich schon wesentlich auf den richtigen Weg gebracht hat. Ich hatte im "Index " der "Online-Hilfe" unter "#_Position# " gesucht, aber nicht Obiges gefunden. Ist aber auch nicht weiter relevant, da Dein Auszug genau mein erstes Problem löst.

In meinem obigen Beitrag hatte ich -der Einfachheit halber- EnterLong geschrieben, tatsächlich aber handelt es sich bei meinen HS um Short-Systeme. Demzufolge hatte ich alle Versuche auch in den Shortbedingungen geschrieben und dabei die Besonderheit des Wertes von -1 für eine Shortposition natürlich nicht berücksichtigt, sondern alles mit den Werten 1 und 0 versucht.
Mit obiger Info klappt das nun.

Deinen Vorschlag, um die Berechnungen unter Definitionen zu tun hatte ich bereits durchgeführt.

Darf ich nun noch meine zweite Frage stellen ?
"... dieselben HS die das EnterShort-Signal geliefert haben sollen nun auch zusammen das ExitShort-Signal liefern."

Hier stehe ich noch im Dunkeln. Habe bereits einiges mit "Schalter" versucht, aber ohne Erfolg.

Nochmals Dank und Gruß,

hajo

P.S.: Habe nun in der Hilfe im Index unter "Position" die Beschreibung gefunden.

Yoggi

unregistriert

4

Mittwoch, 30. April 2008, 18:50

Hallo hajo,

kannst Du nochmal erklären, wie die Systeme das ExitShort Signal generieren sollen? Wenn alle drei auf Long gehen, oder wenn nur eines von den dreien nicht mehr auf Short steht?
Ich hätte es wieder mit der Summe versucht und etwa geschrieben Summe >-3 (dann ist mindestens 1 HS nicht mehr short).
Aber vielleicht willst Du etwas anderes erreichen?
Alles Gute
Yoggi

hajo

Meister

Registrierungsdatum: 20. Oktober 2002

Beiträge: 553

5

Mittwoch, 30. April 2008, 19:17

Hallo Yoggi ,

Danke für Dein Mitdenken.

Es handelt sich NUR um Short-HS (hat also nichts mit Long zu tun).

Das Kombi-HS (es ist ein Short-HS) soll also EnterShort gehen wenn von den 5-Short-HS drei HS = Positionen "short" sind. Welche drei HS das sind ist zuerst egal, weiß ich aber auch nicht.

Nun sollen aber genau diese 3 Short-Positionen, die das EnterShort-Signal für das Kombi-HS geliefert haben, auch zusammen das ExitShort-Signal für das Kombi-Hs liefern. Das heißt, daß diese 3 HS wohl zu unterschiedlichen Perioden selbst ExitShort sind, das Exit-Short Signal für das Kombi-HS aber erst geliefert wird wenn alle 3 HS Exit sind. Es soll also nicht die Summe (- 3) von allen 5-Short-HS sein.

Beispiel: Pos_A + Pos_C + Pos_D liefern das EnterShort-Signal für das Kombi-HS, so müssen auch wieder Pos_A + Pos_C + Pos_D das ExitShort-Signal für das Kombi-HS liefern.

Ich hoffe es verständlich beschrieben zu haben.

Gruß,
hajo

Yoggi

unregistriert

6

Mittwoch, 30. April 2008, 19:59

Hallo hajo,

da muss ich erstmal passen. Momentan habe ich da keine Idee zu, da müssen die etwas mehr Bewanderten ran ...
Alles Gute
Yoggi

Seebär

unregistriert

7

Mittwoch, 30. April 2008, 20:56

Hallo hajo,

ich glaube das ist nur mittels eines Anwenderstops möglich. Hier könnte man doch abfragen welche HSe zum Trade-Startzeitpunkt (Tradeperiods) auf einem Shortsignal (also -1) waren.
Und dann könnte man mit If-Bedingungen die Exitformel erstellen. Ist nur so ne Idee.

Schöne Grüße
Sebastian

Hans-Jürgen Männlich

Administrator

Registrierungsdatum: 10. Juli 2002

Beiträge: 1 712

8

Donnerstag, 1. Mai 2008, 09:40

@Hajo:

ich würde es so machen:

calc Pos_1: #_Position HS_1#;
calc Pos_2: #_Position HS_2#;
calc Pos_3: #_Position HS_3#;
calc Pos_4: #_Position HS_4#;
calc Pos_4: #_Position HS_5#;


calc ES: {Enter Short]
((Pos_1 = -1) + (Pos_2 = -1) + (Pos_3 = -1) + (Pos_4 = -1) + (Pos_5 = -1)) >= 3 ;


calc ExS: {Exit Short]
Pos_1 > -1 and Pos_2 > -1 and Pos_3 > -1 and Pos_4 > -1 and Pos_5 > -1;


M. E. müsste es so funktionieren. Das HS geht SHORT, wenn 3 oder mehr HS SHORT sind. Exit SHORT kommt erst, wenn keines der HS mehr auf SHORT steht. Das mit dem EXIT entspricht vermutlich nicht ganz deinen Vorstellungen, aber vielleicht geht es ja so schon.
Viele Grüße,
Hans-Jürgen

hajo

Meister

Registrierungsdatum: 20. Oktober 2002

Beiträge: 553

9

Donnerstag, 1. Mai 2008, 10:16

@ Sebastian

Ich werde mal damit experimentieren.


@ Hans-Jürgen

Du kannst anscheinend Gedanken lesen. Das war nämlich derjenige als ich den Beitrag schrieb. So hatte ich es inzwischen mit dem Exit getan.

Nochmals Dank an die Mitdenker.
Wünsche einen schönen Tag.

Gruß,
hajo