Inteligentne systemy inwestycyjne w funduszach typu quant
Streszczenie rozprawy doktorskiej
mgr Piotr Ładyżyński
E-mail: p.ladyzynski@mini.pw.edu.pl
Promotor: dr hab. Przemysław Grzegorzewski, prof. PAN
1 Przedmiot i zakres rozprawy
Algorytmiczny system inwestycyjny (ang. quantitative trading) definiuje się jako zbiór re- guł jednoznacznie określających momenty kupna i sprzedaży instrumentów finansowych oraz wielkości otwieranych pozycji względem posiadanego kapitału na podstawie ana- lizowanych czynników rynkowych, ekonomicznych, psychologicznych itd. Według pracy (Lauricella , 2010) 25% obrotu na giełdach w Europie i USA jest generowanych przez algorytmy, w których czynnik ludzki został wyeliminowany do minimum, a decyzje inwe- stycyjne podejmowane są wyłącznie przez odpowiednio zaprogramowane maszyny.
Algorytmiczne systemy inwestycyjne mają na wielu płaszczyznach znaczącą przewagę nad „ludzkimi” traderami. W szczególności przewaga ta objawia się w
• inwestowaniu o wysokiej częstości składania zleceń (ang. high frequency trading), czyli metodzie iwestycyjnej polegającej na składaniu zleceń w bardzo krótkim ho- ryzoncie czasowym (np. sekundy);
• braku czynnika psychologicznego - automaty inwestycyjne nie podlegają presjom mediów głoszącym apokalipsę często w najbardziej korzystnych warunkach rynko- wych;
• możliwości precyzyjnej weryfikacji wyników (ang. (backtesting) - dobre wyniki in- westycyjne tradera oparte na kilkumiesięcznej historii jego pracy mogą być jedynie dziełem przypadku, podczas gdy weryfikacja działania systemu inwestycyjnego na podstawie kilkunastoletniej historii i wielu rynków jest o wiele bardziej wiarygodna.
Ważkość zagadnienia potwierdza dodatkowo fakt wieloletnich ponadprzeciętnych wy- ników największego funduszu typu quant - Renaissance Technologies LLC (średni roczny zwrot na poziomie 40%).
Możemy wyodrębnić następujące - dostępne w literaturze - podejścia do konstrukcji
inteligentnych systemów inwestycyjnych:
• metody analizy technicznej - najczęściej występujące podejście do konstrukcji strate- gii inwestycyjnych (np. (Elder, 2006)). W rozprawie doktorskiej pokażemy, że znane reguły inwestycyjne oparte na czynnikach analizy technicznej - wbrew opinii ogrom- nej rzeszy entuzjastów - nie przynoszą dodatniej stopy zwrotu.
• modelowanie za pomocą szeregów czasowych - podejście to zakłada potraktowanie szeregu cen lub stóp zwrotu jako realizacji pewnego, z góry założonego, modelu szeregu czasowego (np. AR, ARIMA), estymację odpowiednich parametrów modelu i następnie predykcję.
• rozpoznawanie wzorców i klasyfikacja - zastosowanie metod uczenia maszynowego do odkrywania wzorców i reguł w danych (por. Kwok N., Fang G., Ha Q. (2009), Lipiński P., Korczak J., Roger P. (2002), Lipiński P., Korczak J. (2005), Lipiński P.
(2008), Lipiński P. (2009), Lipiński P. (2010)). Architektury systemów należących do powyższej grupy składają się zwykle z dwóch warstw: warstwy konstruującej wektor uczący na podstawie danych rynkowych, ekonomicznych itp. oraz algorytmu ucze- nia maszynowego, znajdującego korelacje pomiędzy wektorami uczącymi, a pewnymi szczególnymi zjawiskami rynkowymi. Jako typowy przykład możemy podać system opisany w pracy (Wu M. C., Lin S. Y., Lin C. H. (2006)), w której autorzy uczą drzewo decyzyjne klasyfikować punkty wejścia i wyjścia z rynku na podstawie wek- torów uczących, utworzonych z pięciu wskaźników analizy technicznej i fundamen- talnej, obliczonych z różnymi opóźnieniami czasowymi. Systemy tego typu stanowią najciekawszą klasę systemów inwestycyjnych i teoretycznie powinny być najbardziej efektywne. Mogą zawierać - jako warstwy i filtry - dowolne z algorytmów należących do poprzednich grup, a ponadto nie zależą od prognoz wyznaczonych dla z góry założonego modelu matematycznego, który - mimo iż dobrze działał w przeszłości - może przestać być adekwatny.
• narzędzia inwestycyjne - ta grupa obejmuje metody nie będące de facto systemami inwestycyjnymi, ale dostarczające cennych wskazówek o rynku. Jako przykład można wymienić systemy rozpoznawania formacji analizy technicznej zaproponowane w (Ładyżyński P., Grzegorzewski P. (2010), Ładyżyński P., Grzegorzewski P. (2012)) Literatura przedmiotu zawiera dość szeroką gamę różnorodnych automatycznych syste- mów inwestycyjnych. Niestety, prezentacja wyników działania strategii pozostawia często wiele do życzenia. Wielu autorów nie uwzględnia kosztów transakcyjnych, nie porównuje stopy zwrotu systemu ze stopą zwrotu indeksu. Bardzo często badając przedstawione sys- temy można się natknąć na wyniki, które zostały dobrane tendencyjnie (np. wybrano okresy na których algorytm akurat zarabiał). W rozprawie doktorskiej zostanie zapropo- nowana koncepcję testowania automatycznych systemów inwestycyjnych (patrz rozdz. 1) wraz z metodologią ich porównywania.
Systemy inwestycyjne zaproponowane w literaturze często próbują prognozować przy-
szłe poziomy cen. Niestety, jak wiadomo z licznych opracowań, skuteczność prognozy
szeregów finansowych bywa mizerna ze względu na ich dużą losowość i wysoką zmienność
rozkładów prawdopodobieństwa. W pracy doktorskiej zaprezentuje podejście polegające
na prognozowaniu jedynie kierunku ruchu cenowego (patrz rozddział 4) i zbadam wła-
sności zaproponowanego systemu w kontekście backtestingu na danych historycznych, jak
również na danych preparowanych z modeli matematycznych.
Cel rozprawy
Główne cele rozprawy to:
1. Stworzenie metodologii testowania i porównywania systemów inwestycyjnych.
2. Zbadanie realnych możliwości generowania zysków popularnych algorytmów mecha- nicznych oraz systemów inwestycyjnych, opartych na technikach sztucznej inteligen- cji.
3. Przedstawienie autorskiej metody rozpoznawania formacji cenowych.
4. Konstrukcja autorskiego systemu inwestycyjnego posiadającego zdolność adaptacji on-line do szeregów czasowych o wysokiej niestacjonarności oraz zbadanie możliwo- ści zastosowania zaproponowanego systemu jako inteligentnego systemu inwestycyj- nego.
5. Konstrukcja testu statystycznego weryfikującego hipotezę o możliwości prognozo- wania kierunku ruchu lub poziomu cen przez algorytmy uczenia maszynowego.
Struktura rozprawy
Podczas weryfikacji wyników algorytmów inwestycyjnych wielu autorów nie uwzględnia kosztów transakcyjnych oraz nie porównuje stopy zwrotu systemu ze stopą zwrotu in- deksu. Badając przedstawione systemy można bardzo często natknąć się na wyniki, które zostały dobrane tendencyjnie (np. wybrano okresy, na których algorytm akurat zarabiał).
W rozprawie zostanie przedstawiona koncepcja testowania automatycznych systemów in- westycyjnych (rozdział 1) wraz z metodologią ich porównywania. Za pomocą zapropono- wanego systemu weryfikacji algorytmów zbadamy klasyczne algorytmy inwestycyjne oraz wybrane systemy oparte na uczeniu maszynowym dostępne w literaturze (rozdział 2).
Poszukiwania zyskownej inteligentnej strategii inwestycyjnej, mającej zdolność adapta- cji do zmiennych warunków rynkowych, doprowadzą nas do skonstruowania przydatnych narzędzi inwestycyjnych takich jak nowy algorytm rozpoznawania obrazów (rozmyte pro- toformy geometryczne - rozdział 3) oraz system wykorzystujący lasy losowe Breimanna, mający zdolność adaptacji on-line do szeregu czasowego o wysokiej niestacjonarności (roz- dział 4). Na koniec zostanie zaproponowany test statystyczny dający odpowiedź na pyta- nie, czy prognozowanie, za pomocą jednego z najsilniejszych algorytmów uczenia maszy- nowego, poziomów i kierunku ruchu szeregów czasowych cen, bez patrzenia na czynniki makroekonomiczne, analizę fundamentalną danej spółki czy sektora i wskaźniki nastroju konsumentów, a bazując jedynie na pojedynczej trajektorii jest skuteczne.
2 Backtesting systemów inwestycyjnych
Brak sformalizowanego podejścia do weryfikacji wyników pracy systemów inwestycyjnych
jest istotnym lecz zepchniętym w literaturze naukowej na margines problemem. Dobre
wyniki systemu jest łatwo spreparować przeszukując wśród tysięcy szeregów czasowych cen
tych kilkunastu, na których system działa dobrze. Co więcej większość autorów (np. Kwok
N. , Fang G., Ha Q. (2009)) podaje jedynie stopę zwrotu i maksymalne obsunięcie portfela,
Rysunek 1: Diagram architektury systemu obsługującego algorytmiczny fundusz inwesty- cyjny.
zapominając np. o dużo ważniejszej statystyce, jaką jest wartość oczekiwana stopy zwrotu z pojedynczej transakcji, czy chociażby miary obliczone na podstawie estymacji rozkładu stóp zwrotu z ustalonych odcinków czasowych. Zupełnie pomijana jest przy tym kwestia badania stabilności systemu ze względu na zaburzenia jego parametrów.
Na potrzeby pracy doktorskiej został zaprojektowany i zaimplementowany system słu-
żący do weryfikacji i porównywania między sobą strategii inwestycyjnych. Jądro systemu
współpracujące z bazą historycznych danych rynkowych, wystawia interfejs API, do któ-
rego może podłączyć się algorytm inwestycyjny pobierając aktualne notowania i składając
zlecenia (por. rysunek 1). System jest wzbudzany kolejką komunikatów symulującą upły-
wający czasu i rozliczanie portfeli algorytmu. W każdej chwili wirtualnego czasu informa-
cje o stanie gotówki i pozycjach algorytmu są zapamiętywane, co umożliwia póżniejszą
precyzyjną weryfikacje wyników.
Metodologia walk forward
Przy konstrukcji systemów inwestycyjnych kluczowym elementem jest właściwy sposób testowania. W szczególności, dane użyte do weryfikacji wyniku inwestycyjnego powinny zostać oddzielone od tych, wykorzystanych do uczenia algorytmu (wybory optymalnych parametrów). W poprzednim rozdziale pokazaliśmy, że wykorzystanie tych samych danych do trenowania algorytmu oraz do późniejszej weryfikacji prowadzi do znacznego zawyżenia potencjalnych możliwości generowania zysków. W skrajnym przypadku niewłaściwa meto- dologia testowania może doprowadzić do upadku funduszu inwestycyjnego lub bankructwa inwestora.
Jednym z ważnych celów niniejszej pracy jest zweryfikowanie realnych możliwości in- westycyjnych systemów dostępnych w literaturze. Wiele publikacji z dziedziny zastosowa- nia metod sztucznej inteligencji w konstrukcji systemów inwestycyjnych (por. Fong S., Si Y.W., Tai J. (2012), Jangmin O., Jangwoo Lee J., Jae Won L., Byoung-Tak Z. (2006), Wu M.C. , Lin S.Y , Lin C.H. (2006), Qing-Guo W., Jin L., Qin Q., Shuzhi Sam G.
(2011)) ukazuje znaczące braki w metodologii testowania (testowanie na danych z próby uczącej, zbyt mały okres danych, wybór jedynie niektórych specyficzncyh instrumentów).
. Z teorii wnioskowania statystycznego wynika, że nawet jeśli system testowany jest na danych out-of sample (ale bez użycia metodologii walk forward ), łatwo jest dobrać taką klasę instrumentów i taki okres, na którym osiągnie on ponadprzeciętne wyniki.
Rysunek 2: Analiza metodą walk forward
Klasyczna metoda weryfikacji statystycznych systemów uczących się zakłada podzie- lenie próby na dwa zbiory: uczący - na którym estymowane są parametry modelu oraz testowy - na którym dokonujemy weryfikacji modelu. Naturalne rozszerzenie stanowi me- toda kroswalidacji n-krotnej, w której dzielimy zbiór danych na n podzbiorów o równej liczności, trenujemy model na n − 1 podzbiorach i weryfikujemy na pozostałym fragmen- cie zbioru nie wykorzystywanym podczas uczenia. Proces weryfikacji i trenowania powta- rzamy n-razy tak, aby na każdym z n podzbiorów algorytm został zweryfikowany, po nauczeniu go na pozostałej części danych.
Metodologia walk forward stanowi adaptację metody kroswalidacji na potrzeby testo- wania modeli statystycznych adaptujących się dynamicznie (ang. on-line) do szeregów czasowych. W celu testowania systemu na danych spoza próby uczącej wprowadzamy metodę „okna kroczącego”. Przyjmijmy następujące oznaczenia:
DFL (ang. data feed length) - liczba poprzednich wartości szeregu czasowego po-
trzebnych do wygenerowania sygnału transakcyjnego na bieżącą chwilę czasu (np. dla
algorytmu EMA o długości średniej wykładniczej wynoszącej 13, DF L = 13).
OWL (ang. optimization window length) - długość okna danych w szeregu cza- sowym, na którym będziemy estymować parametry algorytmu (długość ogna zbioru uczą- cego).
TWL (ang. trading window length) - długość okna danych w szeregu czasowym, na którym będziemy weryfikować algorytm (długość ogna zbioru walidacyjnego).
Wyjaśnijmy dokładniej ideę walk forward na przykładzie optymalizacji parametrów algorytmu. Niech (X t ) oznacza szereg czasowy cen w agregacji dziennej. Załóżmy, że w bieżącej chwili t 0 = 0 uruchamiamy algorytm, co wymaga znalezienia optymalnych para- metrów do podjęcia decyzji inwestycyjnej. Przyjmując OW L = 400 optymalne parametry algorytmu będziemy poszukiwać na danych z ostatnich 400 dni:
A = (X t=t
0−OW L , X t=t
0−OW L+1 , . . . , X t
0) (1) Na podstawie szeregu (2) szacujemy stopę zwrotu algorytmu (lub inna przyjętą funkcję celu np. współczynnik Sharpe’a) dla wszystkich parametrów z badanej przestrzeni po- przez uruchomienie symulacji tradingu. Po wykonaniu wszystkich symulacji za aktualnie obowiązujące parametry przyjmujemy te, które maksymalizują funkcję celu. Przez kolejne T W L = 250 dni przyjmujemy, że algorytm jest zoptymalizowany i inwestujemy zgodnie z sygnałami generowanymi przez model dla ustalonych parametrów. Po okresie T W L powtarzamy proces optymalizacji szukając najlepszych parametrów w ostatnich OW L dniach. Proces weryfikacji algorytmu przy użyciu okien kroczących przedstawiony jest na rysunku 2.
Przy testowaniu algorytmów inwestycyjnych należy zachować niezwykłą ostrożność, zwracając szczególną uwagę, czy któreś z parametrów algorytmu nie zostały dostrojone do szeregu czasowego a priori. Istnieje wiele witryn świadczących usługi finansowe, gdzie po wykupieniu odpowiedniego abonamentu dostajemy dostęp do sygnałów transakcyjnych le- gitymujących się niemal idealnymi wynikami z przeszłości. Jak widzieliśmy w poprzednim paragrafie przeszukując odpowiednio przestrzeń parametrów możemy nawet z najprost- szego algorytmu stworzyć pozorną maszynę do zarabiania pieniędzy. Niestety, powtórzenie tak dobrego wyniku na realnym rynku jest zwykle mało prawdopodobne.
Niech (X t ) oznacza szereg czasowy cen w agregacji dziennej. Załóżmy, że w bieżącej chwili t 0 = 0 uruchamiamy algorytm, co wymaga znalezienia optymalnych parametrów do podjęcia decyzji inwestycyjnej. Przyjmując OW L = 400 optymalne parametry algorytmu będziemy poszukiwać na danych z ostatnich 400 dni:
A = (X t=t
0−OW L , X t=t
0−OW L+1 , . . . , X t
0) (2) Na podstawie szeregu (2) szacujemy stopę zwrotu algorytmu (lub inna przyjętą funkcję celu np. współczynnik Sharpe’a) dla wszystkich parametrów z badanej przestrzeni po- przez uruchomienie symulacji tradingu. Po wykonaniu wszystkich symulacji za aktualnie obowiązujące parametry przyjmujemy te, które maksymalizują funkcję celu. Przez kolejne T W L = 250 dni przyjmujemy, że algorytm jest zoptymalizowany i inwestujemy zgodnie z sygnałami generowanymi przez model dla ustalonych parametrów. Po okresie T W L powtarzamy proces optymalizacji szukając najlepszych parametrów w ostatnich OW L dniach. Proces weryfikacji algorytmu przy użyciu okien kroczących przedstawiony jest na rysunku 2.
Przy testowaniu algorytmów inwestycyjnych należy zachować niezwykłą ostrożność,
zwracając szczególną uwagę, czy któreś z parametrów algorytmu nie zostały dostrojone do
szeregu czasowego a priori. Istnieje wiele witryn świadczących usługi finansowe, gdzie po wykupieniu odpowiedniego abonamentu dostajemy dostęp do sygnałów transakcyjnych le- gitymujących się niemal idealnymi wynikami z przeszłości. Jak widzieliśmy w poprzednim paragrafie przeszukując odpowiednio przestrzeń parametrów możemy nawet z najprost- szego algorytmu stworzyć pozorną maszynę do zarabiania pieniędzy. Niestety, powtórzenie tak dobrego wyniku na realnym rynku jest zwykle mało prawdopodobne.
3 Rozmyte protoformy geometryczne - nowe podejście do rozpoznawania wzorców analizy technicznej
W pracy doktorskiej został przedstawiony nowy algorytm rozpoznawania formacji ana- lizy technicznej (Ładyżyński P., Grzegorzewski P. (2012)) bazujący na określaniu stopnia dopasowania wykresu cen do pewnego wzorca geometrycznego zdefiniowanego uprzednio jako tzw. protoforma (por. Zadeh L. (2002), Kacprzyk J., Wilbik A., Zadrożny S. (2008)).
Odpowiednie wartości związane z owymi protoformami, obliczone dla różnych horyzontów czasowych w danym punkcie czasu, są nastepnie podawane jako wektor uczący dla drzewa decyzyjnego, a klasyfikator decyduje czy dany dzień należy do interesującej nas formacji czy też nie (por. rys. 2).
Poniżej przedstawiono ideę działania systemu dostrojonego do wykrywania fazy kon- solidacji w notowaniach giełdowych:
1. Analityk przydziela każdemu punktowi na wykresie notowań (słupek cenowy z da- nego dnia) klasę - „należy do fazy konsolidacji”, bądź „nie należy do fazy konsolidacji”
2. Na wykres nakładamy filtr znajdujący maksima i minima cenowe w pewnym oknie czasowym. Przez punkty maksimów i minimów prowadzimy proste regresji i wyzna- czamy ich współczynniki kierunkowe: α (t b
p,t
0) ,α (t c
p,t
0) .
3. Jako prototyp poszukiwanego kształtu geometrycznego definiujemy za pomocą zbio- rów rozmytych protoforme (por. rys. 1). Wartość µ c (α (t c
p,t
0) ), czyli przynależność współczynnika kierunkowego jednej z prostych do zbioru µ c , mówi nam jak bardzo faza konsolidacji jest równoległa do osi czasu. Z kolei wartość µ par (α (t c
p,t
0) − α (t b
p,t
0) ), tzn. przynależność różnicy współczynników kierunkowych prostych regresji do zbioru µ par , jest cenną wskazówką o ich rownoległości. Wreszcie wartość µ SSE (σ Q (t
p,t
0) ) in- formuje nas o jakości dopasowania prostych regresji do minimów i maksimów cen.
M τ = max
t
p∈T (µ c (α (t c
p,t
0) ) · µ par (α (t c
p,t
0) − α (t b
p,t
0) ) · µ SSE (σ Q (t
p,t
0) ) · µ τ (t p )), (3) 4. Miary dopasowania protoform zdefiniowanych dla różnych horyzontów czasowych,
obliczonych za pomocą funkcji 3, tworzą wektor uczący dla klasyfikatora.
Powyższy system wymaga zdefiniowania a priori pewnych parametrów zewnętrznych
(są to horyzonty czasowe używane do poszukiwania protoform). Jednym z rozwiązań jest
dobranie ich na podstawie wiedzy eksperckiej. W rozprawie została zaproponowana mo-
dyfikacja algorytmu optymalizacji rojowej (ang. PSO - particle swarm optimization), po-
zwalająca na automatyczną ekstrakcje optymalnych horyzontów czasowych użytych do
budowy protoform z danych.
Rysunek 3: Funkcje przynależności zbiorów rozmytych użytych do obliczenia miary dopa- sowania protoformy.
Rysunek 4: Przykładowe fazy konsolidacji rozpoznane przez system.
4 Lasy losowe Breimanna i testy detekcji trendu w kon- strukcji systemów dynamicznie adaptujących się do finansowych szeregów czasowych o wysokiej niesta- cjonarności
Problemy z prognozowaniem dokładnych poziomów cen instrumentów finansowych skła- niają ku podejściu polegającemu na prognozowaniu jedynie kierunku ruchu cen oraz skła- daniu zleceń zgodnych z tym kierunkiem, zabezpieczonych odpowiednimi zleceniami typu stop loss. W rozprawie został zaproponowany system prognozozujący kierunek ruchu cen za pomocą nieparametrycznej estymaji ceny maksymalnej
H i n = max {C i+1 , C i+2 , . . . , C i+n } (4) oraz minimalnej
L n i = min {C i+1 , C i+2 , . . . , C i+n } (5) w następnych n okresach za pomocą lasów losowych Breimanna.
Las losowy estymuje funkcje prognozujące ceny maksymalne i minimalne:
H ˜ i = f h ( x (1) i , x (1) i−1 , . . . , x (1) i−k , x (2) i , x (2) i−1 , . . . , x (2) i−k ,
. . .
x (n) i , x (n) i−1 , . . . , x (n) i−k )
(6)
L ˜ i = f l ( x (1) i , x (1) i−1 , . . . , x (1) i−k , x (2) i , x (2) i−1 , . . . , x (2) i−k ,
. . .
x (n) i , x (n) i−1 , . . . , x (n) i−k )
(7)
x (1) , x (2) , . . . , x (n) - współczynniki filtrujące właściwości szeregu czasowego cen (wartości p- value testów detekcji trendu i wybrane współczynniki analizy technicznej) w danej chwili.
Jednymi z filtrów wykorzystanych w systemie będzie wskaźnik siły względnej - RSI RSI k d = 100 − 100
1 + RS k d , (8)
gdzie
RS k d =
P d−1
i=0 (X k−i − X k−i−1 )I (x≥0) (X k−i − X k−i−1 )
− P d−1
i=1 (X k−i − X k−i−1 )I (x<0) (X k−i − X k−i−1 ) , (9) a X i oznacza cenę instrumentu w chwili i), oraz oscylator Williamsa
W L d k = 100 max{X k , X k−1 , . . . , X k−d−1 } − X k
max{X k , X k−1 , . . . , X k−d−1 } − min{X k , X k−1 , . . . , X k−d−1 } . (10)
Niech C i oznacza aktualną cenę aktywa. Poglądowa reguła transakcyjna dla systemu
ma następującą postać:
¯
r all r ¯ bhall M ¯ drawdown all M ¯ drawdown bhall R ¯ year r ¯ all msc r ¯ msc bhall
RandomForest 119% 135% -50% -65% 12% 0.95% 1.22%
TwoLayerTree 34% 135% -65% -65% 1.08% 0.09% 1.22%
EMA -26% 66% -51% -65% -0.5% -0.04% 1.12%
TripleScreen -33% 130% -70% -65% -4.5% -0.39% 1.23%
Tablica 1: Wyniki inwestycyjne systemu RandomForest dla akcji z indeksu S&P500 w latach 2004-2013 w zestawieniu z innymi systemami omawianymi w rozprawie. ¯ r all - stopa zwrotu algorytmu uśredniona po wynikach uzyskanych na wszystkich akcjach z indeksu S&P500 w badanym okresie, ¯ r bh - średnia stopa zwrotu akcji indeksu S&P500 w bada- nym okresie, ¯ M drawdown all - średni max drawdown algorytmu na akcjach z indeksu S&P500, M ¯ drawdown bhall - średni max drawdown akcji z indeksu S&P500, ¯ R year - oczekiwana roczna stopa zwrotu z inwestycji w losowegy instrument przy użyciu algorytmu, ¯ r all msc - średnia miesięczna stopa zwrotu ze wszystkich portfeli zarządzanych przez algorytm, ¯ r msc bhall - śred- nia miesięczna stopa zwrotu z akcji należących do indeksu.
1. Jeśli odległość aktualnej ceny od prognozy minimum cen jest niewielka, tzn. |C
iC − ˜ L
i|
i
≤
σ, oraz ˜ L i jest w trendzie wzrostowym, to KUPUJ.
2. Jeśli odległość aktualnej ceny od prognozy maksimum cen jest niewielka, tzn. |C
iC − ˜ H
i|
i
≤
σ, oraz ˜ H i jest w trendzie spadkowym, to SPRZEDAJ.
Istnienie trendu jest testowane za pomocą statystyk testowych podanych w pracy (Łady- żyński P., Grzegorzewski P. (2010)).
Wyniki systemu dla akcji z indeksu S&P500
Tablica 1 przedstawia wyniki systemu dla rynku akcji w porównaniu z innymi syste- mami badanymi w pracy: TwoLayerTree systemem opartym na dwuwarstwowym drzewie klasyfikacyjnym zaproponowanym przez Jar-Long Wanga, Shu-Hui (2006), TripleScreen - jednym z najbardziej znanych mechanicznych systemów inwestycyjnych zaproponowanym przez Elder (2009), EMA - klasyczną średnia ruchomą. Wyniki systemu wypadły najlepiej spośród omawianych, jednak nie udało się pokonać benchmarku. Rysunek 5 przedstawia przykładową linię kapitału portfela zarządzanego przez system.
Reguła portfelowa
Do zaprezentowanego algorytmu inwestycyjnego zaproponowano w rozprawie regułę port- felową selekcjonującą akcje do budowy portfela zarządzanego przez algorytm. Wybranie a posteriori spółek spośród 420, które najlepiej radziły sobie w przeszłości niesie za sobą poważne ryzyko data-snoopingu. Zbudujemy zatem portfel na zasadzie okna kroczącego:
co ustalony okres czasu T W L do portfela wybierzemy N = 15 spółek, na których algo-
rytm radził sobie najlepiej w ostatnich OW L dniach. Przez kolejne T W L dni otwieramy
pozycje z sygnałów transakcyjnych generowanych przez algorytm jedynie na wybranych
spółkach. Po zakończeniu okresu T W L sprzedajemy wszystkie akcje i kolejny portfel bu-
dujemy ze strategii, które najlepiej radziły sobie na ostatnim okresie OW L, stosując
Rysunek 5: Wyniki systemu RandomForest grającego na akcjach spółki AVY z indeksu S&P500.
zasadę równego podziału kapitału. Dzielimy kapitał uzyskany po sprzedaży na N = 15
równych części. Dla wybranych strategii, które aktualnie mają otwarte pozycje, kupujemy
(bądź sprzedajemy na krótko) akcje, a dla tych które nie mają otwartych pozycji pozo-
stawiamy kapitał i czekamy na sygnały systemu. Ponieważ wyniki portfela weryfikujemy
na danych, których nie używaliśmy do wyboru spółek, na których algorytm radził sobie
najlepiej, minimalizujemy ryzyko data-snoopingu. Do konstrukcji portfela użyliśmy para-
metrów OW L = 125, T W L = 60. Tablice 2 i 3 zawierają zestawienie wyników systemów
omawianych w rozprawie w porównaniu ze zwrotem z indeksu S&P500. Zaprezentowa-
nemu systemowi udało się pokonać benchmark osiągając oczekiwaną miesięczną stopę
zwrotu na poziomie 2.5 raza większym od indeksu przy zachowaniu tego samego poziomu
drawdownu. System również okazał się bardziej efektywny od systemu TwoLayerTree za-
proponowanego przez Jar-Long Wanga, Shu-Hui (2006). Rysunek 6 przedstawia krzywą
kapitału portfela skomponowanego ze strategii RandomForest natomiast rysunek 7 histo-
gram miesięcznych stóp zwrotu. Histogram jest wyraźnie przesunięty w stronę dodatnich
zwrotów. Na uwagę zasługuje ciężki lewy ogon. Większość mylnych decyzji systemu miała
miejsce na przestrzeni zaledwie 6 pojedynczych miesięcy - jeden miesiąc ze stratą wy-
noszącą -40% oraz 5 miesięcy ze stratami rzędu -20%. Rysunki 8 i 9 przedstawiają linie
kapitału pozostałych algorytmów z tabeli 2.
¯
r portf r ¯ bh M ¯ drawdown portf M ¯ drawdown bh R ¯ year r ¯ msc portf r ¯ bh msc RandomForestPortf 248% 53.8% -61% -57% 27% 2.01% 0.79%
TwoLayerTreePortf 34% 53.8% -38% -57% 10% 0.8% 0.79%
TripleScreenPortf 15% 53.8% -56% -57% 2.4% 0.2% 0.79%
Tablica 2: Wyniki reguły portfelowej nałożonej na algorytm RandomForest oraz na inne algorymy omawiane w rozprawie. Test na rynku akcji S&P500 w latach 2004-2013. ¯ r portf - stopa zwrotu portfela, ¯ r bh - stopa zwrotu indeksu S&P500, ¯ M drawdown portf - max drawdown portfela, ¯ M drawdown bh - max drawdown indeksu S&P500, ¯ R year - oczekiwana roczna stopa zwrotu z portfela, ¯ r msc portf - średnia miesięczna stopa zwrotu z portfela, ¯ r bh msc - średnia mie- sięczna stopa zwrotu z indeksu.
Rok SP500 RandomForestPortf
2005 5.55% 46.46%
2006 11.64% 11.27%
2007 2.15% 39.76%
2008 -35.61% -49.96%
2009 21.59% 51.78%
2010 12.25% 28.30%
2011 0.40% -9.91%
2012 14.51% 27.33%
2013 26.39% 36.64%
Tablica 3: Roczne zestawienie zwrotów uzyskanych z reguły portfelowej nałożonej na algorytm RandomForest w porównaniu ze zwrotem z indeksu SP500.
Rysunek 6: Wykres kapitału portfela skonstruowanego ze strategii RandomForest
grającej na akcjach indeksu S&P500.
Rysunek 7: Histogram miesięcznych stóp zwrotu portfela skonstruowanego ze strategii RandomForest grającej na akcjach indeksu S&P500.
Rysunek 8: Wykres kapitału portfela skonstruowanego ze strategii TwoLayerTree grającej
na akcjach indeksu S&P500.
Rysunek 9: Wykres kapitału portfela skonstruowanego ze strategii TripleScreen grającej na akcjach indeksu S&P500.
Adaptacja modelu on-line do niestacjonarnego dwuwymiarowego mieszanego modelu
Blacka-Scholesa-Markova
W bieżącym rozdziale przytoczymy rezultaty badania możliwości zaproponowanego sys- temu do dynamicznej adaptacji do niestacjonarnego szeregu czasowego generowanego na podstawie uprzednio zdefiniowanego modelu matematycznego.
Niech (S i , Y i ) n i=0 oznacza realizację dwuwymiarowego procesu stochastycznego. Niech (Y i ) n i=0 oznacza dyskretny proces Markova o macierzy przejścia
p(k, l) = P (Y i = k|Y i−1 = l) =
149
150 1 1 150 70
69 70
, (11)
gdzie k, l = 0, 1. Proces Y ma tylko dwa stany i symuluje wartość pewnego ważnego wskaźnika analizy technicznej. Y poprzedza znaczne ruchy cenowe trajektorii cen S i ge- nerowanej z modelu Blacka-Scholesa. Y = 0 oznacza, że ceny znajdują się w trendzie wzrostowym. Jeśli Y zmienia swój stan z 0 na 1, pięć jednostek czasu później szereg cen S i doświadcza 25% załamania oraz trend rosnący zostaje zmieniony na trend spadkowy.
Z drugiej strony jeśli Y zmienia stan z 1 na 0, pięć jednostek czasu później trend malejący zamienią się w rosnący.
Niech S 0 = 100 oznacza cenę początkową aktywa. Załóżmy, że Y 0 = 0 oraz a 0 = 1 - początkowy trend (trend rosnący), r = 0.005, σ = 0.002. Następujące równanie definiuje proces cen S i zależny od zmiennej Y i :
S i = S i−1 exp((a i r − σ 2
2) + σZ i ), jeśli Y i−5 = 0
0.75S i−1 , jeśli Y i−5 = 1, (12)
gdzie Z i oznacza zmienną losową o rozkładzie standardowym normalnym oraz a i dane jest
RandomForest vs Benchmark
Godziny
Rysunek 10: Wartość portfela zarządzanego przez algorytm vs benchmark (wartość port- fela zbudowanego z zakupu za kapitał początkowy jednostek indeksu, czyli trajektorii otrzymanej z modelu).
wzorem
a i = a i−1 , jeśli Y i−5 = 0
−a i−1 , jeśli Y i−5 = 1. (13)
Wyniki symulowanej gry systemu na cenie aktywa generowanej z modelu ilustruje rysu- nek 10. Wartości zmiennej Y zostały podane do macierzy uczącej systemu inwestycyjnego w miejsce danej oznaczającej wolumen. MSE prognozowanych wartości out-of-sample ˜ H ri n oraz ˜ L n ri wyniosły, odpowiednio, 0.01 i 0.013, co w porównaniu z prognozą maksymalnych i minimalnych poziomów cen ceną zamknięcia
M SE (H
nri
,C) = v u u t
N
X
i=5
1 N − 5
max(C i−4 , C i−3 , . . . , C i ) − C i−4 C i−4
2
(14)
M SE (L
nri
,C) = v u u t
N
X
i=5
1 N − 5
min(C i−4 , C i−3 , . . . , C i ) − C i−4 C i−4
2
, (15)
wynoszącą, odpowiednio, M SE (H
nri
,C) = 0.08, M SE (L
nri