Ko trgujejo računalniki
V kleteh neopaznih poslopij in v velikih halah tiho brni na tisoče strežnikov, ki med seboj trgujejo v milijardah dolarjev. Po njihovih kablih se vsak dan pretaka usoda svetovnega prebivalstva. Algoritmi, ki so prezapleteni, da bi jih docela doumeli, v milisekundah sprejemajo odločitve, ki krojijo svetovno ekonomijo, pokojninske blagajne in ceno ogrevanja stanovanj. In se občasno zmotijo.
Oznake, pod katerimi na ameriški borzi kotirajo delnice podjetij, so odsev nekih davnih časov. V angleščini jih imenujejo ticker symbols, tečajnica pa se imenuje kar ticker. Izraza izvirata iz prve polovice 20. stoletja, ko so se informacije o ceni delnic pošiljale po telegrafskih linijah. V ta namen je bila v rabi naprava, skozi katero je tekel telegrafski papir in je nanj tiskala informacijo o simbolu delnice, tečaju in obsegu poslov. To je bila bistvena izboljšava glede na prenos podatkov v Morsejevi kodi po telegrafu. Po zvoku, ki ga je naprava oddajala med delovanjem, je dobila tudi ime - ticker. Šele v 60. letih je razmah računalniških omrežij prinesel nov način prenosa borznih informacij. Govorimo torej o računalništvu v povojih.
Druga skrajnost je znana vsem ljubiteljem znanstvenofantastične franšize Terminator. Skynet je tako izpopolnjen računalniški sistem umetne inteligence, da doseže stopnjo samozavedanja. Nadzoruje vse obrambne in napadalske sisteme ter avtonomno sprejema odločitve, ki so glede na njegovo notranjo logiko najbolj pravilne. Ko se odloči, da je najbolj smiselno iztrebiti človeško raso, ga je zelo težko premagati. Zdaj pa skok v realnost, ki leži nekje vmes.
Dandanes lahko v realnem času spremljamo podatke o tečaju sklenjenih poslov, obsegu, ponudbi in povpraševanju za vsak trenutek trgovanja. V internetu so brezplačni podatki ponekod resda zakasnjeni za 15 minut, a so omejitve komercialne in ne tehnične narave. Investicijske banke in drugi veliki igralci imajo vsako sekundo na voljo sveže podatke. Prav razvoj tehnologije na dveh pomembnih področjih - hitrosti povezav in računski moči - je postavil povsem nova pravila igre, ki ne bi mogla biti bolj drugačna od nestrpnega čakanja na telegrafske podatke o gibanju delnic pred sto leti. Danes se odzivi na borznem parketu merijo v milisekundah, trgujejo pa v glavnem superračunalniki in bolj malo ljudje.
Fizikalne omejitve
Igralci spletnih iger so med običajnimi uporabniki računalnikov bržkone najbolje seznanjeni s konceptom zakasnitve. Če je ta predolga, so v igranju spletnih iger, ki terjajo hitre odzive v realnem času, izrazito nekonkurenčni. Z ukazom ping računalniku v internetu pošljejo poseben paketek (ICMP echo request), na katerega potem pociljani računalnik odgovori. Bistven rezultat je čas od pošiljanja paketka do prejetja odgovora in odstotek izgubljenih paketkov, saj jih navadno pošljejo več.
Na domačih širokopasovnih povezavah je zadovoljiv odzivni čas nekaj deset milisekund, v časih povezav na klic pa smo preživeli tudi z nekaj sto milisekundami. Za visokofrekvenčno borzno trgovanje je to seveda veliko prepočasi.
Zgornja meja prenosa hitrosti informacij je seveda svetlobna hitrost, ki je v vakuumu okoli 300.000 km/s. V optičnih vlaknih, ki so v obliki podmorskih kablov položena pod morjem, se svetloba giblje počasneje. Lomni količnik optičnih vlaken je od 1,5 do 1,6, za kolikor se upočasni hitrost svetlobe. Tako na oko potuje po podmorskih kablih s hitrostjo 200.000 km/s. Po bakru, ki se uporablja na zadnjih kilometrih zemeljskih napeljav, se elektroni sicer gibljejo po polžje, manj kot milimeter na sekundo, a nas zanima širjenje motnje. Elektromagnetno valovanje tudi v tem primeru potuje skoraj s svetlobno hitrostjo. Ker pa gre za kratke razdalje v primerjavi z medcelinskimi, na končno zakasnitev to bolj malo vpliva.
Podmorski kabli povezujejo vse celine, a največ jih poteka med Evropo in Ameriko. Vir: TeleGeography.
Kaj vse skupaj pomeni? Med Londonom in New Yorkom je po najkrajši zračni poti 5500 km. Ker podmorski kabli ne potekajo po najkrajši poti, lahko brez pomislekov vzamemo za razdaljo 6000 km. To pomeni, da bo borzni posrednik z algoritmom za visokofrekvenčno trgovanje na newyorški borzi povsem nekonkurenčen, saj bo imel že v začetku startni položaj 30 milisekund. Toliko namreč traja, da svetloba po optičnih vlaknih prepotuje to razdaljo. Vsak računalnik, vsako vozlišče in vsak usmerjevalnik vmes zakasnitev še poveča, tako da se ta hitro zveča na 50 milisekund ali več. To pa je v borznem svetu cela večnost. Podjetja prav zato plačujejo mastne vsote, da dobijo kolokacije svojih strežnikov čim bliže trgovalni platformi v isti zgradbi. Vsaka milisekunda namreč šteje in s kolokacijami se je mogoče spustiti na mikrosekundno raven.
Algoritemsko in visokofrekvenčno trgovanje
Velika večina opravljenih poslov na resnih borzah po svetu (kamor ljubljanska po nobenem merilu nikoli ni sodila) izvira iz algoritemskega trgovanja. S tem izrazom označujemo vsak posel, za katerega je bilo vsaj eno naročilo vneseno na podlagi računalniškega algoritma. Pri tem lahko algoritem določi pogoje izvedbe, količino, čas, razdelitev ali celo smer naročila (bodisi nakup bodisi prodaja) in izbor delnice. Algoritemsko trgovanje sega od običajnih pomagal, kot so avtomatična prodaja pri padcu delnice pod določeno raven (trailing-stop), do dovršenih in nerazumljivih algoritmov, ki sami odločajo, katere delnice bodo kupili in kako dolgo (mnogokrat le nekaj sekund ali minut) jih bodo držali. Naročila zadnjega tipa se samodejno vnašajo prek elektronskih platform brez človeškega sodelovanja oziroma odobritve. Posebna vrsta tega trgovanja, na katero odpade največji obseg poslov, pa je visokofrekvenčno trgovanje (high-frequency trading, HFT), kjer prideta v poštev le hitrost in izkoriščanje trenda ali tržnih nihanj, ne pa fundamentalna analiza.
Razmah se je začel razmeroma pozno, saj je do sredine 70. let primat nad borznim trgovanjem držal newyorški NYSE. Razmere je prvi resno razburkal Nasdaq, ki je začel delovati leta 1971, a je šele leta 1987 resno ogrozil NYSE. Tistega leta se je zgodil hud borzni zlom in ker borzni posredniki med zlomom sploh niso dvigovali telefonov, je Nasdaq z elektronskim trgovanjem veliko pridobil. Na prelomu tisočletja je ameriška agencija za trg vrednostnih papirjev (SEC) sprejela novo zakonodajo, ki je okrepila konkurenco in poenostavila trgovanje. Odtlej je samo v ZDA več kot deset ločenih borznih trgov, provizije so strmoglavile, potreben čas in napor za vnos naročila pa sta zanemarljivo majhna. Enostavnost trgovanja na elektronskih sistemih je lahko povzročila razmah algoritemskega trgovanja.
Statistika kaže, da je na ameriških borzah (NYSE, združena Nasdaq/AMEX, DirectEdge) približno tri četrtine vseh poslov izvedenih z visokofrekvenčnim trgovanjem. Londonska borza ocenjuje, da jih je bilo že pred petimi leti vsaj polovica, delež pa se ves čas veča. Tudi druge evropske borze, kjer je poleg ameriških HFT posebej priljubljen, ocenjujejo delež teh poslov na 60-80 odstotkov. Gre torej za močne sile, ki na dan obrnejo na tisoče milijard dolarjev in na leto pridelajo večmilijardne dobičke.
Ocena za leto 2010 kaže, da je povprečni čas držanja delnic na ameriški borzi 22 sekund. V to številko so všteti vsi posli, torej od malih vlagateljev, ki kupijo in držijo do onemoglosti, do institucionalnih vlagateljev s HFT, ki isto delnico preprodajo desetkrat na sekundo. Nizka vrednost povprečja priča o obsegu algoritemskega in visokofrekvenčnega trgovanja. Poglejmo, kako vse skupaj dejansko poteka.
Do prihoda NASDAQa newyorška borza (NYSE) v ZDA ni imela resne konkurence. Šele elektronsko trgovanje na NASDAQu je temeljito premešalo karte. Vir: Wall Street Pit.
Na klasičnem borznem parketu človeški borzni posredniki ustvarijo vsako leto manjši delež poslov. Vir: USA Today.
Pamet in hitrost
1 Pamet
Investicijske banke, vzajemni skladi in drugi pomembni igralci tekmujejo na dveh področjih. Da so lahko pri algoritemskem trgovanju dobičkonosni, morajo imeti v povprečju boljši algoritem kakor konkurenca ter hitrejše računalnike in povezave do borznega sistema. Rešitev obeh strani enačbe so seveda zadostni vložki, saj ti lahko kupijo najboljšo strojno opremo in kolokacijo ter najamejo najpametnejše ljudi. Za zgled povejmo, da je bil leta 2010 nekdanji programer pri Goldman Sachsu, Sergej Alejnikov, obsojen na osem let zapora zaradi kraje kode za algoritemsko trgovanje. Pri Goldman Sachsu je imel na leto plačo 400.000 dolarjev, a mu je konkurenčno podjetje ponudilo trikrat višje plačilo, če bi jim ob prestopu prinesel še kodo za algoritemsko trgovanje, ki jo uporablja Goldman Sachs. Odločitev sodišča so sicer februarja letos na drugi stopnji razveljavili, a to ne vpliva na nauk (še posebej zato, ker so avgusta zoper njega vložili novo obtožnico zaradi istega prestopka). Algoritmi so torej pomembni.
2 Hitrost
Poleg tega so izjemno pomembni hitrost oziroma zakasnitve. Trgovalni čas na borzah je namreč zvezen, to pomeni, da se naročila izvedejo takoj, ko je mogoče. Borzniki pravijo, brž ko se ujameta ponudba in povpraševanje. Kdor svoje naročilo odda milisekundo pred konkurenco, žanje dobiček. To je dobro znano, zato veliki igralci investirajo velikanske zneske v hitre superračunalnike in hitre povezave do borznih omrežij. Že sama fizika omejuje čas, v katerem lahko po optičnem kablu prenesemo informacijo iz Londona v New York na vsaj 30 milisekund, zato je čezoceansko visokofrekvenčno trgovanje že vnaprej obsojeno na neuspeh. Podjetja v resnici zahajajo v nasprotne skrajnosti. Plačujejo visoke najemnine za kolokacijo, ki je v isti zgradbi kot borzna platforma, saj si tako zagotovijo najnižje mogoče zakasnitve. V kleteh neopaznih poslopij in v velikih halah tiho brni na tisoče računalnikov, ki trgujejo v milijardah dolarjev in po kablih katerih se vsak dan pretaka usoda večine svetovnega prebivalstva.
En tak center se imenuje New York Four, kjer so strežniki večine investicijskih bank, skladov, borznih hiš in drugih ustanov z Wall Streeta. Gre za razmeroma mlado borzo Direct Edge, katere promet je okoli desetine celotnega prometa na ameriških tleh in je tretja največja ameriška borza (za NYSE in Nasdaq/AMEX). Kljub temu se strežniki v kletnih prostorih razprostirajo na površini, ki ustreza trem nogometnim igriščem. Vsako sekundo opravijo 100.000 naročil v vrednosti več milijonov dolarjev; velika večina je algoritemskih. To ni edini tak primer. V predmestju Chicaga se na 40.000 kvadratnih metrih razteza podatkovni center, kjer drug ob drugem ždijo strežniki chicaške borze (infrastruktura) in podjetij (stranke), ki si lahko privoščijo plačilo 25.000 dolarjev na mesec za najem enega strežniškega predala (server rack). Odveč je poudariti, da si tako zagotovijo najnižje latence pri dostopu do borznega sistema.
Pomen latenc najlepše ponazorijo milijonska vlaganja v nove podmorske kable z namenom zmanjševanja zakasnitev. Hedge skladi ocenjujejo, da milisekunda zakasnitve v primerjavi s konkurenco stane velik sklad na leto 100 milijonov dolarjev oportunitetne izgube zaradi manjšega dobička. S tem v mislih stroški polaganja podmorskih kablov niso previsoki. Na prelomu tisočletja, tik pred pokom balončka tehnoloških podjetij (t. i. balon dot-com) na ameriških borzah, so množično polagali podmorske kable, potem pa so za približno desetletje vlaganja zastala. V letih 2000-2001 so položili 36 novih kablov v vrednosti 17 milijard dolarjev, potem pa precej manj. Trajalo je kar devet let (2002-2011), da so presegli ta znesek, in sicer z 18 milijardami dolarjev. Vzbudila pa jih ni rast internetnega prometa ali vedno večja uporaba digitalne distribucije večpredstavnih vsebin (internetni radio in televizija, Steam, Spotify, Netflix itd.), temveč potrebe finančne industrije. Izdelava in položitev tipičnega podmorskega kabla med Evropo in Ameriko stane 200-400 milijonov dolarjev. Investitorji so zasebna podjetja, ki računajo na drago prodajo zmogljivosti hedge skladom, investicijskih bankam, trgovcem na medvalutnem trgu (FOREX) in podobnim. V letih 2012-2013 naj bi za nove podmorske kable zapravili 5,5 milijarde dolarjev. Z vedno več kabli pa se povečuje tudi redundanca, saj se je v preteklosti na prometnih morskih poteh, zlasti okoli Afrike in na Bližnjem vzhodu, večkrat zgodilo, da je kakšna ladja s sidrom podmorski kabel enostavno pretrgala, čeprav so lokacije kablov na kartah dobro vrisane. Seveda jih lahko poškodujejo tudi podvodni potresi, plazovi in druge naravne sile. Popravila so draga, saj je treba najprej ugotoviti, kje točno je kabel poškodovan (v tem primeru se signal po optičnem vodniku odbije nazaj in iz časa potovanja signala je mogoče izračunati mesto poškodbe), tja poslati ladjo, kabel na dnu prerezati, dvigniti na površino oba konca in zamenjati poškodovani del. Optičnih vlaken seveda ni mogoče enostavno krpati, temveč je postopek precej bolj zapleten kot pri bakrenih vodnikih.
Kako deluje optično vlakno
Optična vlakna se uporabljajo za prenos podatkov na razdalje, ki so daljše od nekaj kilometrov, saj v primerjavi z bakrenimi paricami omogočajo številne prednosti. Prepustnost optičnih vlaken je veliko višja, saj je mogoče po enem vlaknu pošiljati svetlobo več različnih valovnih dolžin (wavelength-division multiplexing, WDM), to pa, mimogrede, pomeni, da za enake prepustnosti potrebujemo tanjše in lažje napeljave. Trenutni rekordi v hitrosti prenosa dosegajo vrednosti okrog 100 Gb/s na vlakno prek razdalje več tisoč kilometrov. Druga pomembna prednost so bistveno manjše izgube svetlobnega signala (atenuacija signala) v primerjavi z električnimi signali. Ojačevalnike tako potrebujemo zgolj na vsakih nekaj sto kilometrov. Druge prednosti so še neobčutljivost za električne motnje iz okolice, tako da odpadejo znane težave s presluhi med paricami in inducirani tokovi, galvanska ločitev vira in sprejemnika ter znatno zmanjšana možnost prisluškovanja, saj informacije ne "curljajo" iz vlakna.
Prerez optičnega kabla: 1. polietilenski ovoj, 2. trak iz mylarja, 3. prepletene kovinski oklop, 4. aluminijev vodotesni sloj, 5. polikarbonat, 6. bakrena ali aluminijeva cev, 7. vazelin, 8. optična vlakna.
Tipični podmorski kabel je debel sedem centimetrov in tehta 10 kilogramov na tekoči meter. Optično vlakno je sestavljeno iz sredice, ki je debela nekaj mikrometrov in zgrajena iz celo čistega kvarčnega stekla z lomnim količnikom 1,5. Steklo mora biti čim bolj čisto, saj so glavni vir sipalnih in absorpcijskih izgub prav nečistoče. Praviloma so izgube v dobrem vlaknu okoli 0,2 dB/km. Sredico ovija plašč, ki je debel do 600 um in je sestavljen iz kvarčnega stekla, dopiranega z borom in fluorom, tako da je njegov lomni količnik manjši kakor v sredici. Pri prehodu svetlobe iz optično gostejšega sredstva (z višjim lomnim količnikom) v redkejše se za kote, ki so večji od kritičnega, naredi popolni odboj. Svetloba se ne lomi in ne prehaja meje, temveč se v celoti odbije z meje nazaj. Kritični kot določa sprejemljive vstopne kote (numerična odprtina vlakna) na začetku vlakna; če svetloba ok?
Nevarnosti
Večkrat se je že izkazalo, da algoritmi niso nezmotljivi. Ravno nasprotno, SECova analiza je pokazala, da so trgi zaradi velikanskega obsega algoritemskega trgovanja tako razdrobljeni in krhki, da lahko en sam posel povzroči strmoglavljenje tečajev delnic ali njihovo nenadzorovano plezanje zaradi kaskadnega učinka. In to se je zgodilo že precejkrat. Oglejmo si nekaj najbolj znanih zgledov.
1 Volkswagen hipoma postane največji
Porsche je že davnega leta 2008 poskrbel za enega najbolj znanih primerov pobeglega tečaja delnic, ko je podjetje Volkswagen za kratek čas postalo največje podjetje na svetu. Porsche je dlje časa počasi kupoval delnice Volkswagna in s tem počasi dvigal njihovo vrednost nad ekonomsko upravičene ravni ter hkrati krepil svoj delež v podjetju. Veliki skladi in drugi dobro poučeni vlagatelji so zato stavili na padec tečaja; to so storili z nekritimi kratkimi prodajami (naked short selling). V tem primeru na trgu prodajo delnico, ki je sploh nimajo v lasti, zato jo morajo pred poravnavo posla kupiti nazaj (drugače nastane napaka zaradi nedostave, failure to deliver). Če cena v tem času pade, so ustvarili dobiček. Poleg tega je bilo za kratko prodanih še cel kup delnic, ki so si jih špekulanti poprej izposodili (krite kratke prodaje) pri dolgoročnih institucionalnih lastnikih. Kritiki te taktike trdijo, da se z njo umetno zbija cena delnic, saj neupravičeno povečujemo ponudbeno stran, zato je na večini trgov prepovedana, ne pa povsod. (Na ljubljanski borzi je seveda vse navedeno znanstvena fantastika.)
Toda 26. oktobra 2008 je Porsche objavil, da imajo neposredno v lasti 43 odstotkov Volkswagna, če pa upoštevamo še izvedene instrumente, nadzorujejo 74,1 odstotka podjetja. Ker ima petinski delež zvezna dežela Spodnja Saška, so špekulanti hitro izračunali, da je na nemški borzi mogoče kupiti le 5,9 odstotka Volkswagna. Izposojenih in prodanih pa je bilo več kot 12 odstotkov Volkswagnovih delnic, to je dvainpolkrat več od povprečja na nemški borzi. Špekulanti so hiteli zapirati svoje pozicije, kar pri kratkih pozicijah storijo tako, da delnice hitro kupijo. To je povzročilo velikanski nakupni pritisk, ki je tečaj delnice z 200 evrov začasno potisnil na več kot 1000 evrov. Rast tečaja je povzročila zapiranje čedalje več pozicij v kaskadnem učinku (pojavu pravimo short squeeze). Porsche je zaslužil med 30 in 40 milijard evrov in si nakopal precej tožb razjarjenih skladov. V tem primeru ni šlo zgolj za posledice algoritemskega trgovanja, saj je nakup izposojenih delnic običajen način zapiranja pozicij ob gibanju tečaja v nezaželeno smer (torej ob rasti), ki ga uporabijo tudi borzni posredniki. Je pa algoritemsko trgovanje pripomoglo h katapultiranju v stratosfero, saj so algoritmi začeli brezglavo zapirati pozicije, ne da bi ocenili, da trenutna visoka cena ni realna.
2 Flash crash
V četrtek, 6. maja 2010, je bilo trgovanje na newyorški borzi večidel dneva v medvedjem trendu. Dow Jones je počasi drsel, nato je ob 14.42 uri po lokalnem času izgubil skoraj 300 točk. V naslednjih štirih minutah se je izguba povzpela na okoli tisoč točk oziroma 9,2 odstotka vrednosti. V desetih minutah je bilo začasno zradirano za približno tisoč milijard dolarjev premoženja. To je bila druga največja enodnevna izguba v zgodovini indeksa. Toda le petnajst minut pozneje je indeks nadoknadil večino izgub in trgovanje se je končalo z zmerno 3,2-odstotno izgubo. Celodnevno dogajanje je močno smrdelo po manipulaciji trga, zato je ameriška agencija za trg vrednostnih papirjev (SEC) sprožila obsežno preiskavo. Rezultati so osupnili svet.
Ni šlo za nobeno manipulacijo trga ali tehnično težavo, temveč za programiran odziv avtomatičnih trgovalnih algoritmov. Trg je bil tisti dan zaradi skrbi o grškem bankrotu izjemno volatilen (s to besedo borzni posredniki označujejo psihozo na trgu, ko so vsi prestrašeni, tečaji pa precej nihajo sem in tja). Ob 14.23 uri je eden izmed velikih skladov vnesel prodajno naročilo za 75.000 standardiziranih terminskih pogodb na indeks S&P 500 v skupni vrednosti več kot štiri milijarde dolarjev, da bi zaščitil svojo dolgo pozicijo (hedging). Na trgu terminskih pogodb je to povzročilo pravo paniko, saj trgovalni algoritmi niso znali ovrednotiti tega naročila, zato so začeli panično prodajati svoje pogodbe. Panika se je kmalu prelila še na primarni trg, saj so vzdrževalci trga, ki izkoriščajo arbitražo, ob nakupu terminskih pogodb začeli prodajati ustrezne količine delnic na primarnem trgu. Indeksu je odneslo skoraj deset odstotkov. Šele ko je bilo trgovanje s terminskimi pogodbami zaradi neravnovesja prekinjeno za pet sekund, si je povpraševanje opomoglo in delnice ter indeksi so večji del izgub nadoknadili.
Komisija je ugotovila, da so avtomatični trgovalni algoritmi in visokofrevenčno trgovanje bistveno poslabšali stanje. Tistega dne je potop borze rešilo srečno naključje, da je bilo trgovanje s terminskimi pogodbami prekinjeno za pet sekund. V nasprotnem primeru bi bile izgube lahko precej večje, saj algoritmi preprosto niso ustvarjeni za delovanje v izrednih razmerah (kamor nenadne deset- in večodstotne padce gotovo prištevamo). To je bilo prvo resno opozorilo, da je algoritemsko trgovanje nevarno, zato so celo uvedli 10-odstotno omejitev gibanja tečaja delnic v manj kot petminutnem obdobju.
3 Skorajšnji bankrot Knight Capitala
Najbolj eklatanten primer težav, ki jih lahko povzroči algoritmično trgovanje, pa se je zgodil letos 1. avgusta na newyorški borzi NYSE. Na borzi se ni sprva zgodilo nič posebnega, a to je bilo le zatišje pred neurjem. Že kmalu po odprtju trga je bil obseg poslov s številnimi delnicami nenormalno visok, delnice pa so nepojasnjeno pridobivale ali izgubljale vrednost, dokler se niso zaletele v 10-odstotno omejitev gibanja tečaja (ta omejitev je bila vzpostavljena prav zaradi flash crasha pred dvema letoma). Prizadetih je bilo 148 delnic. Pol ure pozneje je bilo neurja konec na videz brez hujših posledic. Toda v podjetju Knight Capital, ki na borzi deluje kot eden izmed vzdrževalcev likvidnosti (market maker), so zaskrbljeno zrli v zaslone. V pol ure so izgubili 440 milijonov dolarjev, to je skoraj celotni kapital podjetja. Dobesedno v pol ure so podjetje pripeljali od ene najsvetlejših zvezd borznega parketa na rob bankrota.
Podrobna analiza dogajanja je pokazala, da je Knight Capital v borzno omrežje priklopil napačno različico novega programa za algoritmično trgovanje Retail Liquidity Program. Tistega dne je namreč NYSE po napovedih spremenil tehnično izvedbo trgovanja, zato so morali borzni partnerji prilagoditi svoje računalniške sisteme. Indici kažejo, da je Knight Capital tistega dne poleg novega trgovalnega sistema v borzno omrežje priključil tudi preizkusni program. Ta je bil namenjen zgolj delovanju v laboratoriju, njegova naloga pa je bilo ustvarjanje prodajnih in nakupnih naročil ter posledično transakcij za novi trgovalni sistem, tako da so lahko preverili njegovo pravilno delovanje (deloval je torej kot nekakšen sparring partner, ki je novemu sistemu simuliral dogajanje na pravi borzi). Pomotoma so v borzno omrežje priključili oba in preizkusni program je začel opravljati svojo funkcijo tudi v živo - kupoval je vse delnice po ceni ponudbe in prodajal po ceni povpraševanja. Ko so trgovalni algoritmi drugih igralcev to ugotovili, so začeli intenzivno trgovati proti njemu. Knight Capital sprva ni vedel, kaj je narobe. Videti je, da so sistem dvakrat znova zagnali (kratka premora ob 9.48 in 9.52), preden se jim je posvetilo, da je nekaj pošteno narobe in da je treba sistem izklopiti. Toda v vmesnem času je preizkusni program izvedel na milijone poslov in pri vsakem izgubil razliko med prodajno in nakupno ceno (bid/ask spread). Izkopal jim je skoraj polmilijardno luknjo. Nerazumljivo pa je, da je tako dolgo trajalo, da je nekdo napako opazil in program izključil.
NYSE je sicer razmišljal o razveljavitvi nekaterih poslov, a tega zaradi istih novih pravil niso mogli storiti. Knight Capital je bil povsem na robu bankrota, a so krizo prebrodili, stranke pa jim tudi niso pobegnile. So pa njihove delnice še vedno zgolj na četrtini vrednosti izpred avgusta, kar je razumljivo, saj jim je odpihnilo večino kapitala. Za zdaj kaže, da bodo nespametnost zgolj drago plačali, a bodo preživeli. Hkrati je SEC napovedal preiskavo, saj v vmesnem času Knight Capital ni opravljal pogodbenih obveznosti, to je zagotavljanje likvidnosti na trgu.
To ni bil edini primer, ko je podjetje izgubilo velikanske vsote zaradi napake v algoritemskem trgovanju, je pa zagotovo najodmevnejši zaradi relativne velikosti in hude napake. Švicarska banka UBS je letos ob začetku kotacije Facebooka izgubila 350 milijonov dolarjev, ko borznemu sistemu ni uspelo pravilno evidentirati vseh vnesenih naročil.
Povprečje zmaga
Algoritmi za trgovanje načeloma uporabljajo iste strategije, kot bi jih lahko ljudje. Bistvena razlika je v hitrosti, s katero lahko izvajajo izračune in vnašajo naročila, ter količini podatkov, ki jih lahko hkrati analizirajo. Zaradi tega so pri algoritemskem trgovanju dobičkonosne tudi nekatere strategije, ki za ljudi v praksi niso.
Vsem pa je skupno, da ne gre za enostavne in gotove izračune. Zgledov, kot je ,,kupim na enem trgu za pet dolarjev in prodam na drugem trgu za šest dolarjev" (enostavna arbitraža), v realnosti ni. V vseh primerih gre za povprečja in statistične verjetnosti, zato algoritmi izvedejo na stotisoče poslov vsako sekundo. Zgodi se, da izgubljajo denar ure ali celo dneve zapovrstjo, a največji uporabniki algoritemskega trgovanja priznavajo, da praktično vsak teden sklenejo z dobičkom. Dobri algoritmi namreč v povprečju zmagujejo.
Svet poganja slaba programska oprema
Na svetu je vedno več vrstic kode in velika večina je napisane malomarno, ugotavljajo raziskave. Pri tem mislimo na kodo, ki ima bodisi hrošče ali ranljivosti bodisi se v nenavadnih razmerah vede nepričakovano in škodljivo. Količina zanikrne kode je tako velika, da se postavlja vprašanje, ali je sploh mogoče napisati obsežnejši program brez hroščev. Tipični operacijski sistem ima več milijonov vrstic kode (znan je podatek za Windows XP, in sicer 40 milijonov vrstic kode). K sreči se izkaže, da je to mogoče, a zelo veliko stane. Tega sta se prvi naučili NASA in letalska industrija, kjer so vložki previsoki, da bi si lahko privoščili malomarnosti. NASA je proces dodelala do potankosti in postavila toge smernice za razvoj programske opreme, ki se jih brez izjeme držijo; trdijo, da ima njihov več sto tisoč vrstic dolg program v povprečju le eno napako na različico. Komercialni programi jih imajo nekaj tisoč. Toda pot do tako izpiljene kode je dolga in predvsem draga. Podrobno načrtovanje, strogi standardi, natančna razdelitev dela in temeljito testiranje so ključ za uspeh, a vse to seveda stane in precej podaljša razvojni cikel. Komercialna programska oprema za vse te korake preprosto nima časa.
Če gre za pametne telefone, televizijske sprejemnike ali mikrovalovne pečice, hrošči nimajo prav hudih posledic. Seveda je pisanje slabe kode moteče in nehigienično, a sprememb tu bržkone ne bo. Dvigala, semaforji in bankomati pa so primer infrastrukture, ki mora delovati z bistveno večjo zanesljivostjo. Še više na tej lestvici so letala in vesoljska plovila, kjer so standardi že postavljeni, ter jedrske elektrarne, plinovodi in - kot ugotavljamo sedaj - borzni algoritmi. NASA se je tega naučila na težji način, saj ji je leta 1999 v Marsovi atmosferi zgorel Mars Climate Orbiter, ker so plovilu, ki razume kilograme in metre, navodila z Zemlje pošiljali v imperialnih enotah. Prav tako se je Knight Capital na težji način naučil, da hrošči v teh primerih povzročajo milijardne škode. Tudi zato so najeli strokovnjake iz IBM za pomoč pri pregledu kode, ki je povzročila avgustovsko katastrofo. IBM je najel tudi Nasdaq za pomoč pri preiskavi težav, ki so se pojavile prvi dan kotacije Facebooka. Tudi v letalski industriji je bilo nekaj nesreč, ki jih je zakrivila programska oprema, a je v primerjavi s človeškimi napakami njihov delež zanemarljiv. Pisanje varne programske opreme je torej mogoče, a terja čas in denar. Ni presenetljivo, da so raketoplane Space Shuttle, ki so se lani upokojili, poganjali procesorji 386, letošnjega roverja Curiosity na Marsu pa procesor iz leta 2001. Enostavno tako dolgo traja, da se sistem docela preizkusi. V vesolju in zraku to zadostuje. Povsem drugače je pri borznem trgovanju, kjer je ključnega pomena tudi hitrost, zato si nihče ne more privoščiti, da bi uporabljal deset let stare procesorje.
Indeks Dow Jones je znamenitega 6. maja 2010 v flash crashu hipoma izgubil skoraj desetino vrednosti in jo kmalu skrivnostno nadoknadil. Vir: Wikipedia.
Porschejeva monopolizacija Volkswagnovih delnic je povzročila short-squeeze. Fanatično dvigovanje tečaja zaradi zapiranja pozicij ni bil hipen dogodek, temveč je trajal cela dva dni. Vir: Seeking Alpha.
Regulativa
Algoritemsko trgovanje zaradi svojega obsega in hitrosti omogoča tudi dobro prikrivanje nezakonitih praks, kot je trgovanje na podlagi notranjih informacij, manipulacija trga itn. Tega se zaveda tudi EU, ki je lani oktobra sprejela Predlog Uredbe o trgovanju z notranjimi informacijami in tržni manipulaciji (zloraba trga), v kateri je tudi točka, ki govori o algoritemskem in visokofrekvenčnem trgovanju. Komisija predlaga, da se podrobno opredelijo posamezni primeri strategij, ki jih tako trgovanje uporablja, in njihova legalnost. Slovenska vlada je lani decembra sprejela stališče, ki je v večini točk enako predlogu EU.
Na resnih borzah je stanje trenutno nekje vmes. Prepovedane so nekatere metode, ki jih radi uporabljajo algoritmi in HFT, spet druge so dovoljene. Nezakonite so predvsem metode, ki jih lahko z vsaj malo domišljije postavimo v kategorijo manipulacija trga. Druge metode, ki jih odlikuje predvsem hitrost, so dovoljene. Seveda se ob tem postavlja vprašanje, kako pošteno je velikim igralcem dovoliti postavljanje strežnikov na kolokacijah, saj to že samo po sebi pomeni, da dobijo podatke s trga prej in imajo tudi krajši reakcijski čas. Četudi bi kolokacijo prepovedali, bi problem ostal, le prevedel bi se na daljše razdalje. Še vedno bi imeli lastniki strežnikov v sosednji zgradbi precejšno prednost pred tistimi z druge celine.
Flash crash je v ZDA sprožil preiskavo, v kateri je SEC odkril številne kršitve tudi na strani borz, zato je SEC letos NYSE kaznoval s petimi milijoni dolarjev kazni; to je precedens. Regulativa namreč zahteva, da imajo vsi uporabniki enak dostop do podatkov o poslih. Podatki za tako imenovano generalno javnost se pošiljajo po splošnih kanalih (consolidated public feed), veliki igralci pa imajo pogosto lastne hitre povezave do borznih strežnikov ali celo kolokacije in seveda lastne kanale (proprietary feeds). SEC je ugotovil, da je NYSE podatke po teh kanalih posredoval hitreje kakor tiste za javnost. Ponekod so bile razlike nekaj milisekund, ponekod debele sekunde, a vsakem primeru več kot dovolj, da so hitri algoritmi pospravili smetano. O tem priča tudi podatek, da kar 80 odstotkov poslov izvedejo podjetja, ki imajo lastne kanale. Omenjena praksa se je izvajala vsaj od leta 2008. Strežniki za public feed pa so imeli povrhu še hrošče, ki so povzročali upočasnjeno delovanje v času velikega obsega, kar je NYSE začel odpravljati februarja 2010. Do maja 2010, ko se je zgodil flash crash, so jih odpravili le polovico, to je po ugotovitvah SEC eden izmed ključnih razlogov za poglobitev padca tistega dne.
Edisonov telegraf je več kot pol stoletja omogočal prenos borznih informacij po svetu. Vir: Wikipedia.
Napaka Knight Capitala je povzročila divje nihanje tečajev delnic in indeksov zaradi ponorelih algoritmov in ponorelega prodajanja in kupovanja delnic. Vir: Nanex.
Pro et contra
Zagovorniki algoritemskega trgovanja trdijo, da je borzam in trgovalcem prineslo precej pozitivnih učinkov. Med njimi najbolj izpostavljajo povečan obseg poslov, znižanje provizij, lažji vnos naročil, nižjo razliko med ceno na ponudbi in povpraševanju ter likvidnost. In imajo prav, čeprav je dvomljiva ocena, kolikšen je prispevek HFT in koliko je k temu prispevala že sama možnost elektronskega trgovanja. Po drugi strani pa so trgi zaradi algoritemskega trgovanja v velikem obsegu inherentno nestabilni. Poleg treh zgoraj opisanih katastrof se vsako leto zgodi več tisoč zlomov, a se končajo v milisekundah in jih nepoučeno oko brez analize dnevnih tečajev ne opazi. Ljudje pač živimo v sekundnem svetu in dogodkov, ki se zgodijo več tisočkrat na sekundo, preprosto ne moremo zaznati. A to ne pomeni, da jih ni.
Raziskovalci z Univerze v Miamiju so letos objavili rezultate raziskave o vplivu ultrahitre tehnologijo na borze in ugotovili zastrašujoča dejstva. Med letoma 2006 (ko so začeli AT/HFT množično uporabljati) in 2011 je bilo 18.520 dogodkov, ki so jih označili kot ultrahitre dogodke črnega laboda. Črni labod je znana prispodoba za dogodek, ki se je zdel tako neverjeten, da nanj ni nihče pomislil, in s svojo pojavitvijo pomembno spremeni dojemanje sveta. V retrospektivi si domišljamo, da bi ga mogli z le nekoliko natančnejšo analizo predvideti, a to ne drži. Teorijo črnega laboda je postavil Nassim Nicholas Taleb v svoji knjigi iz leta 2004, sam termin pa je star vsaj dva tisoč let.
Črni labodi se na finančnih trgih dogajajo pogosteje, kot bi si želeli priznati. Mučna analiza podatkov je pokazala, da se je v zadnjih petih letih 18.520-krat zgodilo, da je cena neke delnice v manj kot poldrugi sekundi zanihala za več kot 0,8 odstotka. V večini teh primerov se je po tej novi ceni zgodilo precej poslov, a se je prejšnja cena spet vzpostavila tako hitro, da ljudje tega niso mogli niti zaznati, kaj šele izkoristiti. Gledamo lahko le za nazaj. Včasih pa se zgodi, da se algoritmom povsem utrga in tedaj tečaji zbezljajo.
HFT pa ima še en problem. Medtem ko ljudje in nekateri algoritmi vsaj deloma vlagajo ali trgujejo tudi fundamentalno (torej glede na stanje, bilance in poslovne izkaze podjetja), HFT tega ne počne. Vsak dan se začne znova in cilj je izkoristiti majhne valove v gibanju tečajev za dobičke nekaj centov, kar se pomnoži z milijoni. Ko se odstotek teh poslov veča, je tečaj delnice vedno manj povezan s fundamentom, saj ta za HFT in tehnično analizo ni pomemben. Takó vzpostavljeno ravnovesje je labilno in podre ga lahko že manjša sapica v obliki nekaj vlagateljev, ki se odločijo za množičen izstop iz pozicij. Računalniški algoritmi tega ne razumejo in se odzovejo napačno.
Ob tem še naglas poudarimo, da do tega odstavka sploh še nismo razmišljali o možnosti za zlikovce, ki bi jim uspelo vdreti v borzne sisteme ali - ker so ti precej dobro zaščiteni - v trgovalne sisteme izvajalcev HFT. V tej perspektivi so možnosti za škode in katastrofalna nihanja še precej večje.
Velike hale strežnikov mnogokrat izdajajo le hladilni sistemi na strehah, ki so ozko grlo pri tlačenju računalnikov na majhen prostor. Vir: Datacenter Journal.
Kdo so in kaj uporabljajo
Veliki igralci oziroma institucionalni vlagatelji, ki uporabljajo algoritemsko trgovanje, niso zlobni množici iz podzemlja. Tudi ne gre za skrivnostne in napol tajne organizacije, temveč običajne finančne institucije. To so velike banke, kot so Goldman Sachs, Credit Suisse ali Deutsche Bank, velikanski hedge skladi in vzdrževalci likvidnosti. V ZDA so leta 1933 sprejeli regulativo (Glass-Steagallov zakon), ki je strogo ločila komercialne banke za poslovanje s prebivalstvom in kreditiranje podjetij od investicijskih bank, a so z različnimi dopolnili zakon v naslednjih desetletjih praktično odpravili. Zadnji udarec je dobil leta 1999 z Gramm-Leach-Blileyjevim zakonom in po mnenju nekaterih analitikov je bil to tudi katalizator za nerazumen razmah finančne industrije in napihovanje balonov, katerih pok je povzročil trenutno recesijo. V Evropi take delitve finančnih igralcev nikoli ni bilo.
Precej bolj zamotano je odkriti, kakšne računalnike in algoritme uporabljajo. Splošni principi so znani in bolj ali manj nespremenljivi, posamezne izvedenke in vse finese, ki naredijo algoritem superioren ali povprečen, pa so trdno varovana poslovna skrivnost. Znano je, da so programerji med najbolj plačanimi na svetu.
Algoritmi so izvedeni v različnih programskih jezikih, a ker so pomembne zakasnitve (najboljši dosegajo manj kot mikrosekundo znotraj računalnika, torej wire-to-wire), je najbolj priljubljena izbira C/C++. V segmentih, kjer hitrost ni absolutno kritična, se uporabljajo še java, lisp, matlab, R, fortran in javascript. Najde se tudi eksotika, kot je ocami ali Microsoftova .NET in C# ali celo lastni jeziki. Na splošno velja, da ima vsako podjetje svoj ekosistem, le pri hitrostno kritičnih delih posežejo po Cjevskih rešitvah.
V zadnjem času se krepi pomen računanja na grafičnih čipih (CUDA) in uporaba namenskih FPGA (field-programmable gate array), prilagojenih posebej za potrebe naročnika. O strojni opremi pa vsi molčijo.
In?
Maslo na glavi imajo tudi borze. Večina težav z visokofrekvenčnim trgovanjem bi odpadla, če bi uvedli zrnat trgovalni čas. Podobno kot se z manj prometnimi delnicami na ljubljanski borzi trguje v avkcijskem načinu, bi lahko tudi prometne delnice iz zveznega načina trgovanja prestavili v nekakšne mini avkcije, ki bi se dogajale vsako sekundo. S tem bi se izognili velikemu delu brezglavega divjanja in lovljenja milisekundnih rekordov, čeprav bi se še vedno poznalo, če bi naročilo prispelo milisekundo pred odprtjem avkcije ali po njej. A v povprečju bi bil vpliv dosti manjši. V tem primeru bi se namreč milisekundni zamiki v povprečju izravnali in ne bi vplivali na uspeh. Bistveno teže bi bilo sicer izkoreniniti vsakršno obliko algoritemskega trgovanja, saj je platforma za vnos naročil in njihovo izvajanje elektronska. Ena izmed možnosti je seveda zakonska prepoved algoritemskega trgovanja, a vprašanje je, kako bi to vplivalo na likvidnost in globino trga in kako bi to sploh v praksi izvedli. Algoritmov kot takih seveda ni mogoče prepovedati, saj je to tako neumno, kakor da bi prepovedali uporabo kvadratne enačbe. Zato tudi ni mogoče prepovedati algoritemskega trgovanja v najširšem pomenu besede. Prav tako ni mogoče prepovedati elektronskega vnosa naročil, saj bi nas to pahnilo nazaj v srednji vek. Zdi se torej, da je manevrski prostor sila omejen. Poleg zrnatega trgovalnega časa so odprte možnosti za razmislek v smer, kot so minimalno obdobje držanja pozicije (na primer nekaj minut), prepoved nekritih kratkih prodaj (to je na večini borz že storjeno), omejitev manipulacij trga (vnašanje lažnih naročil z namenom hitrega preklica, možnost vnašanja skritih količin itd.) ter seveda končanje incestuoznega razmerja med borzami in institucionalnimi vlagatelji, ki jim plačujejo visoke zneske za dobre kolokacije. A po drugi strani prav ti vlagatelji zagotavljajo likvidnost, brez česar bi tudi mali vlagatelji precej teže trgovali.
Algoritmi, ki so bili od začetka zgolj in samo hitri, sicer pa neverjetno neumni, postajajo vedno bolj pametni. Počasi se učijo tudi brati. To pomeni, da algoritmi uporabljajo podobne pajke kot iskalniki po spletu, ki lezejo po najbolj branih straneh in poizkušajo razumeti novice. Ko je 18. avgusta lani Hewlett-Packard na Twitterju objavil, da bo prodal svoj oddelek za razvoj osebnih računalnikov, je njegova delnica strmoglavila skoraj v hipu. A podroben pogled pokaže, da je skok sledil po štirih sekundah od objave. Toliko časa v povprečju potrebuje človek, da prebere 160 črk in jih dojame. Algoritem za celotno operacijo, od prenosa sporočila, analize, vnosa naročila do izvedbe, potrebuje manj kot sto milisekund. Ko torej človek prebere prvo besedo novice, so računalniki že odtrgovali svoje in vest vračunali v tečaj. Podobno se zgodi ob napadih na Bližnjem vzhodu, ko se cene terminskih pogodb na nafto takoj povzpnejo. Smetano je pobral tisti, ki je imel najboljši algoritem ter najhitrejše računalnike in povezave.
Če vas to skrbi, niste edini. Stanje je namreč precej zamotano. Enostavnih rešitev ni, a občutek, da nam nad glavo visi Damoklejev meč, ni prijeten. Celotno dogajanje namreč poteka v časovnih merilih, ki so prekratka za naše zavedanje, v računalniki z algoritmi, ki prekladajo le številke, in jih ne razumemo. A obenem špekulirajo z našimi prihranki za pokojnino, z nafto, ki greje naše domove, in z delnicami podjetij, ki so naši delodajalci. Ostaja nam precej manj poetično in suho realno zavedanje, da naše premoženje upravlja in nadzoruje sistem, ki je prezapleten, da bi ga razumeli.
Incidenti se nadaljujejo
O obsegu in vplivu visokofrekvenčnega trgovanja priča tudi dogajanje v prvem tednu oktobra. Na NASDAQu se je pojavil neznan algoritem, ki je tisti teden vložil kar štiri odstotke vseh naročil, kar je ogromno. Nanj so postali pozorni, ko so opazili vzorec pri naročilih. Vsa so bila vložena v paketih po 200, 400 in naposled 1000, kar se je ponavljalo v 25-milisekundnih intervalih. Vsa naročila so bila preklicana pred izvršitvijo, kar je ena izmed tipičnih taktik algoritmov, s katero tipajo globino trga, in ustvarjajo nedovoljeno povpraševanje oziroma ponudbo na trgu. Hkrati je algoritem zapolnil 10 odstotkov odobrene pasovne širine po borzni infrastrukturi, kar je znatno upočasnilo delovanje sistema in načeloma omogoča žetje dobičkov, ki nastanejo zaradi zapoznelih reakcij ostalih udeležencev. Tako skrivnostno, kakor se je pojavil, je algoritem tudi izginil.
Borza tovrstnih incidentov sploh ne beleži, kaj šele raziskuje, zato v javnost redko pricurljajo. Konkretno dogajanje na ameriških borzah spremlja podjetje Nanex, ki je tudi prvo opozorilo na eskapado Knight Capitala. Regulatorji trga še iščejo rešitve, kako tovrstno početje omejiti, ne da bi ohromili borze. Senatni odbor v ZDA, ki raziskuje Knight Capital, še ni sprejel nobenih sklepov.