SMP Financial Engineering GmbH Begleitmaterial des Softwarepakets Markttechnik für den Nanotrader/Futurestation Beschreibung des Bewegungshandels mit und ohne TrendPhasen Filter (mittels der Express Programme BewegungshandelMT, InOutBarsSarMT, StopInOutBarsMT, smpmtplotbewkorrphasen und smpmtbewkorrfilter) Dies ist keine Empfehlung zum Kauf oder Verkauf von Aktien, Aktienderivaten, Futures oder anderen Produkten jeglicher Art. SMP Financial Engineering GmbH gibt keine Empfehlungen bezüglich des Tradings oder Investments. In der Vergangenheit erzielte Performance entweder aktuell oder berechnet aus historischen Tests und Strategien, ist keine Garantie für zukünftige Performance oder Erfolg. Beispiel zum TrendPhasen Filter (smpmtbewkorrfilter) Inhalt: 1. Bewegungshandel mit Innen /Außenstabstopp 2. Aufbau des Bewegungs /KorrekturPhasen Filters 3. Bewegungshandel mit Bewegungs /KorrekturPhasen Filter 1. Bewegungshandel mit Innen /Außenstabstopp Underlying: FDax Jun 12, handelnde Zeiteinheit: 10 min Indikatoren: smpmt.dll Plugin (nichtstandard) Einstellungen: sar:choice = 2 sarm:timescale = 2 sariob:aussenstabini = 1 sariob:aussenstab = 2 sariob:closeinside = 2 sariob: factor = 3 Einstieg: BewegungshandelMT Mit EinstiegsSentiment Bestätigung next period MetaSentimentor (erhält Signal nur von BewegungshandelMT) Ausstieg (beide Programme als Stop): InOutBarsSarMT (Ausstiegssentiment Close same period ) und StopInOutBarsMT (Ausstiegssentiment sofort ) Einstellungen: nonoutbar_dist = 2 stop_param_mindist = 2 stop_param_maxdist = 30 forerunner_outbar_dist = 2
Der gesamte Chart: Ein Ausschnitt dieses Charts mit dem Plot des MinMax Prozesses (smpmtplotminmax): Die Ausgabe von BewegungshandelMT Die Ausgabe von InOutBarsSarMT
Lädt man noch smpmtplotcheckfortrend, kann man die Up und DownTrends visualisieren. Ergebnis über 500 Tage: Gesamt Netto Gewinn: 30019.00 Gesamtzahl Trades: 176 Gewinn Trades: 74 Verlust Trades: 102 Anteil Gewinner: 42.05% Profit Factor: 1.46 mittl. Gewinn/mittl. Verlust: 2.01 mittl. Trade (Gew. & Verl.): 170.56 Zeitanteil im Markt: 12.71% RegKoeff*100/StdDev Equity: 0.0000 Summe Gewinne: 95356.00 Summe Verluste: 65337.00 größter Gewinn Trade: 7031.50 " in Prozent: 23.42% mittl. Gewinn Trade: 1288.59 mittl. Dauer Gewinn Trades: 29.99 größter Verlust Trade: 2631.00 mittl. Verlust Trade: 640.559 mittl. Dauer Verlust Trades: 15.01 max. Gewinntrade Serie: 5 max. Verlusttrade Serie: 10
Std.Abw. aller Trades: 1384.54 Std.Abw. Gewinn Trades: 1459.00 Std.Abw. Verlust Trades: 450.12 max. Positionsgröße: 1 max. Einbruch: 7366.00 angefallene Gebühren: 1056.00 Expectancy: 0.2051 Expectancy Score: 0.0012 Fröhlich Faktor: 2.57 Performance/Drawdown: 4.08 Expectation: 170.56 Bewertung vom: 06.12.10 Mon 08:00 Bewertung bis: 20.04.12 ri 13:30 2. Aufbau des Bewegungs /KorrekturPhasen Filters Ziel dieses Abschnitts ist es mit Hilfe der beiden Express Programme smpmtplotbewkorrphasen und smpmtbewkorrfilter eine Analyse auf einer größeren Zeiteinheit (60min) aufzubauen, die wir weiter unten in 3. als Study und Filter einbinden können. Underlying: FDax Jun 12, handelnde Zeiteinheit: 60 min Indikatoren: smpmt.dll Plugin (nichtstandard) Einstellungen: sar:choice = 2 sar:percent_or_atr = 0 sarm:timescale = 2 sarm:percent_multiple = 0.01 Der Chart mit einem Plot des MinMax Prozesses (smpmtplotminmax): Hier sehen wir einen kleinen Ausschnitt des Charts, den wir näher untersuchen wollen:
Die zugehörigen Up und DownTrends (smpmtplotcheckfortrend): Mittels smpmtplotbewkorrphasen lassen sich die Trends noch weiter in Phasen unterteilen. Im "normal mode" unterscheiden wir 4 Phasen, und zwar, ob der Trend in "prephase" (noch kein Trend, kann aber unmittelbar entstehen) in "Bewegungsphase I" (Bewegung vor Erreichen des P2) in "Bewegungsphase II" (Bewegung nach Überschreiten des P2) oder in der "Korrekturphase" ist. Im "advanced mode" unterscheiden wir 8 Phasen. Jede der obigen Phasen wird nochmals geteilt in eine "standard" und eine "advanced" Phase. 1. Die Korrekturphase wird unterteilt in weniger als 50% Rückgang (gemessen an der Differenz von P2 und P3) seit dem letzten P2 ("standard phase"), bzw. mehr als 50% ("advanced phase"). 2. Die Unterteilung der anderen Phasen hängt vom Parameter bewkorr:boxadvanced vom smpmt Plugin ab. Bewegungsphase I ist erst dann in "advanced phase", wenn das temporäre Extremum weniger als BoxAdvanced Prozent (der Differenz zwischen letztem P2 und P3) vom P2 weg ist; sonst ist es noch in "standard phase". 3. Für Prephase ist die Unterscheidung in "advanced phase" und "standard phase" analog wie in Bewegungsphase I. 4. Bewegungsphase II ist erst dann in "advanced phase", wenn das temporäre Extremum mehr als BoxAdvanced Prozent (der Differenz zwischen letztem P2 und P3) vom letzten P2 weg ist (der ja schon überschritten wurde); sonst ist es noch in "standard phase".
Im normal mode (NormalOrAdv = 0) werden die möglichen Trendphasen in folgende Werte übersetzt (serie BewKorrFilter; blauer plot unten): numeric prephaup (60); numeric prephadown (40); numeric bew1up (70); numeric bew1down (30); numeric bew2up (80); numeric bew2down (20); numeric korrup (90); numeric korrdown (10); Im advanced mode (NormalOrAdv = 1) sind folgende Werte zusätzlich möglich (serie BewKorrFilterAdv; roter plot): numeric prephaupadv(65); // näher an P2 als prephaup numeric prephadownadv (35); numeric bew1upadv (75); // näher an P2 als bew1up numeric bew1downadv (25); numeric bew2upadv (85); // weiter weg von P2 als bew2up numeric bew2downadv (15); numeric korrupadv (95); // Korrektur weiter gelaufen als korrup numeric korrdownadv (5); Wählt man HighlightSlot = 1, werden die Trendphasen noch zusätzlich farbig hinterlegt: Prephase (hellrot und hellgrün), Bewegungsphase I (rot und grün), Bewegungsphase II (dunkelrot und dunkelgrün), Korrektur (rötliches gelb und grünliches gelb)
Als letztes müssen wir noch auswählen, welche dieser Trendphasen unser Filter durchlassen soll. Dies lässt sich mit dem Express Programm smpmtbewkorrfilter umsetzen. Es benutzt dazu folgende Parameter: input $prephasenormal (0,1,0); // falls Trend in dieser Phase: mysenti = 93 (up) oder 7 (down) input $prephaseadv (0,1,0); // falls Trend in dieser Phase: mysenti = 94 (up) oder 6 (down) input $bew1normal (0,1,0); // falls Trend in dieser Phase: mysenti = 95 (up) oder 5 (down) input $bew1adv (0,1,0); // falls Trend in dieser Phase: mysenti = 96 (up) oder 4 (down) input $bew2normal (0,1,0); // falls Trend in dieser Phase: mysenti = 97 (up) oder 3 (down) input $bew2adv (0,1,0); // falls Trend in dieser Phase: mysenti = 98 (up) oder 2 (down) input $korrnormal (0,1,0); // falls Trend in dieser Phase: mysenti = 99 (up) oder 1 (down) input $korradv (0,1,0); // falls Trend in dieser Phase: mysenti = 100 (up) oder 0 (down) Will man diese Serie auswählen, setzt man den betreffenden Parameter auf 1. Das Semtiment (mysenti) ist dann über 90 (UpTrend) oder unter 10 (DownTrend), so dass bei der Verwendung als Study/Filter die Handelssignale des untergeordneten Programms durchgelassen werden. Damit diese Sentimente weiter verarbeitet werden können, benötigt man noch den MetaSentimentor (erhält Signal nur von smpmtbewkorrfilter). Im Plot unten haben wir im advanced mode die Phasen $prephasenormal, $prephaseadv und $bew2normal auf 1 gesetzt. Die Analyse wurde unter BewegungKorrekturPhasen 60 min gespeichert, damit sie als Study weiterverwendet werden kann. 3. Bewegungshandel mit Bewegungs /KorrekturPhasen Filters Hier soll wieder der Bewegungshandel so wie unter 1. beschrieben verwendet werden, mit dem einzigen Unterschied, dass jetzt über den TrendPhasen Filter aus 2. (smpmtbewkorrfilter) nur noch ausgewählte Phasen der Trends auf Zeiteinheit 60min zum Handeln zugelassen werden. Wähle daher das Handelssystem wie unter 1. und zusätzlich: Study als Filter: BewegungsundKorrekturPhasen 60 min Einstellung as is
Der Chart ist jetzt rot (nur short trades erlaubt) und grün (nur long trades erlaubt) hinterlegt: Diese Phasen sieht man auch in der Study Durch das Filtern erhält man nur noch knapp 20.000 Euro Gewinn, bei allerdings nur noch 37 Trades, welche jetzt im Schnitt über 500 Euro Erwartungswert haben. Gesamt Netto-Gewinn: 19190.50 Gesamtzahl Trades: 37 Gewinn-Trades: 19 Verlust-Trades: 18 Anteil Gewinner: 51.35%
Profit Factor: 2.39 mittl. Gewinn/mittl. Verlust: 2.26 mittl. Trade (Gew. & Verl.): 518.66 Zeitanteil im Markt: 3.44% RegKoeff*100/StdDev Equity: 0.0001 Summe Gewinne: 33011.00 Summe Verluste: 13820.50 größter Gewinn-Trade: 7031.50 -"- in Prozent: 36.64% mittl. Gewinn-Trade: 1737.42 mittl. Dauer Gewinn-Trades: 38.74 größter Verlust-Trade: 1393.50 mittl. Verlust-Trade: 767.806 mittl. Dauer Verlust-Trades: 15.44 max. Gewinntrade-Serie: 5 max. Verlusttrade-Serie: 6 Std.Abw. aller Trades: 1922.03 Std.Abw. Gewinn-Trades: 2004.15 Std.Abw. Verlust-Trades: 397.08 max. Positionsgröße: 1 max. Einbruch: 6722.50 angefallene Gebühren: 222.00 Expectancy: 0.4399 Expectancy Score: 0.0006 Fröhlich-Faktor: 3.03 Performance/Drawdown: 2.85 Expectation: 518.66 Bewertung vom: 06.12.10 Mon 08:00 Bewertung bis: 20.04.12 Fri 13:30 Fazit: Das Filtern der Phasen $prephasenormal, $prephaseadv und $bew2normal in obigem Beispiel hat die Performance der Bewegungshandels erheblich gesteigert. Einziger Wehrmutstropfen dabei ist die extrem eingeschränkte Anzahl der Trades (nur noch 37 in 500 Tage statt vorher 176 in 500 Tagen). Erklärungsversuch, warum gerade diese Phasen so profitabel sind: 1. Prephase: in diesen Phasen ist es möglich, dass auf der großen Zeiteinheit 60min unmittelbar ein neuer Trend entstehen könnte. Diese Aussicht und der Bewegungsschub, welcher durch den Durchbruch des kleinen P2 auf der Zeiteinheit 10min entsteht, führen scheinbar oft dazu, dass auf 60min tatsächlich ein (neuer) Trend entsteht. 2. Bew2Normal: diese Phase entsteht, wenn auf der Zeiteinheit 60min der große P2 gerade überwunden wurde. Es leuchtet ein, dass in dieser Phase noch ein gewisser flow vorherrscht, welche die Kurse erstmal ohne großen Widerstand noch weiter treibt. Erstellungsdatum : 21.04.2012