Poszukiwanie odpowiedniej strategii inwestycyjnej to długi i żmudny proces. Ten cykl artykułów ma na celu pokazanie, jak przykładowo taki proces może wyglądać. Zaczęliśmy od przyjęcia pewnych założeń, które stanowią bazę do modyfikacji. Wstępne testy pokazały, że modyfikacje są potrzebne – zarówno system odwracania pozycji, jak i manipulacja poziomami take profit (TP) i stop loss (SL) nie dały zadowalających rezultatów. Dziś spróbujemy doprecyzować sygnały wejścia na rynek i wprowadzimy mechanizm stopa kroczącego.
Precyzja sygnału wejścia
Zacznijmy od tego, że w dotychczasowych testach sygnał wejścia na rynek powstawał wtedy, gdy cena była powyżej/poniżej 10-sesyjnego kanału cenowego (dla najwyżej/najniżej ceny zamknięcia) i jednocześnie powyżej/poniżej 100-sesyjnej prostej średniej kroczącej (filtr trendu). Filtr postanowiliśmy pozostawić, natomiast wybicie doprecyzować. Chodzi o to, by uniknąć sytuacji, gdy: notowania idą we właściwym kierunku, TP zamyka pozycję, a za chwilę otwieramy nową w tym samym kierunku, bo cena utrzymuje się poza obszarem kanału. U brokerów pobierających prowizje może to znacznie podnosić koszty transakcyjne, a niekiedy możemy dodatkowo tracić na różnicach cen i spreadach. W związku z tym sygnał otwarcia pozycji długiej powstaje tylko wtedy, gdy wczorajsza cena zamknięcia jest powyżej górnej granicy kanału, a cena zamknięcia sprzed dwóch dni poniżej owej granicy. Analogicznie jest z pozycją krótką – wczorajsze zamknięcie poniżej dolnej bandy, a zamknięcie sprzed dwóch dni powyżej. Aby jednak nie tracić potencjału tkwiącego w sygnale wybicia z kanału, postanowiliśmy rozszerzyć TP do 200 pkt, a SL pozostawić na 120 pkt. Jakie są wyniki? Strategia przyniosła zysk netto 558 dol., przy trafności 38,6 proc. i liczbie transakcji zaledwie 153 (w poprzednich wersjach liczba ta wahała się między 421 i 755). Cel został więc osiągnięty – znacznie zredukowaliśmy częstotliwość handlu, zachowując dotychczasową zyskowność i efektywność systemu. Z ciekawości sprawdziliśmy też wersję bez filtra trendu. Zysk netto rośnie o 200 dol., ale kosztem większej liczby transakcji i większego maksymalnego obsunięcia.
Testy stopa kroczącego
Na razie udało nam się osiągnąć stabilność strategii, tzn. nie przynosi ona strat w długim terminie i ma relatywnie niewielkie obsunięcia kapitału. Niestety, trafność i relacja zysku do ryzyka są wciąż niekorzystne i nie pozwalają przynosić regularnych profitów. Próbą poprawy tej sytuacji jest wprowadzenie mechanizmu stopa kroczącego.
Przypomnijmy, że jego zadaniem jest przesuwanie zlecenia stop loss wraz z korzystną zmianą kursu. Co istotne, mechanizm ten działa tak, że stop nie może się już cofnąć – albo pozostaje na poprzednim poziomie, albo zmienia się w kierunku korzystnej zmiany kursu. Dlatego też dla pozycji długich trailing stop (TS) będzie funkcją niemalejącą, a dla krótkich nierosnącą. Narzędzie to ma dwa parametry. Pierwszy to wielkość zmiany, po której mechanizm zostaje uruchomiony. Na wstępie przyjęliśmy, że jeśli DAX wzrośnie /spadnie o 100 pkt na naszą korzyść, wówczas TS jest włączany. Drugi parametr to odległość, w jakiej SL ma być utrzymywany od aktualnego kursu. Na starcie przyjęliśmy, że jest to 50 pkt. Wyniki testu dla tej i innych wersji strategii widoczne są w tabeli poniżej. Sprawdziliśmy kilka wariantów, modyfikując zarówno poziom SL, TP, jak i parametry TS. Początkową linię obrony oraz poziom realizacji zysków rozszerzyliśmy (nawet do 500 pkt), by dać możliwość działania TS.
Okazuje się, że najgorsze wyniki dają te warianty, gdy TS uruchamiany jest zbyt szybko – po korzystnej zmianie o 50 pkt – i gdy odległość TS jest zbyt wąska – też 50 pkt. To skłoniło nas, by jednak dać większą przestrzeń do działania strategii i zwiększyć wartości obu parametrów. Problemem pozostawał zbyt szeroki SL, dlatego również stopniowo zmniejszaliśmy jego odległość.
Efekt? W końcu udało nam się osiągnąć rosnącą krzywą kapitału (patrz wykres). Jest to skutek ustawienia SL na poziomie 300 pkt (dwukrotność średniego ATR dla ostatnich 14 sesji), uruchamiania TS po zmianie o 100 pkt i utrzymywanie go w odległości 100 pkt od aktualnego kursu. System zawarł w ciągu dziesięciu lat 127 transakcji, z czego aż 75 proc. przyniosło profit (sprawdziliśmy system dla dłuższego okresu – próba liczyła 200 transakcji i wyniki zostały potwierdzone).
Dla inwestorów, którzy nie lubią przyznawać się do błędów, to na pewno zachęcający wynik. Co więcej – maksymalne obsunięcie kapitału to tylko 5,7 proc., a więc poziom akceptowalny nawet przy wysokiej awersji do ryzyka. Współczynnik zysk/ryzyko jest niestety wciąż niski (średnia strata trzy razy wyższa od średniego zysku), dlatego w kolejnych odcinkach tego cyklu będziemy poszukiwać innych sposobów na realizację zysków. Zwłaszcza że w okresie dziesięcioletnim zysk ze strategii „kup i trzymaj" byłby kilkakrotnie wyższy niż ten uzyskany w testach.
Dzisiejsza wersja strategii z mechanizmem TS dała jednak najlepsze jak dotąd wyniki, co cieszy i daję bazę do kolejnych poszukiwań.
Jak wygląda trailing stop w języku programowania MQL?
Na obrazku powyżej widzimy linię kapitału dla najlepszej wersji strategii, testowanej w ramach tego cyklu artykułów. Linia ma wzrostowe nachylenie i niewielkie obsunięcia. Udało ją się osiągnąć m.in. dzięki mechanizmowi kroczącej linii obrony. W ramce poniżej widoczny jest kod MQL tego narzędzia. Korzystamy w nim ze standardowych funkcji zarządzania zleceniami. Zmienne TrailStart i TrailStep to parametry odpowiadające za moment uruchomienia mechanizmu i odległość, w jakiej stop ma być utrzymywany w relacji do aktualnej ceny.
Sprawdzamy osiem wersji strategii inwestycyjnej
Tabela obok pokazuje wyniki testów strategii wybicia z kanału cenowego (najwyższe i najniższe zamknięcie z 10 poprzednich sesji), przeprowadzone na platformie Meta Trader w trybie „Każdy tick". Sprawdziliśmy osiem wariantów strategii z doprecyzowanym sygnałem wejścia na rynek oraz mechanizmem kroczącej linii obrony. Dzięki modyfikacjom udało nam się znacznie zredukować liczbę transakcji, zmniejszyć obsunięcia kapitału, zachowując jednocześnie stabilność wyników. Wariant ósmy jest jednocześnie najlepszy ze wszystkich, które dotąd sprawdziliśmy. Strategia przyniosła zysk netto 1312 dol., a linia kapitału ma lekko wzrostowe nachylenie. Wyniki docelowe nie zostały jednak jeszcze osiągnięte.