Geschrieben von _Uwe am 18.11.2000, 19:10:
RE: Gap programmieren
Hallo Sascha!
Syntaxsmäßig ist die verwendung von nextopen ohne vorherige Variabilendefinition nicht möglich, da nextopen kein Schlüsselwort (hier also vordefinierte Variable wie open, high,....) ist.
Des weitern ist der Gedanke, daß das Programm das Nextopen zum zeitpunkt seiner Berechnung an dem heutigen Bar kennt etwas fantatisches, das man sich zu nutze machen sollte ;-)
Doch leider kann die Formulierung Deines Gedankens nur so formuliert werden: Wenn das nächste Bar höher eröffnet als das heutige Hoch, dann kaufe die Eröffnung + Offset als Stop-Order oder eben in Esay-Logik : wenn das Open des aktuellen Bars größer ist als das Vorbarhoch, dann plaziere die Kauf-Stoporder.
inputs:breakout(.1);
if open > high[1] then buy at open + breakout * average(truerange,3) stop; exitlong at close;
Dieser Syntax ist zwar richtig, doch leider gestattet Easy-Language bei Stop- und Limitorder die Ausführung nur für den nächsten Bar. Da close aber im realtime-Modus auch den aktuellen Wert beschreibt, ist die exitlogik nur für historische Tests geeignet.
Somit muß eine market-order geschrieben werden:
if open > high[1] then if close=>open+ breakout * average(truerange,3) then buy at market;
if BarsSinceEntry=1 then exit close;
Vielleicht war es eine Hilfe Gruß Uwe
|