Systemy inwestycyjne, czyli jak powstają giełdowe roboty

Proste reguły zawierania transakcji bazujące na narzędziach analizy technicznej można wykorzystać do stworzenia inwestycyjnego robota. Wystarczą wyobraźnia i znajomość języka programowania

Aktualizacja: 13.02.2017 01:31 Publikacja: 09.08.2012 06:00

Systemy inwestycyjne, czyli jak powstają giełdowe roboty

Foto: Archiwum

Każdy inwestor ma swoje ulubione metody gry. Jeden lubi przyglądać się wykresom i analizować zmiany cen, inny woli śledzić wyniki finansowe spółek i sprawdzać ich kondycję. Na podstawie preferowanej metody można stworzyć plan inwestycyjny, który dokładnie określa, kiedy kupować, kiedy sprzedawać i w jakich sytuacjach trzymać się od rynku z daleka.

Ściśle określony zestaw reguł tworzy swego rodzaju algorytm postępowania. Taki algorytm można następnie zapisać w postaci programu komputerowego, który obserwuje rynek pod kątem przyjętych zasad i poszukuje dogodnych okazji do inwestycji. W ten sposób powstaje automatyczny system inwestycyjny, który może samodzielnie grać na giełdzie. Poniżej spróbujemy przedstawić krok po kroku, jak należy tworzyć taki algorytm przy wykorzystaniu metod analizy technicznej.

Musisz wiedzieć, dokąd zmierzasz

Budowanie systemu inwestycyjnego należy zacząć od zdefiniowania konkretnych celów, jakie inwestor chce osiągnąć, wykorzystując swoją strategię. Do najważniejszych należą: stopa zwrotu, horyzont czasowy, w jakim ma ona zostać osiągnięta, wielkość dostępnego kapitału oraz ryzyko, jakie jesteśmy w stanie zaakceptować. I choć każdy inwestor myśli na początku o zysku, to jednak powinien zmienić swoje priorytety i odpowiedzieć sobie na pytanie, ile może stracić. Warto więc dokładnie zastanowić się nad psychologiczną wytrzymałością, czyli jakie maksymalne obsunięcie kapitału jesteśmy w stanie „przeżyć" i ile stratnych transakcji z rzędu wytrzymają nasze nerwy.

Każdy inwestor jest inny i przyjęte założenia mogą się diametralnie różnić. Ich zdefiniowanie określa twarde warunki brzegowe, poza które nasz system nie może wykraczać. Po jego zbudowaniu i przetestowaniu na historycznych danych będziemy w stanie ocenić, czy odpowiada on w pełni naszym preferencjom. Jeśli tak, szanse na jego skuteczne funkcjonowanie w przyszłości będą po prostu większe.

Sygnały otwarcia pozycji

Po zdefiniowaniu celów należy przejść do konkretów, czyli określenia dokładnych momentów wejścia i wyjścia z rynku. Tu z pomocą przychodzą narzędzia analizy technicznej, które w obiektywny sposób mogą generować sygnały kupna i sprzedaży. Ponieważ większość strategii dzieli się na grające z trendem i wbrew niemu, warto na początku wybrać filtr, który określi, jaka tendencja dominuje właśnie na rynku. Wykorzystać w tym celu można wskaźnik ruchu kierunkowego. Zasada jest prosta. Jeśli ADX rośnie, na rynku mamy do czynienia z silnym trendem. Jego kierunek zależy od układu linii DI. Jeśli +DI jest nad -DI, będzie to trend rosnący, w przeciwnym wypadku spadkowy. Gdy ADX opada, rynek porusza się horyzontalnie.

W przypadku silnych trendów do otwierania pozycji długiej lub krótkiej będziemy wykorzystywać techniki dedykowane grze z trendem. Należą do nich m.in. proste średnie ruchome. Sygnały kupna generowane są wtedy, gdy szybsza średnia (z mniejszą liczbą okresów) przetnie od dołu tę wolniejszą (z większą liczbą okresów), a sprzedaży w sytuacji odwrotnej.

W trendach horyzontalnych natomiast najlepiej sprawdzają się oscylatory, które zapowiadają wzrost, gdy wskaźnik dotrze do strefy wyprzedania, i spadki, gdy znajdzie się w strefie wykupienia. Do najpopularniejszych wskaźników z tej grupy należą RSI oraz oscylator stochastyczny.

Jak uciekać z rynku

Większość inwestorów uważa, że to właśnie metody wejścia na rynek są najważniejszą składową systemu. Niestety, jest to przekonanie błędne. Samo zajęcie pozycji nie gwarantuje nam jeszcze dobrego wyniku. Rezultat ostateczny zależy bowiem od tego, kiedy z rynku uciekniemy. Uciekać można na wiele sposobów. Pierwszą metodą jest początkowy stop loss, który chroni nas przed stratami. Jego poziom ustalany jest zawsze przed zajęciem pozycji i zależeć może od własnych preferencji – maksymalna dopuszczalna strata z transakcji lub od konkretnego wskaźnika, np. ATR lub odchylenia standardowego.

Tak jak z góry ustala się stratę, można też określić docelowy zysk. Inwestor może więc dokładnie określić, jaka stopa zwrotu z danej transakcji będzie zadowalająca, i na tej podstawie ustawić zlecenie realizacji zysku. Problem w tym, że kurs niekoniecznie może dotrzeć do wyznaczonego pułapu. Tu z pomocą przychodzi trailing stop – trzecia metoda zamykania pozycji. Chodzi o tzw. stopy kroczące, czyli zlecenia obronne poruszające się zgodnie z ruchem kursu. Omawialiśmy już na łamach „Profesjonalnego inwestora" trzy przykłady takich stopów: kanał Keltnera, stop procentowy oraz stop oparty o wskaźnik ATR. Stosowanie tych metod jest komfortowe dla psychiki inwestora, ponieważ pozwala mu zatrzymać wypracowany dotychczas zarobek.

Ostatnią metodą zamykania pozycji jest wygenerowanie sygnału odwrotnego do sygnału otwarcia. Przykładowo, kiedy układ średnich, który sugerował zwyżki, ulegnie odwróceniu, jest to ostrzeżenie, że dotychczasowy trend się kończy. Można wówczas wycofać się z rynku, który prawdopodobnie osiągnął już szczyt.

W porozumieniu z komputerem

Powyżej przedstawiliśmy kilka metod otwierania i zamykania pozycji opartych o analizę techniczną. Dzięki nim można zbudować prosty system inwestycyjny i zamienić go w automat. W jaki sposób?

Narzędzia techniczne mają ważną zaletę – można w łatwy sposób zapisać je w języku programowania. Za pomocą popularnych programów analitycznych, jak MetaStock lub AmiBroker, wszystkie warunki transakcyjne można zaprogramować i stworzyć automatyczny algorytm inwestycyjny. Ponadto można taki algorytm przetestować na danych historycznych i sprawdzić, czy spełnia nasze początkowe oczekiwania.

Biura maklerskie udostępniają natomiast aplikacje, dzięki którym możemy nasz system bezpośrednio „podłączyć" do giełdy. W ten sposób powstaje inwestycyjny robot, który może nas wyręczyć w śledzeniu notowań. Na czym polega jego przewaga nad tradycyjnym inwestowaniem? Taki robot się nie męczy, nie zastanawia, nie jest podatny na wpływ emocji, działa bardzo szybko i jest przede wszystkim zdyscyplinowany. Dzięki temu eliminuje się z całej „zabawy w giełdę" czynnik psychologiczny, który ma ogromny wpływ na podejmowane przez nas decyzje. Zenon Komar pisał w „Sztuce spekulacji", że inwestor chcący odnosić sukces na giełdzie musi spełniać trzy warunki: posiadać doświadczenie, plan i być konsekwentny. Robot dostaje to wszystko w jednym pakiecie w postaci zaprogramowanego algorytmu postępowania.

[email protected]

Kilka etapów budowania prostych systemów inwestycyjnych

Zdefiniowanie celów

Najpierw określamy cele: zysk, horyzont czasowy, posiadany kapitał oraz akceptowane ryzyko

Rozpoznanie trendu

Strategia gry zależy od rynkowego trendu. Musimy najpierw go rozpoznać, by móc dobrać odpowiednie narzędzia analityczne

Metody wejścia na rynek

Pozycje otwieramy za pomocą wskaźników analizy technicznej. Mogą być to narzędzia do gry z trendem (np. średnie kroczące) lub przeciw niemu (np. oscylatory)

Metody zamykania pozycji

Istnieje kilka sposobów wyjścia z rynku: początkowy i ruchomy stop loss, docelowy poziom realizacji zysku, wskaźnik otwarcia pozycji generujący sygnał odwrotny

Programowanie

Za pomocą programu analitycznego zapisujemy metody otwierania i zamykania pozycji w dostępnym języku programowania

Narzędzia do budowy robotów

1. MetaStock

| Jeden z najpopularniejszych programów do analizy technicznej. Zawiera moduł „System Tester", który umożliwia budowanie systemów transakcyjnych, ich optymalizację oraz testowanie na różnych instrumentach, w różnych okresach czasu. Posiada coś na wzór języka programowania, który opiera się na prostych matematycznych i logicznych formułach, przez co jest bardzo intuicyjny. Prostota ogranicza jednak jego elastyczność i budowanie bardziej zaawansowanych systemów, więc przeznaczony jest raczej dla początkujących inwestorów i analityków.

2. AmiBroker

| Zaawansowane narzędzie analityczne. Posiada własny język programowania AFL (AmiBroker Formula Language), który współpracuje z innymi aplikacjami umożliwiającymi programowanie. AmiBroker ma bardzo dużą moc obliczeniową, dzięki czemu testowanie systemów o wielu parametrach odbywa się stosunkowo szybko. Program wielokrotnie otrzymał nagrody „Stocks & Commodities Readers" „Choice Award" w rankingu na najlepsze oprogramowanie do analizy technicznej. Jest z powodzeniem wykorzystywany przez analityków na całym świecie, szczególnie w Stanach Zjednoczonych. Ciekawostką jest, że twórcą i właścicielem programu jest Polak – Tomasz Janeczko. Absolwent Politechniki Wrocławskiej zbudował pierwszą wersję programu w 1995 r.

Materiał Promocyjny
Financial Controlling Summit
Inwestycje
Zbieranie danych w grupie kapitałowej
Inwestycje
Konrad Łapiński, Total FIZ: Nowe rekordy są już mało prawdopodobne
Inwestycje
Złoto z historycznym rekordem. Ile cena może jeszcze wzrosnąć?
Inwestycje
Grzegorz Pułkotycki, Starfunds: Czas na demokratyzację hossy