Z wizytą u algorytmów, część 1

Rozumiem niepokoje inwestorów związane z ultraszybkimi maszynami, dokonującymi transakcji giełdowych więc ponownie dorzucę kilka uwag na temat tego co w trawie, lub raczej kablach, aktualnie piszczy.

W ostatnim czasie kilkukrotnie słyszałem lub byłem pytany o algorytmy w kontekście, który budzi wiele nieporozumień. Rozumiem jednak konsternacje, które, jak obserwuję, rodzą się po pierwsze z hermetycznego i nieco dublującego się nazewnictwa, po drugie – z racji braku tego typu działań na naszym rynku w takiej skali jak na świecie.

Otóż pojęcie „algorithmic trading” (w skrócie „algo trading”), czyli po naszemu po prostu  trading za pomocą algorytmów, tak naprawdę obejmuje 2 rodzaje działań o zupełnie innej funkcji choć podobnym charakterze i chwilami słownictwie:

1/ Algorytmy egzekucyjne

Przeznaczone są do plasowania w sposób inteligentny zleceń na giełdzie, lub ich optymalnego przepływu między giełdami. Tworzone i implementowane przede wszystkim przez giełdy i brokerów, ale również na poziomie firm, mających bezpośredni dostęp na parkiet, obejmują automatyczne programy komputerowe, które zarządzają ruchem dużych zleceń do tabeli ofert w taki sposób, by ich wpływ na zmianę notowań był jak najmniejszy.

Nie mają one nic wspólnego z podejmowaniem decyzji o tym w jakim kierunku zlecenie złożyć (kupno czy sprzedaż), na jakie papiery czy instrumenty i w jakiej ilości. Ich zadaniem jest optymalizacja konkretnych zleceń, które płyną od klientów. Chodzi oczywiście o zlecenia instytucji, kupno czy sprzedaż dużych ilości np. akcji nie tylko może zbyt mocno rozhuśtać rynek, ale również złożone w nieodpowiedni sposób informuje innych uczestników o potencjalnych zamiarach co może prowadzić do działań wyprzedzających ze strony konkurencji.

Dzisiaj znane jest już kilkadziesiąt takich algorytmów o przedziwnych niekiedy nazwach i różnorodnej taktyce alokacji zlecenia do systemu giełdy.

Np. taki o nazwie „Iceberg” czyli Góra Lodowa dzieli całe zlecenie na małe kawałeczki i wystawia do oferty tylko jeden z nich, widniejący w tabeli niczym wierzchołek lodowej góry, której nie widać z powierzchni. A z kolei taki „Sniffer” węszy wśród wszystkich zleceń poszukując w ich kolejce konkurencyjnych algorytmów po to by grać z nimi lub przeciw nim.

A znów algorytm tzw. benchmarkowy VWAP (Volume Weighted Average Price) dokonuje analiz wolumenu (na bazie historii) i stosownie do tego puszcza zlecenia. Inny- TWAP – wybiera określone pory dnia dla egzekucji zlecenia w kawałkach.

Najprostszym przejawem programów tego typu na naszej giełdzie są podstawowe zlecenia typu: WUJ, LimAkt, PCRO lub z poziomu brokerów – np. OCO dostępny w BOŚ

2/ Algorytmy decyzyjne

Spora ilość inwestorów właśnie ten rodzaju handlu uważa za „algo trading”, zapewne z powodu znaczenia ukrytego w nazwie i tłumaczeniu. Zresztą w wielu artykułach i książkach a także w Wikipedii właśnie roboty generujące zlecenia, a nie egzekwujące je, coraz powszechniej identyfikuje się z handlem algorytmowym. Stąd nieporozumienia i niespójne interpretacje w dyskusjach, sam padłem zresztą ich ofiarą i stąd ów wpis.

Istnieje wiele synonimów dla tego rodzaju handlu: „systematic algorithms”, „decision-making algorithms”, „Black boxes”, „automaty tradingowe”, ale już coraz powszechniej weszło do języka właśnie „algo trading”, nie tylko naszego ale i światowego. Jeśli więc używamy tego pojęcia to aby nie powodować pomyłek dobrze byłoby dodawać cel, który mamy na myśli. Skoro więc mówiąc „algo trading” czy po prostu „algorytmy” mamy już najczęściej na myśli roboty generujące decyzje o zajęciu czy opuszczeniu pozycji, to dla tych plasujących inteligentnie zlecenia na giełdzie trzeba by dodać określenie typu „egzekucyjne”. „Algorytmy zleceniowe” czy „algorytmy egzekucyjne” wydaje się być OK.

To samo w drugą stronę – jeśli ktoś mówi nam o algorytmach to warto dopytać o którym z rodzajów?

Ta sama kwestia dotyczy zresztą tego co zamierza wprowadzić w nowym systemie nasza GPW na jesień. Byłoby wspaniale gdyby pojawiły się już na tym poziomie nowe rodzaje zleceń i „algorytmy egzekucyjne”, ale duże pole do popisu ze względu na szybkość i przepustowość oraz nowe opcje dostaną brokerzy w zakresie realizacji zleceń. Natomiast algorytmy typowo tradingowe to domena samych inwestorów. W ich zakres wchodzi dość pokaźna liczba kategorii, jak choćby te najbardziej popularne:

– najbliżej znane nam to po prostu mechaniczne systemy inwestycyjne jak choćby „trend following”,

– algorytmy animujące czyli ‘market making’, wystawiające w sposób ciągły zlecenia po obu stronach widełek,

– arbitraż statystyczny czyli „stat arb”, w którym wykorzystuje się korelacje między minimum dwoma ale bywa że i kilkunastoma instrumentami czy po prostu samymi akcjami jednocześnie; to zwykle krótkoterminowe transakcje, czasem trwające tylko sekundy, w których wystawia się zlecenia przeciwstawne, mające niwelować odchylenia od korelacji, również z użyciem derywatów, bywa że jednocześnie na 2 lub więcej parkietach

– „index arbitrage” czyli arbitraż między indeksem a akcjami wchodzącymi w jego skład, robiony również za pomocą derywatów, jest zarazem jedną z form wyżej wspomnianego arbitrażu statystycznego,

– jeszcze inną jego formą jest tzw. „pairs trading” czyli zlecenia tylko na 2 spółki, często z jednej branży; jeśli kurs jednej zmienia się szybciej to zakłada się, że ich wycena i tak się wyrówna więc jedną się kupuje drugą jednocześnie sprzedając krótko (short selling),

– roboty analizujące newsy albo nastroje (np. w mediach społecznościowych), zajmujące pozycje kierunkowe w dowolnych instrumentach zależnie od słów używanych najczęściej w badanych tekstach

– czy wreszcie robiący ostatnio tyle zamieszania HFT czyli High Frequency Trading (Trading o dużej częstotliwości), a więc maszyny, których przewaga bierze się z wykorzystania szybkości, zarówno poboru danych jak i dokonywania transakcji, mogące składać tysiące zleceń na sekundę; i chociaż ich uniwersalność pozwala realizować wszystkie techniki wymienionych wyżej to dodatkowo wykorzystują wiedzę o kolejce zleceń czy poszukują wzorów w przepływie danych; zamiennie używa się określenia “flash trading”

Czasem używa się wobec algorytmów pojęcia „Program trading”, czyli handel programowy (czy programowany), ale trzeba wiedzieć, że w nomenklaturze amerykańskiej takiego określenia używa się w zasadzie tylko do określonej taktyki: automatycznego składania jednoczesnych zleceń na 15 lub więcej spółek o wartości łącznej minimum 1 miliona USD. W zasadzie więc adekwatnym określeniem tego w naszych warunkach jest „handel koszykowy”.

Natomiast fraza „automated trading” czyli handel lub trading automatyczny jest pojęciem najszerszym z możliwych ponieważ określa po prostu inwestowanie czy spekulację za pomocą komputera.

Mam nadzieję, że ten mini słowniczek ułatwi zrozumienie tekstów i komunikację.

CDN

—***Kat***—

[Głosów:0    Średnia:0/5]

2 Komentarzy

  1. szutnik

    Tak swoją drogą to kto wymyśla nazwy tych algorytmów? Czy to ktoś obdarzony czarnym poczuciem humoru? 😉

    Zlecenie typu WUJ (czyli krewny – sponsor konta?)
    Algorytm egzekucyjny… oj dla niejednego po jego wykonaniu zaczęła się prawdziwa Egzekucja 🙂

  2. Wczasowicz

    “Tak swoją drogą to kto wymyśla nazwy tych algorytmów?”

    A mi to nazewnictwo kojarzy się z branżą kosmetyczną, z pojęciami typu “mgła pod oczy”, “masło do ciała” albo “mydło bez mydła”.

    PZDR. 🙂

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Proszę podać wartość CAPTCHA: *