Problemy z systemami transakcyjnymi – level hard

Uprzedzę na wstępie, że tym razem będzie to wpis nietypowy, a do tego wyprodukowany w specjalistycznym języku, którego nie przy każdym temacie da się uniknąć.

Nietypowy dlatego, że oddam w całości miejsce Jackowi Lempartowi. Temu, kto czytał „Leksykon formacji świecowych” lub testował związany z tą książką i opisywany na tym blogu program BossaCandleScanner, to nazwisko powinno być znajome. Jacek profesjonalnie zajmuje się programowaniem, a przy tym systemami transakcyjnymi, nie można mu więc odmówić i wiedzy teoretycznej, i praktycznej. Nasze drogi wielokrotnie się przecinały, a tym razem zbiegły w pewnej wspólnej sprawie.

Mianowicie wciągnął mnie on w dyskusję nad pewnym artykułem, którego szczegóły poznamy za chwilę. Dotyczy on zarówno polskich funduszy inwestycyjnych opartych o algorytmy, jak i pewnego rodzaju systemów tradingowych tworzonych w technologii „machine learning”, czyli stopień lub dwa wyżej od klasycznych systemów transakcyjnych, które większość z nas zainteresowanych tematem zajeżdża. Jacka zbulwersowało nieco mało fachowe podejście autora artykułu do tematu i próbował ripostować, choć bez skutku. Zaproponowałem więc, że oddam mu w tym celu miejsce na swoim blogu. Z wielu pobudek. Choćby dlatego, że temat jest niezwykle interesujący i nośny edukacyjnie. Ale również dlatego, by rzeczowymi dyskusjami ubogacać naszą branżę, która w ostatnich latach w publicznej sferze mocno podupadła. A przy tym obu nas nie interesują personalne rozgrywki, jedynie czysta, merytoryczna dyskusja. Temat nie jest łatwy, ale wart głębszych rozważań. Oddaję mu więc klawiaturę.

——————————-

                    Beznadziejne fundusze oparte na algorytmach

„Fundusze algorytmiczne i quant to zazwyczaj inwestycyjna porażka. 5 powodów dlaczego tak jest…” – tak zatytułowany został niedawno jeden z artykułów na łamach popularnego serwisu poświęconego tematyce giełdowej (https://strefainwestorow.pl/artykuly/fundusze-inwestycyjne/20171011/fundusze-quant-algorytmiczne-wyniki). Chwytliwy tytuł, a do tego już w samym tytule prosto wyjaśnia temat, który dla wielu wydaje się nader skomplikowany. Od razu napiszę: nie czuję się urażony, że ktoś krytykuje algorytmy.

Cóż, algorytmy w finansach to po prostu narzędzie, które można lepiej lub gorzej wykorzystać w praktyce. Same w sobie nie są celem, ale mogą być środkiem do osiągnięcia określonego celu. Niestety odniosłem wrażenie, że autor nie podszedł zbyt rzetelnie do prezentowanej w artykule materii.

Impulsem do napisania niniejszej riposty była postawa owego portalu na Twitterze, gdzie promowano rzeczony artykuł. Pan Paweł Biedrzycki, co prawda niebędący autorem, lakonicznie odpisał w ripoście jednemu z oponentów tytułowej tezy:

“Prawda, na 1 skuteczny algorytm 5 przynosi stratę. Sumarycznie biorąc strategie się znoszą, a koszty transakcyjne pogrążają całkowity wynik.”

Notabene, gdyby 1 na 5 biznesów (dowolnej branży) zakończył się sukcesem, to byłoby pięknie.

Próbowałem wymienić poglądy z Panem Pawłem na Twitterze, ale druga strona nie wykazała zainteresowania, zbywając mnie milczeniem.

Do mojej riposty znalazł się jeszcze i kolejny powód: ów artykuł mało merytorcznie odwołuje się do prezentacji pod tytułem “The 7 Reasons Most Machine Learning Funds Fail” (7 powodów, dlaczego większość funduszy opartych na metodach uczenia maszynowego odnosi porażkę), której autorem jest Marcos López de Prado, dyrektor zarządzający Guggenheim Partners, pracownik Lawrence Berkeley National Laboratory, a w przeszłości związany z ilościowym podejściem do inwestowania (pracował jako quant). Podkreślę tu szczególnie owo wyrażenie „machine learning” (uczenie maszynowe, w skrócie ML), które jest istotne w całej prezentacji, a które “umknęło” Autorowi artykułu, ale o tym nieco później.

Tak na marginesie, prezentacja Lopeza zawiera 7 powodów porażek z wykorzystaniem ML, natomiast autor w artykule odniósł się do 5. Czyżby z litości do krytykowanych algorytmów? 🙂

O co w ogóle w tym całym maszynowym uczeniu i tradingu chodzi? Aby stało się to jasne również dla mniej zaawansowanych Czytelników wyjaśnijmy, że w obecnym świecie transakcje na rynkach kapitałowych zawierane są już nie tylko przez ludzi, ale i przez uprzednio przystosowane do tego celu komputery, a ściślej rzecz ujmując – algorytmy komputerowe. Na niektórych rynkach wręcz to komputery odpowiadają za większy obrót niż ludzie, zatem to już żadna ciekawostka, a po prostu codzienność. Nie od dziś. Algorytmy takie decyzje mogą podejmować na podstawie wielu różnych przesłanek, by wspomnieć najistotniejsze:

  • takie, które opierają się na analizie technicznej, czy fundamentalnej, zajmując kierunkowe pozycje w sposób przypominający działania ludzi,
  • popularne są algorytmy specjalizujące się w arbitrażu statystycznym, wykorzystującym chwilowe zaniki korelacji pomiędzy dwoma lub wiecej walorami,
  • algorytmy analizujące publikowane w internecie treści, by na ich podstawie podejmować transakcje,
  • algorytmy obsługujące popularne dziś ETF’y, czy też składanie zleceń,
  • często obwiniane za największe zło współczesnych rynków algorytmy wysokich częstotliwości (ang. High Frequency Trading, HFT), które mogą być wykorzystywane do wielu “niecnych” zagrywek, m.in. do wspomnianego arbitrażu statystycznego, a których przewaga tkwi w super szybkim czasie reakcji, gdzie wykonanie liczy się w nanosekundach (miliardowych częściach sekundy),
  • mamy też niezliczone wersje hybryd, w których miesza się wiele tych podejść.

A gdzie w tym wszystkim mieści się wspomniany w artykule „machine learning” (ML)? I co to w ogóle jest? Ano właśnie – Autor artykułu specjalnie się tym nie zajął, pomimo że opierał się o materiał, który tego właśnie pojęcia przede wszystkim dotyczył. Owszem, opisane problemy można odnieść również do algorytmów niekorzystających z ML, ale to właśnie wykorzystanie ML potęguje niejako ich doniosłość. Autor artykułu natomiast nie zrobił tutaj najmniejszego rozróżnienia. A jest ono kluczowe, gdyż w całym świecie algorytmicznych funduszy ML stanowi tylko podzbiór, a poza tym ma się nijak do wymienionych we wstępie artykułu funduszy, które z ML nie korzystały.

A czym jest w ogóle uczenie maszynowe? Otóż w wielkim uproszczeniu (proszę tu purystów w temacie o wybaczenie), jest to szeroka klasa algorytmów zaliczana do metod sztucznej inteligencji, które potrafią się same “uczyć” w sposób próbujący naśladować ludzi. Jeszcze inaczej pisząc, zadaniem ‚machine learning’ jest realizacja tego, co nam ludziom przychodzi naturalnie – uczenie się na podstawie własnych doświadczeń. Nie są to zatem algorytmy ze z góry zakodowaną na stałe ścieżką wykonania typu: „jeśli wystąpi A, wykonaj B”. W uczeniu maszynowym algorytm uczy się na podstawie dostarczanych mu danych, starając się uzyskiwać coraz to lepsze wyniki bez ingerencji człowieka w jego kod. Jest to forma poszukiwania i optymalizacji najlepszych rozwiązań. Natomiast to, że mamy algorytm wpięty w realne inwestowanie, nie musi znaczyć, że stoi za nim ‚machine learning‚. Czasami nie da się łatwo nawet tego określić: przykładowo są algorytmy ‚machine learning’ służące do budowania algorytmów “klasycznych”, czyli niebędących już typu ‚machine learning’. Po prostu, zamiast samemu ręcznie wymyślać algorytm (czytaj – ręcznie wymyślać i kodować logikę strategii), zlecamy tę robotę procesowi uczenia maszynowego. Z dobrodziejstw podobnych algorytmów korzystamy również w naszych smartfonach, samochodach, domach itd. każdego dnia, nie zdając sobie z tego najczęściej sprawy.

Rażąco niedopracowane wydają się być następujące uwagi Autora, które pozbawione argumentów powielają chwytliwe dla mniej rozeznanych w temacie slogany:

  • Fundusze oparte na algorytmach nie mogą się pochwalić super wynikami
  • Wielu ekspertów przestrzega przed zbyt dużą obecnością automatów na rynkach, co grozi krachem
  • Nie da się „podłączyć” strategii do mechanizmu ‚machine learning’ i generować zyski na zasadzie plug&play

Nietrafione przy tym wydaje się posłużenie prezentacją Lopeza, która nie dość, że odnosi się głównie do niepowiązanych z naszymi funduszami technik ML, to nie tyle krytykuje same algorytmy jako takie, ile wskazuje grzechy jakie popełniane są przy ich stosowaniu, podając przy tym konkretne propozycje ich naprawienia.

No dobra, ale nawet gdyby to pominąć, i faktycznie przyglądnąć się tym algorytmom na rynkach, to czy faktycznie jest tak źle?

Aby to ocenić przyglądnijmy się 5 powodom wymienionym w artykule, a będących skrótowymi nawiązaniami do tez Lopeza. Przy tej okazji wyraźny okaże się rozjazd między tym, co postuluje Lopez, a rozumieniem tego przez autora artykułu.

POWODY PORAŻEK ALGORYTMÓW NA RYNKU

     Po pierwsze: Syndrom Syzyfa
W przypadku tradycyjnych funduszy dyskrecjonalnych, gdzie nie mamy ścisłych reguł decyzyjnych, celem dywersyfikacji efektów pracy zarządzających portfelami stosowana jest tzw. silosowa kultura pracy. Chodzi o to, aby jeden zarządzający nie wpływał na decyzje innych zarządzających, a tzw. silos stosowany jest jako środek do umożliwienia niezależnej pracy poszczególnych zarządzających (zapewnia dywersyfikację).

Tymczasem w przypadku strategii typu quant, w tym wykorzystujących ‚machine learning’, takie podejście jest niemożliwe w realizacji, ponieważ na barki zarządzającego portfelem spada zbyt wiele pracy w wielu obszarach: od budowy teoretycznej koncepcji, przygotowania danych, wydajnej infrastruktury obliczeniowej, programowania, po backtesting i egzekucję na rynku. Każdy obszar charakteryzują odmienne kompetencje. Próba stworzenia silosów w przypadku strategii ilościowych, gdzie każdy silos odpowiada za wszystkie etapy procesu ich tworzenia jest przyczyną porażek.

Niestety Autor artykułu pomija to, jak Lopez sugeruje rozwiązywać tę trudność natury organizacyjnej. Problem Syzyfa nie jest bowiem czymś, co dyskwalifikuje podejście algorytmiczne w inwestowaniu – można go rozwiązać poprzez stosowanie tzw. paradygmatu meta-strategii. Polega on na tym, że zamiast mini zespołów (silosów) budujących strategie, organizowana jest „fabryka”, w której proces budowy przypomina linię produkcyjną. Na takiej linii jasno wydzielone są zadania i podzadania, a jakość ich realizacji jest niezależnie kontrolowana. Rola quanta sprowadza się do tego, by specjalizować się w konkretnym wycinku prac wykonywanych na linii produkcyjnej, zachowując całościowe zrozumienie procesu.

Co warte podkreślenia, meta-strategia zbudowana jest w duchu ilościowego podejścia, lub jak kto woli, jest po prostu sama w sobie również algorytmem. Dzięki temu może być testowana i poprawiana jeszcze zanim zostanie wdrożona do biznesu. Meta-strategia zapewnia obiektywny i spójny nadzór nad pracą zespołu, pomagając w unikaniu powtarzających się błędów.

Tymczasem artykuł spłyca zagadnienie do stwierdzenia „(…) większość funduszy zatrudnia jednego, lub najwyżej kilku ekspertów, do stworzenia strategii dla funduszu quant.”. A potem dodaje, że to daremny wysiłek. I to wszystko. Nazbyt płytkie wejście w temat. Tym bardziej, że meta-strategia proponowana przez Lopeza może z powodzeniem być wykorzystywana przez tradycyjne fundusze, gdzie decyzje inwestycyjne podejmowane są w sposób dyskrecjonalny.

Ba, wiele wskazuje, że wręcz tak dziać się powinno! Wyobraźmy sobie fundusz hedge, który rekrutuje zarządzającego portfelem. Celem kandydata jest generowanie alfy (zwrotów powyżej benchmarku), zatem idealny kandydat powinien pochwalić się historią portfela, w którym za okres 10 lat wskaźnik Sharpe ma wartość powyżej 2. Jest bardzo mało prawdopodobne, aby niewykwalifikowany zarządzający uzyskał taki wynik dzięki ślepemu trafowi, zatem rekrutujący są przekonani, że ten sposób odsieje słabych kandydatów. Niestety jest to naiwne podejście, ponieważ całkowita liczba kiepskich zarządzających jest nieznana i przypuszczalnie duża. Zatem, chociaż mało prawdopodobne jest, aby ktoś taki uzyskał doskonały odczyt Sharpe, w populacji składającej się z samych zarządzających z tak wysokim wskaźnikiem, niewykwalifikowanych zarządzających może być bardzo wielu! Receptę na te bolączkę Lopez podaje w punkcie 5 swojej prezentacji poświęconemu over-fittingowi, gdzie proponuje stosowanie tak zwanego Deflated Sharpe Ratio (DSR). Chodzi o to, by w procesie rekrutacji wziąć pod uwagę liczbę przesłuchiwanych osób by ustrzec się błędu selekcji.

Konkludując: fundusze niestosujące algorytmy w procesie podejmowania decyzji inwestycyjnych mogą być paradoksalnie ofiarą… złudzenia backtestów, tak ochoczo napiętnowanych przez Szanownego Autora. I to pomimo braku ich formalnego (świadomego) wykonywania.

Rację ma zatem Autor pisząc, że praca nad strategiami powinna być realizowana w ramach dobrze zorganizowanego organizmu. Szkoda tylko, że nie chce już zauważyć, że receptą na zbudowanie skutecznego zespołu ekspertów jest… ów „zły” algorytm, w postaci meta-strategii.

     Po drugie: Problem pamięci
Tutaj wysuwana jest przez Autora ciężka artyleria na algorytmy: “(…) każda zautomatyzowana strategia inwestycyjna opiera się na pamięci o przeszłych cenach i trendach. Problem w tym, że takie dane najczęściej nie są porównywalne, czy też nie przystają, do warunków panujących obecnie na rynku. Rzeczywistość się zmienia, nieprawdaż?”. Prawdaż. I pewnie dla miłej odmiany w tradycyjnych funduszach zarządzający niczym Marty McFly, ze znakomitego filmu Zemeckis’a, podróżują w czasie do przyszłości, by dla swoich klientów zdobyć przyszłe notowania giełdowe, celem poprawienia swoich wyników inwestycyjnych, dzięki czemu pewnie biją (?) na głowę fundusze algorytmiczne 😉

Nawiasem dodając, ciekaw jestem czy Czytelnicy wiedzą, że takie podróżowanie w czasie jest… faktycznie możliwe? To wcale nie żart – niektóre fundusze korzystające z HFT tak właśnie robią. Nie jest aż tak romantycznie, bo zamiast podróży we wnętrzu pięknego DeLorean’a (trzymając się analogii Pana McFly), mamy podróż we wnętrzu światłowodu inicjowaną super szybkimi algorytmami. A do tego nie podróżujemy w czasie o 20-30 lat, a zaledwie tylko o maleńkie ułamki sekundy. Ale i tak nieco magii pozostaje. Co ciekawe, takie algorytmy mogą być naprawdę bardzo proste (i, nawiasem mówiąc, nie mają najczęściej nic wspólnego z uczeniem maszynowym!), bo cała ich przewaga tkwi w tym, że z małym wyprzedzeniem znają ceny rynkowe, zanim zapozna się z nimi większość uczestników rynku. Mając taką przewagę w rynku, dalsze komplikowanie strategii nie ma sensu. Ryzyko takiej zabawy jest minimalne, sprowadzając się właściwie do tego, że z czasem ktoś może być jeszcze szybszy i nasza przewaga czasowa już nie wystarczy do generowania zysków.

Wróćmy jednak do sedna. Sęk w tym, że w tym punkcie Lopezowi chodziło o zgoła inny problem niż pokazuje go w omówieniu Autor artykułu. Nie rzecz w tym, że korzystać musimy z danych historycznych, bo to oczywiste (!), ale jak korzystać z tych danych właściwie.

Częsta porażka funduszy korzystających z ML wynika z tego, że dane, jakie znamy z wykresów, muszą być przekształcone do postaci, w której mają one postać znormalizowanych (porównywalnych) stacjonarnych serii. Niestety taki zabieg powoduje, że kosztem uzyskania stacjonarności, pozbywamy się z tych danych informacji o pamięci rynkowej, niezbędnej do tego by algorytm miał zdolność prognostyczną do generowania sygnałów transakcyjnych. Przykładem pamięci rynkowej może być być informacja o tym jak bardzo daleko cena określonego waloru wychyliła się od długoterminowej wartości oczekiwanej. Konstruktorzy funduszy stają zatem przed dylematem określenia minimalnego poziomu zróżnicowania (znormalizowanych już) cen tworzących stacjonarne serie, przy zachowaniu maksymalnej ilości pamięci o rynku. W tym celu Lopez liczy statystyczne wartości tzw. testu ADF (Augmented Dickey-Fuller test) dla różnych poziomów, wykorzystując dane najbardziej płynnych kontraktów terminowych na świecie. Puentuje, że przez dekady większość badaczy finansowych opiera się na danych o zbyt wysokim poziomie zróżnicowania, a więc takich, gdzie wymazana jest pamięć rynkowa, co w efekcie prowadzi do znanego dopasowania się modelu do krzywej.

Reasumując: chcąc inwestować w realnym świecie, skazani jesteśmy na uczenie się w oparciu o historyczne dane. Robienie z tego tytułu zarzutu jest niedorzecznością. Trudność leży w tym, by umiejętnie wycisnąć z nich jak najwięcej, a tutaj z pomocą przychodzi wyrafinowany aparat matematyczny. Parafrazując Autora: rzeczywistość się zmienia, a odpowiednie reagowanie na te zmiany nie musi być proste, nieprawdaż? Nie znaczy to jednak, że nie można tego zrobić, a Lopez pokazuje jak tego dokonać na konkretnym przykładzie.

     Po trzecie: Nieefektywne pobieranie danych
Zacytuję: “Automat nie potrafi selekcjonować informacji wedle ich ważności. Jest nastawiony na regularne pobieranie danych. To powoduje, że jego metodyka pobierania danych z rynku jest nieefektywna.”.

Jak się domyślam, Autor pije do punktu prezentacji, w której Lopez porusza problem nieefektywności w próbkowaniu danych rynkowych. Domyślam się jedynie, ponieważ stwierdzenie Autora w artykule jest bardzo lakoniczne, mające na celu tylko dowodzić z góry założoną tezę o beznadziei algorytmów, ale ani nic nie wyjaśnia, ani nie odnosi się rzetelnie do Lopeza.

Dla ścisłości: próbkowanie, a pobieranie, to nie to samo! Przykładowo, 30 minutowy słupek na wykresie jest próbką zawierającą 30 minutową migawkę fluktuacji ceny waloru (OHLC). Gdy wykres jest rysowany w czasie rzeczywistym, ostatni słupek (próbka) tworzy się przez 30 minut, a ceny HLC ulegać mogą zmianie (niezmienna jest tylko cena otwarcia słupka-O). Ostateczna próbka będzie w pełni narysowana dopiero po upłynięciu 30 minut, pomimo, że dane pobierane były cały czas.

Klasyczny wykres świecowy to nic innego jak próbkowanie czasowe. Lopez zwraca jednak uwagę, że informacje na rynek wcale nie napływają w stałym tempie, i że efektywniejsze podejście polega na próbkowaniu danych według zmiennych opartych na ilości napływających danych, np. według ilości transakcji, wolumenu lub ceny. Mówiąc inaczej, sugeruje użycie interwału opartego o ilość napływających informacji, a nie upływający czas. Jak to zrealizować? Wyobraźmy sobie, że na wykresie każdy słupek nie opisuje np. 30 minutowego interwału, ale zmiany cen zaistniałe w czasie określonym przez wolumen obrotu, np. 1000 kontraktów terminowych.

Próżno jednak szukać u Lopeza stwierdzeń, które znajdują się w artykule, o tym, że algorytmy nie potrafią selekcjonować informacji wedle ich ważności. Lopez skupia się przede wszystkim na efektywniejszym wykorzystaniu informacji rynkowych.

     Po czwarte: Brak analizy danych na bieżąco

Ponownie cytat: “Strategie powstają na podstawie zebrania danych (informacji) i wyciągania na ich podstawie wniosków. Problem w tym, że dane (informacje) pochodzą z wielu różnych (długich) okresów i nie są analizowane na bieżąco, więc nie jest pewne, co wywołało pojawienie się takich, a nie innych danych (informacji). W związku z tym każde strategie oparte na historii są obarczone błędem.”

Tutaj odnoszę się wrażenie, że Autor chyba nie odniósł się do prezentacji Lopeza w ogóle lub też jej nie zrozumiał. Mogę się tylko domyślać, co Autor miał na myśli. Prawdopodobnie odniósł się do tzw. metkowania danych (ang. data labelling), które jest kluczowym aspektem w niektórych technikach wykorzystujących ML, oraz/lub do tzw. problemu „rozlanych próbek”.

Metkowanie można wyobrazić sobie, gdy przykładowo chcemy, aby algorytm potrafił rozpoznawać na zdjęciach samochody. Musimy go tego jednak wcześniej „nauczyć” w ten sposób, że dostarczymy mu wiele różnych zdjęć i powiemy, na których samochody są obecne, a na których ich nie ma – innymi słowy dostarczymy mu „ometkowane” dane. Dzięki temu algorytm może później działać już na danych „nie ometkowanych”. Mając w „pamięci” wcześniej prezentowane zdjęcia z opisem, może samodzielnie „wywnioskować” czy na nowo prezentowanym zdjęciu jest obecny samochód, czy też nie.

Analogiczny mechanizm można stosować na rynkach finansowych, chociaż wcale nie jest to tak proste do osiągnięcia. Jak zauważa Lopez, w świecie finansów w większości przypadków ML opiera się na metkach przedstawiających obserwacje dla stałego horyzontu czasowego, co wiąże się z tym, że takie dane (metki) nie niosą ze sobą przydatnych właściwości statystycznych do wykorzystania w strategiach. Remedium na to może być stosowanie metek zbudowanych ze wspomnianych już wykresów opartych o wolumen lub ceny zamiast czasu.

Jeszcze lepsze rezultaty przynoszą metki zbudowane na tzw. metodzie trzech barier. Metoda taka metkuje obserwacje według zasady kontaktu wykresu z pierwszą napotkaną barierą:

  • Pierwsze dwie horyzontalne bariery to klasyczne poziomy profit-take i stop-loss, zależne od zmienności rynkowej
  • Trzecia bariera przyjmuje postać wertykalną, definiowaną liczbą słupków na wykresie od momentu zajęcia pozycji i stanowi limit wygasania dla pozycji (jeśli bariery w postaci TP lub SL nie zostały wcześniej naruszone).

Z kolei w przypadku problemu tak zwanych „rozlanych próbek” Lopez nawiązuje do sytuacji, gdzie etykiety z czasem pokrywają się, co powoduje trudność w ustaleniu obserwacji stojącej za określonym efektem (wynikiem). Lekarstwem proponowanym przez Lopeza jest metoda nadająca wagi poszczególnym obserwacjom.

Niestety w tym punkcie, jak już wspominałem, Autor jest wyjątkowo niezrozumiały i ciężko odnieść się do przedstawionych w artykule zarzutów. Naprawdę trudno odgadnąć, co Autor miał na myśli wspominając o „braku analizy danych na bieżąco”. „(…) każde strategie oparte na historii są obarczone błędem”Lopez nie pisze o tym jak być perfekcjonistą w świecie finansów, a raczej jak z głową móc na nim przeżyć mając świadomość swoich ograniczeń.

     Po piąte: Złudzenie backtestów

Dla mniej zaznajomionych czytelników: backtest to procedura, w której zbudowana strategia jest testowana na danych historycznych, zanim podłączy się ją do handlowania. Dla uzyskania większej pewności co do efektywności strategii na realnym rynku stosowane są niezliczone sztuczki, a cały proces testowania może spokojnie zajmować wielokrotność czasu spędzonego na samą budowę strategii. I autor artykułu ma rację: łatwo przekroczyć cieniutką granicę pomiędzy rzeczywistością a ułudą. Łatwo przekłamać wyniki w symulacji.

Jeszcze łatwiej być ofiarą błędnej procedury testowania, gdy do budowania strategii inwestycyjnych zaprzęgamy wielkie zbiory danych, uczenie maszynowe i sprzęt o wysokiej mocy obliczeniowej. Analitycy w takich warunkach mają dostęp do milionów alternatywnych strategii, a stąd krótka droga do problemu zbytniego dopasowania modelu do danych historycznych (backtest overfitting) i zderzenia się z fenomenem określanym mianem błędu selekcji (selection bias).

To nie znaczy jednak, że stosowanie metod typu data-mining jest z góry na przegranej pozycji! Autor artykułu nie wspomniał, że Lopez proponuje konkretny środek zaradczy w postaci skorygowanej miary Sharpe Ratio, nazwanej Deflated Sharpe Ratio (DSR). O co chodzi?

Wyobraźmy sobie, że w procesie budowania strategii wykorzystującej ML stworzono milion alternatywnych strategii, a my wybieramy tylko jedną, według naszych kryteriów najlepszą, na przykład o najwyższym odczycie Sharpe Ratio. Niestety, analogicznie jak przy opisywanym wcześniej problemie rekrutacji, takie podejście jest naiwne. Powinniśmy bowiem mieć wysoką pewność (w statystyce zakłada się często 95%), że wybrana strategia nie jest dziełem przypadku, i że tkwi w niej przewaga rynkowa. Operując na tak wielkiej próbie, prosty wybór najlepszej pod względem Sharpe Ratio strategii takiej pewności absolutnie nie daje. W literaturze obrazowo opisuje się ten problem przywołując historię o małpkach. Gdyby małpce dano klawiaturę, a ta zaczęłaby w nią stukać, mało realne jest, aby w wyniku tego powstało dzieło Szekspira. Jeśli jednak mielibyśmy możliwość rozdania klawiatur komputerowych milionom małp, i dalibyśmy im wystarczająco dużo czasu, możliwe, że wskutek tego któraś z małpek napisałaby dzieło Williama Szekspira. Sęk w tym, że nie mielibyśmy wówczas przypadku reinkarnacji wielkiego dramaturga, tylko zwykłego ślepego trafu. Tak wyselekcjonowana małpka nie byłaby w stanie łatwo powtórzyć swojego wyczynu, bo to co napisała nie wynikało z jej umiejętności, tylko było dziełem przypadku.

Wracając do strategii inwestycyjnych – nie chcielibyśmy, aby nasza wyselekcjonowana strategia była małpką, która przypadkowo uzyskała świetny wynik w symulacji komputerowej. Poszukujemy wszak strategii o realnej przewadze na rynku, która z wysoką pewnością pozwoli zarobić na rynku.

DSR proponowane przez Lopeza to przeciwwaga do „przekleństwa wygrywającego”, gdzie spośród wielu wygrywających alternatywnych strategii wybierana jest ta z najwyższą (najbardziej napompowaną) miarą Sharpe Ratio (Inflated Sharpe Ratio). Klasyczna miara Sharpe jest wynikiem dzielenia średniego zysku przez standardowe odchylenie (zysków i strat).  DSR natomiast zostało zaprojektowane tak, by bazując na idei klasycznego Sharpe uwzględnić dodatkowo m.in.:

  • Liczbę wszystkich alternatywnych strategii, z których wybierana jest jedna (najlepsza)
  • Statystyczny rozkład transakcji (z natury nie będący rozkładem normalnym, więc istotne jest jak ten rozkład transakcji się kształtuje)
  • Liczba transakcji systemu (inną wartość statystyczną ma wynik strategii oparty o 10 transakcji, a zupełnie inną o 1000 transakcji)

Dla zainteresowanych szczegółowy opis metryki DSR jest dostępny tutaj: https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2460551

To nie backtesting jest zły, jak chce autor artykułu, często zresztą jest nieunikniony, lecz wnioski z niego wyciągane! Paradoksalnie „ofiarą” niepoprawnie wykonanego backtestingu można być i bez stosowania algorytmów – wspominałem o tym przy punkcie pierwszym, odnosząc się do kwestii syndromu Syzyfa na przykładzie procesu rekrutacyjnego na zarządzającego funduszem inwestycyjnym. Nie trzeba robić formalnych testów, by po cichu przyjmować założenia co do przyszłości w oparciu o przeszłe zdarzenia. Świadomość popełnianych błędów tego rodzaju u ludzi stosujących algorytmy jest jednak o wiele większa, a pewność z jaką Autor wypowiada się o backtestingu wskazuje w gruncie rzeczy na jego naiwność.

POPROSZĘ O DOWODY
Autor wystawia bardzo srogą ocenę algorytmom w inwestycyjnym świecie. Ale co wspólnego ma wymienionych powyżej pięć punktów do wyników polskich funduszy?! Czy za tymi funduszami stały właśnie algorytmy wykorzystujące uczenie maszynowe? Czy popełnione zostały właśnie błędy przytoczone przez Lopeza? A jeśli tak, to które? To byłoby bardzo ciekawe i pouczające móc poznać te szczegóły.

Niestety odnoszę wrażenie, że artykuł był napisany pod tzw. publikę. Autor powołuje się w nim na autorytet Lopeza, ale najwyraźniej nie zrozumiał, co miał on do przekazania. Skupił się tylko na pułapkach, jakie czyhają na budujących algorytmy, ale nie wspomniał nic o konkretnych receptach jak z nimi sobie poradzić. Typowa krytyka dla krytyki.

FUNDUSZE ALGORYTMICZNE NA ŚWIECIE  I ICH WYNIKI
Wbrew temu, co sugeruje autor artykułu, fundusze inwestycyjne, za którymi stoją algorytmy mają się całkiem nieźle. Według rankingu 100 największych funduszy hedgingowych, układanego przez Institutional Investor’s Alpha (IIA, http://www.institutionalinvestorsalpha.com) na rok 2017, pięć funduszy z pierwszej szóstki to fundusze, które opierają się na algorytmach. Oto jak kształtuje się sześć największych funduszy hedge na świecie:

·         Bridgewater Associates

·         AQR Capital Management

·         J.P. Morgan Asset Management

·         Renaissance Technologies

·         Two Sigma

·         D.E. Shaw & Co.

Wszystkie fundusze z powyższej listy poza J.P. Morganem opierają się mniej lub bardziej na algorytmach. James Simons ze swoim flagowym Renaissance Technologies awansował w tym roku z pozycji 12 na 4. Czy fakt, że kapitał tak chętnie przypływa właśnie do zarządzających w oparciu o algorytmy jest oznaką ich słabości?

Gdybyśmy spoglądali na Europę, to tu numerem jeden jest David Harding ze swoją Winton Group. Jaką metodą porusza się po rynku? Cóż, algorytmy…

Najlepiej opłacani managerowie funduszy hedge? Proszę bardzo, w tym roku tak kształtuje się pierwsza trójka, a właściwie czwórka (odpuszczę sobie podanie konkretnych kwot):

·         James Simons z Renaissance Technologies

·         Ray Dalio z Bridgewater Associates

·         Ex aequo John Overdeck i David Siegel z Two Sigma

Co ich łączy? Zauważymy to patrząc na top listę funduszy światowych 2017 podaną wcześniej.

A co z Polską? Dopiero wstajemy z kolan i póki co to jesteśmy peryferiami peryferii.

PODSUMOWANIE
Niechęć u ludzi do algorytmów nie jest niczym nowym i to nie tylko w świecie finansów. Virginia Apgar, anestezjolożka, która zaproponowała prosty algorytm oceny dzieci tuż po porodzie, spotkała się na początku z bardzo silnym oporem środowiska wobec jego stosowania. Obecnie uznaje się, że dzięki wykorzystaniu jej metody znacząco zmniejszona jest śmiertelność niemowląt, ponieważ lekarz dysponuje prostą i obiektywną listą zmiennych (algorytmem), których ocena pozwoli szybko stwierdzić, czy dziecko nie wymaga natychmiastowej interwencji medycznej.

Negatywna postawa wobec algorytmów jest naturalna w sytuacji, w której konkurują one z człowiekiem. Komputer DeepBlue wzbudzał ogrom emocji przy szachowej konfrontacji z Garri Kasparowem, a firma IBM była oskarżana wręcz o manipulacje.

Legendą obrosły już opowieści o algorytmie Ashenfelter’a, pozwalającym skutecznie prognozować ceny win Bordeaux. Pośród enofilów tak dalece posunięta algorytmizacja była nie do przyjęcia, ocierając się wręcz o groźby karalne, niemniej jednak wygrała rywalizację.

Autor omawianego artykułu sugeruje, że algorytmy to zazwyczaj inwestycyjne porażki. Tymczasem eksperci, którzy nie opierają swoich decyzji na algorytmach, wcale jednak tak lepszych wyników inwestycyjnych nie osiągają. Naszą ludzką naturę cechuje brak konsekwencji w wyciąganiu wniosku na podstawie dostarczanych informacji. Literatura szeroko opisuje przypadki niekonsekwencji w wielu profesjach: od radiologów oceniających zdjęcia RTG, którzy to 10 minut później potrafią wydać odmienną opinię o… tym samym zdjęciu, po analityków finansowych, którzy koncertowo potrafią wtopić w rywalizacji z sympatycznymi małpkami. Oceny ludzkie są bardzo ściśle powiązane z kontekstem—wystarczy, że analityk wstanie lewą nogą, będzie padał deszcz, czy jeszcze coś innego, a nasza decyzja może być skrajnie odmienna, pomimo, że będzie dotyczyć tego samego. Co gorsza, nie będziemy nawet świadomi, że nasze osądy są pod głębokim wpływem jakiegoś czynnika zewnętrznego. Możemy za to żyć w poczuciu jakże miłej kontroli sytuacji.

Warto dodać też, że algorytmy wnoszą na rynek wiele pozytywnych zmian, ale zwykle w popularnych mediach zwraca się uwagę głównie na same negatywne aspekty w poszukiwaniu taniej sensacji. Przykładowo wspomniane algorytmy HFT, które chyba wzbudzają najwięcej negatywnych opinii szerokiej publiczności, przyczyniają się do wzrostu płynności i efektywności rynku oraz zmniejszania się spreadów, co zmniejsza koszty transakcyjne dla wszystkich innych uczestników rynku. Czy komuś się to podoba, czy nie, algorytmy na rynkach finansowych należy postrzegać jako narzędzie, od którego odwrotu już nie ma. Fakt, że niektórzy to narzędzie wykorzystują w, powiedzmy dyplomatycznie, kontrowersyjny sposób (np. strategie oparte o metody front-running czy quote stuffing), nie oznacza, że należy jednoznacznie negatywnie postrzegać obecność wszystkich algorytmów na rynkach.

Autor artykułu również wpisuje się w anty trend wobec algorytmów. Nic w tym złego. Szkoda tylko, że pisząc artykuł nie odrobił w minimalnym stopniu lekcji domowej – powyrywał strzępy z prezentacji Lopeza, które bez kontekstu są bezwartościowe i kreują fałszywy obraz algorytmów na rynkach i ich projektowania. Zupełnie prawdopodobnie nie zrozumiał czym jest ML i jaka jest jego rola we współczesnym świecie funduszy algorytmicznych. Co gorsza – wyniki polskich funduszy uzasadnił pracą Lopeza na zupełnie inny, choć wyglądający podobnie temat. Gdzie tu sens?

Jacek Lempart

___________________

p.s. (kat)

Koledzy ze Strefy Inwestorów – jeśli macie ochotę podjąć polemikę, zapraszamy. Szczególnie interesuje nas jakiego rodzaju związek odkryliście między polskimi funduszami a ‘machine learning’. Czy to błędy wyciągnięte przez Lopeza de Pardo z nieco innej działki wpłynęły na słabe wyniki naszych funduszy? Czy owe fundusze stosują ‘machine learning’? Wszelkie w tej mierze informacje przyjmiemy z zainteresowaniem.

—-kat—-

3 Komentarzy

  1. fs

    "A co z Polską? Dopiero wstajemy z kolan i póki co to jesteśmy peryferiami peryferii."

    Z tym się nie zgodzę. Wiele osób wspomaga się softem nie tylko opartym o ML. Po prostu nikt się nie chwali i publicznie nie odnosi się do swoich sukcesów/porażek (jeszcze?). Większość takich ludzi, których znam to zapaleńcy, którzy hobbistycznie się tym zajmują. Jedni korzystają z api IB, inni z dukascopy a jeszcze inni z bossy.

    Pozdrawiam, ciekawy artykuł

  2. JL

    Zgoda. Natomiast słowa te odnoszą się do funduszy inwestycyjnych w Polsce, a nie inwestorów indywidualnych. Pozdrawiam.

  3. Mariusz Szepietowski

    Tytułem wstępu, inwestuję i spekuluję od 20 lat, w tym 4 algorytmami, ale nie poprzez ML, stąd moja wypowiedź jest tylko opinią amatora. Ale może się komuś przyda do dyskusji.
    1. HFT w dzisiejszej postaci uważam za szkodliwy, wręcz za kradzież. Mam na myśli takie HFT, gdy jego operator ma pewność, że może pozbyć się swej pozycji z zyskiem, bo wchodzi przed znane sobie zlecenia przeciwne. HFT bez tej wiedzy, jako wynik analiz jest ok, ale dopóki nie da się go odróżnić, powinien być zakazany, tak samo, market making.
    2. zgadzam się z krytykowanym autorem, że większość zysków zabierają prowizje. Dodam, że jeszcze więcej poślizgi. Gdy po stronie brokera też są automaty, prowizje powinny być wielokrotnie niższe. Broker (zwłaszcza biuro maklerskie) nie ponosi ryzyka. Nie należy mi się więc premia za nie.
    3. zgadzam się, że Polska jest zaściankiem inwestycyjnym. Ale nie z powodu automatów, te ma wielu nawet małych inwestorów. Tylko z powodu powszechnej korupcji, nepotyzmu i wyrażania sobie wzajemnie podziękowań przez fundusze, komisję nadzorcze, banki i ubezpieczycieli. na takim rynku nie trzeba automatu, wystarczy się spotkać na golfie w krzaczkach…
    4. z jednym (na szczęście dla małych inwestorów) mogę się nie zgodzić. Mianowicie z argumentem, że wielkie instytucje dysponując ogromną mocą komputerów może analizować szybko miliony systemów. Nie może, gdyż w obecnych czasach moc bierze się głównie z mnożenia procesorów/wątków a tu są ograniczenia, jakie opisałem na http://bezemerytury.pl/jaki-komputer-do-testow-strategii-inwestycyjnej/

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *


Opinie, założenia i przewidywania wyrażone w materiale należą do autora publikacji i nie muszą reprezentować poglądów DM BOŚ S.A. Informacje i dane zawarte w niniejszym materiale są udostępniane wyłącznie w celach informacyjnych i edukacyjnych oraz nie mogą stanowić podstawy do podjęcia decyzji inwestycyjnej. Nie należy traktować ich jako rekomendacji inwestowania w jakiekolwiek instrumenty finansowe lub formy doradztwa inwestycyjnego. DM BOŚ S.A. nie udziela gwarancji dokładności, aktualności oraz kompletności niniejszych informacji. Zaleca się przeprowadzenie we własnym zakresie niezależnego przeglądu informacji z niniejszego materiału.

Niezależnie, DM BOŚ S.A. zwraca uwagę, że inwestowanie w instrumenty finansowe wiąże się z ryzykiem utraty części lub całości zainwestowanych środków. Podjęcie decyzji inwestycyjnej powinno nastąpić po pełnym zrozumieniu potencjalnych ryzyk i korzyści związanych z danym instrumentem finansowym oraz rodzajem transakcji. Indywidualna stopa zwrotu klienta nie jest tożsama z wynikiem inwestycyjnym danego instrumentu finansowego i jest uzależniona od dnia nabycia i sprzedaży konkretnego instrumentu finansowego oraz od poziomu pobranych opłat i poniesionych kosztów. Opodatkowanie dochodów z inwestycji zależy od indywidualnej sytuacji każdego klienta i może ulec zmianie w przyszłości. W przypadku gdy materiał zawiera wyniki osiągnięte w przeszłości, to nie należy ich traktować jako pewnego wskaźnika na przyszłość. W przypadku gdy materiał zawiera wzmiankę lub odniesienie do symulacji wyników osiągniętych w przeszłości, to nie należy ich traktować jako pewnego wskaźnika przyszłych wyników. Więcej informacji o instrumentach finansowych i ryzyku z nimi związanym znajduje się w serwisie bossa.pl w części MIFID: Materiały informacyjne MiFID -> Ogólny opis istoty instrumentów finansowych oraz ryzyka związanego z inwestowaniem w instrumenty finansowe.

Proszę podać wartość CAPTCHA: *