Kursmuster aus Werten
von

Im Analyse Plus Paktet von Investox V6 können Kursmuster auf Basis von Zahlenfolgen definiert werden.

Weil diese Kursmuster nicht mehr zuerst an anderer Stelle in Investox abgespeichert werden müssen, wird der Einsatz als Signalgeber in Handelssystemen deutlich vereinfacht.

Für die Berechnung von Kursmustern aus Zahlen stehen folgende 3 Investox-Indikatoren zur Verfügung:;

  • KursmusterWerte(Daten, Kursmuster)
  • KursmusterWerteDTW(Daten, Kursmuster, Perioden, Toleranz)
  • KursmusterWerteDTW2(Daten, Kursmuster, Wo berechnen, Perioden, Toleranz)

Der erste einstellbare Parameter heißt in allen 3 KursmusterWerte-Indikatoren "Daten" . Hier wird die Datenbasis für die Berechnung des Kursmusters festgelegt.

Die gängigste Einstellung ist sicherlich "close" - aber es ist auch jede andere Datenbasis möglich. Kursmuster könnten z.B. auch auf Volumina, Pivot-Punkte oder auf beliebige Indikatoren berechnet werden.

Der zweite einstellbare Parameter aller KursmusterWerte-Indikatoren heißt "Kursmuster". In diesem Parameter werden alle Ziffern der Ziffernfolge für das Kursmuster definiert.

Vor dem ersten Element und nach dem letzten Element der Zahlenreihe steht eine Raute. Die Elemente der Zahlenfolge werden durch ein Komma voneinander getrennt. Die Ziffernfolge kann aus beliebig vielen Zahlen bestehen.

 

Kursmuster aus Werten

 

Im Einstelldialog für die KursmusterWerte-Indikatoren müssen die Rauten nicht mitgeschrieben werden- Ein kleiner Editor öffnet sich dort, wenn man im Feld mit der Zahlenfolge auf den kleinen Pfeil rechts klickt. Im Editor wird das abgespeicherte Muster grafisch angezeigt.

 

Kursmuster aus Zahlen

 

Abgeprüft werden in allen KursmusterWerte-Indikatoren nicht die absoluten Zahlenwerte, sondern immer das Verhältnis der einzelnen Elemente der Zahlenfolge zueinander.

Ein Aufwärtstrend auf Schlusskurs-Basis lässt sich deshalb -mit immer gleichem Ergebnis- z.B. durch die folgenden Indikatoreinstellungen abfragen:

  • KursmusterWerte(close, #1, 2, 3, 4, 5, 6 #)
  • KursmusterWerte(close, #111, 112, 113, 114, 115, 116 #)
  • KursmusterWerte(close, #0.1, 0.2, 0.3, 0.4, 0.5, 0.6 #)

Alternativ zu dieser Darstellung kann die Zahlenfolge für alle Kursmuster-Indikatoren auch in Relation zum jeweils vorherigen Wert der Zahlenfolge beschrieben werden. Für den Aufwärtstrend würde man so mit der folgenden Schreibweise wieder das immer gleiche Ergebnis wie oben erhalten:

  • KursmusterWerte(close, #Relativ:1, 1, 1, 1, 1, 1 #)
  • KursmusterWerte(close, #Relativ:111, 1, 1, 1, 1, 1 #)
  • KursmusterWerte(close, #Relativ:0.1, 0.1, 0.1, 0.1, 0.1, 0.1 #)

Einen Äbwärtstrend könnte man z.B. wie folgt abfragen:

  • KursmusterWerte(close, #6, 5, 4, 3, 2, 1 #);
  • KursmusterWerte(close, #Relativ:6, -1, -1, -1, -1, -1 #);

Für einen Seitwärtstrend würde passen:

  • KursmusterWerte(close, #1, 2, 1, 2, 1, 2 #);
  • KursmusterWerte(close, #Relativ:1, 1, -1, 1, -1, 1 #);

 

Werden die KursmusterWerte-Indikatoren gechartet, ist zu sehen, dass sie Ergebnisse im Wertebereich von -100 bis +100 annehmen. Ein Wert von +100 steht für eine 100 %-ige Übereinstimmung des Kursverhaltens mit dem eingestellten Muster. Ein Indikatorwert von -100 zeigt an, dass keine Übereinstimmung feststellbar ist. Es gilt also: Je höher der Indikatorwert der KursmusterWerte-Indikatoren, desto mehr stimmt das tatsächliche Kursverhalten mit der im Indikator eingestellten Zahlenfolge üb erein.

Im ersten Indikator mit der Syntax KursmusterWerte(Daten, Kursmuster) ist die geprüfte Musterlänge dabei immer gleich. Sie entspricht genau der Anzahl von Elementen der Zahlenfolge. Für alle Code-Beispiele oben wird die Ähnlichkeit der Close-Kurse mit der jeweiligen Zahlenfolge immer über 6 Perioden geprüft.

 

Kursmuster aus Werten

 

Bereits mit diesem Basiswissen kann die Signalgebung der KursmusterWerte-Indikatoren in ein Handelssystem integriert werden. Long- und Shorttrends sind im System durch die oben beschriebenen Indikatoren für Aufwärts-, Abwärts- und Seitwärtstrend definiert, Ein- und Ausstiege erfolgen beim Erreichen bestimmter Übereinstimmungs-Werte mit dem aktuellen Kursverhalten. Implementiert wurde auch ein Basis-Stop-Konzept.

Für den Bund-Future auf EOD-Basis (Datenquelle Pinnacle) kann bereits mit dieser einfachen Handelslogik folgende Kapitalkurve für den Zeitraum von 1990-2011 erzielt werden :

 

 

Wir hatten oben schon erwähnt, dass die absoluten Werte der in den KursmusterWerte-Indikatoren eingestellten Zahlenfolge für das Ergebnis irrelevant sind - es zählt allein das Verhältnis zur vorherigen Zahl der Zahlenfolge,

Absolut ergebnisrelevant ist allerdings, wie viele Elemente die eingestellte Zahlenfolge enthält.

KursmusterWerte(close, #1, 2, 3, 4, 5, 6 #)

wird ein komplett anderes Ergebnis liefern als

KursmusterWerte(close, #1, 2, 3, 4#)

Je mehr einzelne Elemente die in den Indikatoren eingestellte Zahlenfolge enthält, desto geringer ist die Wahrscheinlichkeit, dass das Kursverhalten dieser Zahlenfolge genau entspricht. Man kann über diesen Zusammenhang die Tradefrequenz steuern. Möchte man weniger Trades, kann man für das Beispiel-System die Anzahl der Elemente in der Zahlenfolge erhöhen. 

Wird das Beispiel-Handelssystem für den FGBL bessere Ergebnisse liefern, wenn die Kursmuster über eine andere Periodenzahl geprüft werden ?

Mit Hilfe des zweiten KursmusterWerte-Indikators KursmusterWerteDTW(Daten, Kursmuster, Perioden, Toleranz) lässt sich das besonders leicht gegenprüfen. Dieser Indikator enthält eine zusätzliche Einstellmöglichkeit für die Perioden , über die das eingestellte Muster geprüft werden soll. Für die Periodenzahl kann eine Optimierungsvariable gesetzt werden. Im letzten Parameter "Toleranz" ist außerdem einstellbar, welche prozentuale Abweichung des Musters vom Zeitfenster maximal noch toleriert wird.

Der Indikator KursmusterWerteDTW erfordert deutlich mehr Rechenleistung als der einfache KursmusterWerte-Indikator. Um diesen Effekt wieder etwas zu neutralisieren, wird im dritten Indikator KursmusterWerteDTW2 das Kursmuster nur zu ganz bestimmten Zeitpunkten berechnet (z.B. Beginn des Handelstages, Auftreten bestimmter Pattern im Chart), welche im 3. Parameter : "Wo berechnen" des Indikators festgelegt werden.

Für unser FGBL-System verbessert sich bei einer variierten Periodenzahl mit dem Indikator KursmusterWerteDTW die Kapitalkurve wie folgt:

 

Kursmuster aus Werten

 

Dieses Ergebnis ist schon respektabel - besonders die recht geringe Schwankungsbreite der Kapitalkurve fällt positiv auf.

Sollten die Kursmuster aus Werten in Bezug auf Performance und Robustheit auch in den längerfristigen Tests überzeugen, steht Investox-Anwendern damit ein einfaches und effizientes zusätzliches Mittel zur Trend- und Mustererkennung zur Verfügung, welches problemlos mit anderen Indikatoren kombiniert werden kann. Perspektivisch könnten dadurch viele ältere Standard-Indikatoren zur Trendbestimmung ersetzt werden.

Stabile Ergebnisse werden voraussichtlich primär dann erreicht, wenn die Optimierungsvariablen innerhalb der KursmusterWerte-Indikatoren nicht inflationär gesetzt werden.

Zurück