Autor |
|
_lassem
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 11
|
|
|
17.12.2001, 18:10 |
|
_Steffen
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 14
|
|
|
17.12.2001, 19:10 |
|
_Helmut
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 11
|
|
|
17.12.2001, 20:10 |
|
_Helmut
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 11
|
|
|
18.12.2001, 12:10 |
|
_Uwe
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 313
|
|
RE: Problem: Buy next Bar on High + 1 stop; | |
lassen: Wenn die Kaufbedingungen erfüllt sind, soll on stop gekauft werden, wenn das High übertradet wird. Aber eben nicht nur das aktuelle high, sondern - falls vorher kein Stab übertradet wird - das high eines der nächsten zB 5 Stäbe. ...
Deine Problemstellung, so wie ich sie verstanden habe, wäre wie folgt umzusetzen:
inputs: ..., validXBars(5), .... vars: ..., BarsSinceCond(-1), HighAtCond(0), ...
{Überprüfung ob Marktposition verändert} if marketposition<>marketposition(1) then BarsSinceCond=-1; ... if Kaufbedingung and BarsSinceCond<0 then begin BarsSinceCond = 0; HighAtCond = High; end;
if BarsSinceCond > -1 then begin BarsSinceCond = BarsSinceCond+1; if BarsSinceCond > validXBars then BarsSinceCond = -1; end;
if BarsSinceCond > 0 then buy("NextHigh") at HighAtCond + 1 stop;
Leider komme ich mit der nachfolgenden Formulierung dann doch nicht klar, wenn Du schreibst:
lassen: Bei obiger Bedingung erfolgt kein Trade, wenn exakt der NÄCHSTE STAB nicht übertradet wird. ...
Dies steht doch im Gegensatz zu Deiner obigen Forderung, wonach auch mögliche Nachfolgebars in die Wertung einzubeziehen sind. Habe ich da etwas falsch verstanden?
Gruß Uwe
|
|
19.12.2001, 10:10 |
|
_lassem
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 11
|
|
|
19.12.2001, 11:10 |
|
_lassem
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 11
|
|
|
19.12.2001, 11:10 |
|
_lassem
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 11
|
|
|
19.12.2001, 11:10 |
|
_Uwe
Administrator
Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 313
|
|
RE: Problem: Jetzt hab auch ich es begriffen, ... | |
... da ich anfänglich die fragliche Formulierung zur Aufgabenstellung gehörig gesehen hatte und nicht als Problembeschreibung verstand.
Dabei fällt mir ein, dass die von mir dargestellten EL-Fragmente sich auf eine Kaufbedingung bezieht, die während der beobachteten Bars der Folgetage nach dem ersten Auftreten eingehalten bleiben muss, da der IF-Block als Einstieg eine AND-Logik zweier Bedingungen enthält.
Dies ist z.B. der Fall, wenn ich nur die Order generieren möchte, wenn z.B. der kürzere Durchschnitt über dem längeren liegen soll. Wird als Kaufbedingung aber z.B. das Eintreten eines Schnittpunkt bestimmt, so ist dieses Ereignis durch eine zusätzliche Variable zu merken, da ja für die nächsten Bars diese spezielle Kaufbedingung nicht mehr vorliegt.
Zu beachten ist ferner, dass Du Deine Logik so strukturierst, dass auch der Zweig abgedeckt wird, der entsteht, wenn die Kaufbedingung eingetreten ist, sie z.B. beim zweiten Folgebar nicht erfüllt ist, dann jedoch erneut beim dritten Folgebar wieder eintritt. Im vorliegendem Fall würde dieses Ereignis als solches nicht bemerkt, wenn nicht gerade eine Order ausgeführt wird.
Mit if Kaufbedingung=false or marketposition<>Marketposition(1) then BarsSinceCond = -1, würdest Du die erneute Initialisierung der Variablen BarsSinceCond erwirken.
Daher muss natürlich meine Programm-Ideenskizze, nicht die Gesamtlösung Deines Problems bedeuten, denn dazu und über die effektivste Umsetzung, muss man immer die Gesamtlogik übersehen können.
Gruß Uwe
|
|
19.12.2001, 13:10 |
|
|