Geschrieben von Uwe am 21.12.2002, 01:25:
Zitat: Original von gandalf
...
nur noch ein kleines Problem:
wenn das System z.b. das ein short entry um 11:30 uhr generiert, und es wird 12 uhr und ich bin noch short mit diesem signal, die ganze Strategie ist nicht mehr aktiv, weil ja das definiert wurde: "If time<=1200 then..." nach 12:00 passiert dann nix mehr, und die um 11:30 eröffnete Position schliesst dann erst am Abend bzw. am nächsten Tag. Ist es glaubst du möglich, dass das von der Strategie generierte Signal um 11:30 auch nach 12 uhr erst geschlossen wird, aber eben ab 12 uhr kein neues Signal mehr erzeugt wird ?
....
Hallo Gandalf!
Genau deswegen hatte ich Dir die Varianten so allgemein wie möglich gehalten, denn natürlich hast Du recht, dass die Strategy natürlich auch nach 1200 noch seine offne Position überwachen muß können.
Da Du keine näheren Angaben zur Art Deiner Sinale machst, vermute ich, dass Du eine "Drehsystem" gebaut hast, das seine Positionierung durch die Gegenposition oder am Tagesende wechselt bze. glattstellt. In diesem Fall mußt Du jeweils eine weitere Bedingung für die EXIT Singnale einbauen, die natürlich dann nicht in dem IF-Block geklammert werden dürfen.
Beispiel: Kaufe wennn Close > MA(Close,35); Verkaufe wenn Close < MA(Close,35)
vars: MA(0), buyCond(false), sellCond(false)
MA=Average(Close,35);
buyCond=Close > MA and MarketPosition < 1;
sellCond=Close < MA and MarketPosition > -1;
if time <= 1200 then
begin
if buyCond then buy at market;
if sellCond then sell at market;
end
else
begin
{....Hier nun der Block, der nach 1200 ausgeführt wird....}
if MarketPosition = 1 and SellCond then EXITLONG;
if MarketPosition = -1 and buyCond then EXITSHORT;
end;
Hoffe, dass an dem Beispiel, das nicht auf Lauffähigkeit gestestet ist, der Grundgedanke der Vorgehensweise herauszulesen ist und Du es für Deinen Fall umsetzen kannst. Ansonsten einfach bitte noch Mal fragen.
Gruß,
Uwe
|