Blog

Stop- und Limit Handelssysteme in Investox

von Anke Sacharow

Seit Einführung der Investox Version 6 können Handelssysteme mit Stop- oder Limit-Einstiegen einfacher gebacktestet und ohne Umstellungen direkt mit dem Ordermodul getradet werden. 

Wir vergleichen in diesem Artikel die bis zur V5 vorzunehmenden Einstellungen für Stop- und Limit-Systeme mit den neuen Möglichkeiten der V6.

Dazu wird zunächst ein einfaches Handelssystem für den Bund-Future mit den folgenden Regeln konstruiert:

  • Long-Einstiege erfolgen, wenn der Aroon-Up-Indikator über dem Aroon Down-Indikator liegt.
  • Short-Einstiege erfolgen, wenn der Aroon Up-Indikator unter dem Aroon-Down Indikator liegt.
  • Die Periodenlänge der Aroon-Indikatoren soll optimierbar sein.

In den Definitionsbereich des Handelssystems stehen dafür folgende Formeln:

global const Perioden: [Perioden:34,2,50,2,50,1,0.4785,I];
global calc Enter_Long: Ref(AroonUp(close,Perioden)>AroonDown(close,perioden),-1);
global calc Enter_Short: Ref(AroonUp(close,Perioden)<AroonDown(close,perioden),-1);

 

Stoporder Limitorder in Handelssystemen

 

Direkt in die Handelsregeln steht  Enter_Long bzw. Enter_Short.

 

Zuerst soll das Einstoppen in Trades für Investox-Versionen bis V5 programmiert werden.

 

Long-Trades sollen nur eröffnet werden wenn:

  •  die Aroon-Long Bedingung zutrifft und außerdem der Kurs X % über seinem 19-Tage Hoch notiert

Short-Trades werden nur eröffnet wenn

  •  die Aroon-Short-Bedingung zutreffen und außerdem der Kurs X % unter sein 19-Tage Tief notiert.

Für die X-% wird zuerst eine weitere Optimierungsvariable im Definitionsbereich gesetzt:

global const Prozentsatz: [Prozent:0.1,0.1,1,0.1,1,0.1,2.2853,];

Das 19-Tage Hoch wird danach wie folgt definiert:

global calc LL:Ref(HHV(high,[19,2,20,2,30,1,1.3579,I]),-1);

Stoporder Limitorder in Handelssystemen

Zum 19-Tage Hoch wird dann noch der ermittelte Prozentsatz addiert, um das Einstop-Level für Long-Trades zu errechnen:

global calc EL: LL*Prozentsatz/100+LL;

Stoporder Limitorder in Handelssystemen

Analog wird auch das 19-Tage-Tief ermittelt:

global calc SL: Ref(LLV(low, [19,2,20,2,30,1,1.1996,I]),-1);

Vom 19-Tage Tief wird der ermittelte Prozentsatz subtrahiert, um das Einstop-Level für Short-Trades zu errechnen:

global calc Es: SL-SL*Prozentsatz/100;

Stoporder Limitorder in Handelssystemen

Wenn in die Trades eingestoppt wird, erfolgt ein Markteinstieg für Long-Trades wenn der Kurs über das Einstopp-Level steigt. Für Short-Trades muss der Kurs unter das Einstopp-Level fallen. 

Aus diesem Grund werden Enter_Long und Enter-Short-Regel wie folgt ergänzt:

global calc Enter_Long: Ref(AroonUp(close,Perioden)>AroonDown(close,perioden),-1) and high > EL;
global calc Enter_Short: Ref(AroonUp(close,Perioden)<AroonDown(close,perioden),-1) and low < ES;

Stoporder Limitorder in Handelssystemen

Die Handelsregeln passen bereits - jetzt müssen abschließend nur noch Enter- und Exit-Basis festgelegt werden.

Im Normalfall entspricht die Enter-Basis für Stop-Handelssysteme genau dem Stop-Limit - d.h. sie liegt für unser Beispiel bei EL für Long-Trades und bei ES für Short-Trades. Ausnahmen entstehen immer dann, wenn auf der Long-Seite bereits der Eröffnungskurs über dem Wert der Variablen EL liegt bzw. wenn auf der Short-Seite bereits der Eröffnungskurs unter der Variablen ES liegt.

In diesem Fall werden bereits durch den Open-Kurs die zusätzlichen Handelsregeln:

high > EL bzw.

low < ES

erfüllt.

Ein Markteinstieg zu den günstigeren Stopleveln EL bzw. ES wäre aber nur möglich, wenn der Kurs noch einmal auf das Level EL fällt (long) bzw. auf das Level ES steigt (short).

Weil nicht sicher ist, ob das passiert, erfolgt für eine korrekte Abrechnung im Backtest der Markteinstieg zum Eröffnungskurs der Einstiegskerze (open), wenn dieser

  • bereits über dem Stoplevel für Long Trades liegt oder
  • bereits unter dem Stoplevel für Short Trades liegt

In der Investox-Formelsprache liefert Max(Wert1, Wert2) den jeweils höheren Wert der beiden Werte Wert1 und Wert2 als Ergebnis, Min(Wert1,Wert2) liefert den kleineren der beiden Werte als Ergebnis.

Für die passende Einstiegsbasis bedeutet dies, dass sie für Long-Trades lautet:

Max(open,EL) und für Short-Trades Min(open,ES).

Die Enter-Long-Basis ist identisch mit der Exit-Short-Basis und die Enter-Short-Basis ist identisch mit der Exit-Long Basis.

Die Delay ist jeweils 0.

 

Stoporder Limitorder in Handelssystemen

 

Das Stop-Entry-System für die Investox Versionen bis zur V5 ist fertig programmiert. Das identische System soll jetzt einfacher mit den neuen Möglichkeiten der V6 dargestellt werden. 

Die V6 enthält in den Handelssystem-Einstellungen, Registrierkarte "Position" direkt neben der Delay ein kleines Auswahlfeld für die Ordertypen. Möglich sind dort folgende 3 Einstellungen:

  •  Market (entspricht Einstellungen bis zur V5)
  •  Limit
  •  Stop

In den Einstelldialog gelangt man, wenn man direkt auf das Auswahlfeld klickt.

Für unser Stop-System wählen wir im Einstelldialog die Option:

  • "Stop-Order- die Basis definiert das Stop-Level".

In den Optionen wird aktiviert:

  • neues Entry/Exit  setzt neues Limit 
  • Ende des Setups streicht Order
  • Stop-Verlauf im Chart anzeigen

Stoporder Limitorder in Handelssystemen

 

Ein gravierender Unterschied zwischen der V5 und der V6 ist, dass in der Einstiegsbasis nicht mehr der Vergleich zwischen Stop/Limiten und Open-Kurs vorgenommen werden muss. Bereits durch die Auswahl der Ordertypen "Stop" oder "Limit" in der V6 wird Investox angewiesen, den Open-Vergleich automatisch vorzunehmen.

Die passende Einstiegsbasis entspricht somit in der V6 immer dem Einstiegsstop bzw. dem Limit. Für unser Beispiel lauten deshalb V6- Enter-Basen: 

Stoporder Limitorder in Handelssystemen  

Neben dem Open-Vergleich in Enter- bzw. Exit-Basis entfällt außerdem auch direkt in den Handelsregeln der Zusatz, dass der High-Kurs über das Level EL steigen muss (long) bzw. unter das Level ES fallen muss (short).

Auch diese Information erhält Investox ab der V6 allein durch die Auswahl der passenden Ordertypen.

 

Stoporder Limitorder in Handelssystemen

Zusätzlich zur Anzeige im Chart werden die aktiven Stop-Limite in der V6 außerdem sehr übersichtlich in der Signalleiste des Handelssystems angezeigt. 

Stoporder Limitorder in Handelssystemen

Analog zu den Stop-Einstiegen lassen sich Limit-Einstiege in der V5 bzw. V6 realisieren.

Wir benützen wieder das Aroon-Handelssystem als Basis.

Diesmal sollen Long-Einstiege aber mit einem Limit von 1 % unter dem X-Tages Tief erfolgen.

Short-Einstiege erfolgen mit Limit von 1 % über dem X-Tages Hoch.

Die Handelsregeln im Definitionsbereich des V5-Handelssystems werden dafür wie folgt abgeändert:

Stoporder Limitorder in Handelssystemen

Die passenden V5-Einstiegsbasen lauten:

Stoporder Limitorder in Handelssystemen

Ab der V6 entfällt durch die Auswahl des Ordertyps "Limit" wieder der Open-Vergleich in der Registrierkarte "Position" des Handelssystems und im Definitionsbereich des Handelssystems müssen die Limit-Regeln auch nicht mehr für die Enter_Long und Enter_Short-Bedingungen angegeben werden.

Stoporder Limitorder in Handelssystemen

 

Stoporder Limitorder in Handelssystemen

Auch die aktiven Limite werden wieder übersichtlich im Chart und in der Signalleiste angezeigt.

Stoporder Limitorder in Handelssystemen

Stoporder Limitorder in Handelssystemen

 

Die V6-Projektdatei mit den beschriebenen  Stop- und Limit-Systemen für die V5 und V6 stellen wir hier zum Download bereit. 

Download gegen Mailadresse

Projektdatei zu Stop und Limit-Handelssystemen in Investox

 

abstand

Stop_Limit_Systeme.Inv (206 KB)

Download - Blog Artikel als *.pdf

20110817_Stop_Limit_Systeme.pdf (784,3 KiB)

Zurück