Tranzacționarea algoritmică (numită și tranzacționare automatizată, tranzacționare cu cutiile negre sau tranzacționare a ceva) folosește un program computerizat care urmează un set definit de instrucțiuni (un algoritm) pentru a desfășura o tranzacție. Comerțul, în teorie, poate genera profituri la o viteză și o frecvență imposibilă pentru un comerciant uman.
Seturile de instrucțiuni definite se bazează pe calendarul, prețul, cantitatea sau orice model matematic. În afară de oportunitățile de profit pentru comerciant, ceva de tranzacționare face piețele mai lichide și tranzacționarea mai sistematică, eliminând impactul emoțiilor umane asupra activităților de tranzacționare.
Comercializarea algoritmică în practică
Să presupunem că un comerciant respectă aceste criterii comerciale simple:
- Cumpărați 50 de acțiuni dintr-un stoc atunci când media sa mobilă de 50 de zile depășește media în mișcare de 200 de zile. (O medie în mișcare este o medie a punctelor de date anterioare care elimină fluctuațiile zilnice ale prețurilor și, prin urmare, identifică tendințele.) Vinde acțiuni ale acțiunii atunci când media sa mobilă de 50 de zile este sub media mobilă de 200 de zile.
Folosind aceste două instrucțiuni simple, un program computer va monitoriza automat prețul acțiunilor (și indicatorii medii în mișcare) și va plasa comenzile de cumpărare și vânzare atunci când sunt îndeplinite condițiile definite. Comerciantul nu mai are nevoie să monitorizeze prețurile și graficele în direct sau să introducă comenzile manual. Sistemul de tranzacționare algoritmic face acest lucru automat identificând corect oportunitatea de tranzacționare.
Bazele comerțului algoritmic
Beneficiile tranzacțiilor algoritmice
Tranzacționarea prin Algo oferă următoarele avantaje:
- Tranzacțiile sunt executate la cele mai bune prețuri posibile. Plasarea comenzii clasice este instantaneu și precisă (există șanse mari de execuție la nivelurile dorite). Gradele sunt cronometrate corect și instantaneu, pentru a evita modificări semnificative ale prețului. Costuri de tranzacție reduse.Controluri automate simultane la multiple condiții de piață. Riscul redus de erori manuale la plasarea tranzacțiilor. Tranzacționarea în comerț poate fi testată cu ajutorul datelor istorice și în timp real disponibile pentru a vedea dacă este o strategie comercială viabilă. A redus posibilitatea greșelilor de către comercianții umani pe baza unor factori emoționali și psihologici.
Cea mai mare parte a tranzacționării de astăzi este tranzacționarea cu frecvență înaltă (HFT), care încearcă să valorifice plasarea unui număr mare de comenzi la viteze rapide pe mai multe piețe și parametri de decizie multiple bazate pe instrucțiuni preprogramate.
Tranzacționarea prin Algo este utilizată în mai multe forme de activități de tranzacționare și investiții, inclusiv:
- Investitorii pe termen mediu sau lung sau firmele din partea cumpărării - fonduri de pensii, fonduri mutuale, companii de asigurări - folosesc ceva de tranzacționare pentru a achiziționa acțiuni în cantități mari atunci când nu doresc să influențeze prețurile acțiunilor cu investiții discrete, de volum mare. - comercianți pe termen lung și participanți la vânzare - producători de piață (cum ar fi casele de brokeraj), speculanții și arbitrii - beneficiază de executarea automată a comerțului; în plus, ceva-tranzacționare ajută la crearea de lichidități suficiente pentru vânzătorii de pe piață. Traderi sistematici - adepți de tendință, fonduri speculative sau comercianți perechi (o strategie de tranzacționare neutră de piață, care se potrivește cu o poziție lungă, cu o poziție scurtă într-o pereche de extrem de instrumente corelate, cum ar fi două acțiuni, fonduri tranzacționate pe bursă (ETF) sau valute) - consideră că este mult mai eficient să-și programeze regulile de tranzacționare și să permită programului să tranzacționeze automat.
Tranzacționarea algoritmică oferă o abordare mai sistematică a tranzacționării active decât metodele bazate pe intuiția sau instinctul comerciantului.
Strategii de tranzacționare algoritmice
Orice strategie de tranzacționare algoritmică necesită o oportunitate identificată care să fie profitabilă în ceea ce privește câștigurile îmbunătățite sau reducerea costurilor. Următoarele sunt strategiile comune de tranzacționare utilizate în algo-trading:
Strategii care urmăresc tendințele
Cele mai frecvente strategii de tranzacționare algoritmice urmăresc tendințele mediilor mobile, defalcărilor canalelor, mișcărilor nivelului prețurilor și indicatorilor tehnici înrudiți. Acestea sunt cele mai simple și simple strategii de implementat prin tranzacționarea algoritmică, deoarece aceste strategii nu implică realizarea unor predicții sau previziuni de preț. Tranzacțiile sunt inițiate pe baza apariției unor tendințe dezirabile, care sunt ușor și simple de implementat prin algoritmi, fără a intra în complexitatea analizei predictive. Utilizarea mediilor mobile de 50 și 200 de zile este o strategie populară care urmărește tendințele.
Oportunități de arbitraj
Achiziționarea unui stoc cu cotă dublă la un preț mai mic pe o piață și vânzarea simultană la un preț mai mare pe o altă piață oferă diferențialul de preț ca profit sau arbitraj fără riscuri. Aceeași operațiune se poate reproduce pentru acțiuni și instrumente futures, deoarece diferențele de preț există din când în când. Implementarea unui algoritm pentru identificarea acestor diferențe de preț și plasarea comenzilor permite oportunități profitabile.
Reechilibrarea fondurilor index
Fondurile index au definit perioadele de reechilibrare pentru a-și aloca participațiile la indicii de referință respectivi. Acest lucru creează oportunități profitabile pentru comercianții algoritmi, care valorifică tranzacții preconizate care oferă profituri între 20 și 80 de puncte de bază, în funcție de numărul de stocuri din fondul indicelui chiar înainte de reechilibrarea fondurilor index. Aceste tranzacții sunt inițiate prin sisteme algoritmice de tranzacționare pentru executare la timp și cele mai bune prețuri.
Strategii bazate pe modelul matematic
Modelele matematice dovedite, cum ar fi strategia de tranzacționare neutră delta, permit tranzacționarea cu o combinație de opțiuni și securitatea de bază. (Delta neutru este o strategie de portofoliu care constă în mai multe poziții cu compensarea deltelor pozitive și negative - un raport care compară schimbarea prețului unui activ, de obicei o garanție comercializabilă, cu modificarea corespunzătoare a prețului derivatului său - astfel încât, în general delta a activelor în cauză totalizează zero.)
Interval de tranzacționare (Reversiunea medie)
Strategia medie de inversare se bazează pe conceptul că prețurile mari și mici ale unui activ sunt un fenomen temporar care revine periodic la valoarea medie (valoarea medie). Identificarea și definirea unui interval de prețuri și punerea în aplicare a unui algoritm bazat pe acesta permite tranzacțiile să fie plasate automat atunci când prețul unui activ se încadrează și nu se încadrează în intervalul său definit.
Preț mediu ponderat în volum (VWAP)
Strategia prețului mediu ponderat în volum rupe o comandă mare și eliberează pe piață bucăți mai mici determinate dinamic ale comenzii folosind profiluri de volum istorice specifice stocurilor. Scopul este de a executa comanda aproape de prețul mediu ponderat în volum (VWAP).
Preț mediu ponderat în timp (TWAP)
Strategia prețului mediu ponderat în timp descompune o comandă mare și eliberează pe piață bucăți mai mici determinate dinamic ale comenzii folosind sloturi orare împărțite uniform între ora de început și sfârșitul. Scopul este de a executa comanda apropiată de prețul mediu între orele de început și sfârșit, reducând astfel impactul pe piață.
Procentul volumului (POV)
Până la completarea comenzii comerciale, acest algoritm continuă să trimită comenzi parțiale în funcție de raportul de participare definit și în funcție de volumul tranzacționat pe piețe. „Strategia etapelor” aferentă trimite comenzi la un procent definit de utilizator din volumul pieței și crește sau scade această rată de participare atunci când prețul acțiunilor atinge niveluri definite de utilizator.
Deficitul de implementare
Strategia de neajunsuri de implementare are ca scop minimizarea costului de execuție a unei comenzi prin tranzacționarea de pe piața în timp real, economisind astfel costul comenzii și beneficiind de costul de oportunitate al executării întârziate. Strategia va crește rata de participare țintă atunci când prețul acțiunilor se mișcă favorabil și îl va scădea atunci când prețul acțiunii se deplasează negativ.
Dincolo de algoritmii de tranzacționare obișnuită
Există câteva clase speciale de algoritmi care încearcă să identifice „întâmplările” pe cealaltă parte. Acești „algoritmi de adulmecare” - folosiți, de exemplu, de către un producător de piață de vânzare - au inteligența încorporată pentru a identifica existența oricăror algoritmi pe partea de cumpărare a unei comenzi mari. Această detectare prin algoritmi va ajuta producătorul de piață să identifice oportunități mari de comandă și să le permită să beneficieze prin completarea comenzilor la un preț mai mare. Aceasta este uneori identificată ca fiind tehnologie avansată.
Cerințe tehnice pentru tranzacționarea algoritmică
Implementarea algoritmului folosind un program de calculator este componenta finală a tranzacționării algoritmice, însoțită de testare (încercarea algoritmului pe perioadele istorice ale performanțelor bursiere trecute pentru a vedea dacă utilizarea acestuia ar fi fost profitabilă). Provocarea constă în transformarea strategiei identificate într-un proces computerizat integrat, care are acces la un cont de tranzacționare pentru plasarea comenzilor. Următoarele sunt cerințele pentru tranzacționarea algoritmică:
- Cunoștințe de programare pe calculator pentru a programa strategia de tranzacționare necesară, programatori angajați sau software de tranzacționare pre-fabricat. Conectivitate la rețea și acces la platforme de tranzacționare pentru a plasa comenzi. Accesul la alimentarea fluxurilor de date care vor fi monitorizate de algoritm pentru oportunități de plasare a comenzilor. Capacitatea și infrastructura de a testa sistemul, odată ce a fost construit înainte de a intra în direct pe piețele reale. Date istorice disponibile pentru testare în funcție de complexitatea regulilor implementate în algoritm.
Un exemplu de tranzacții algoritmice
Royal Dutch Shell (RDS) este listată la Bursa din Amsterdam (AEX) și la Bursa din Londra (LSE). Începem prin construirea unui algoritm pentru identificarea oportunităților de arbitraj. Iată câteva observații interesante:
- AEX tranzacționează în euro, în timp ce LSE tranzacționează în lire sterline britanice. Datorită diferenței de timp de o oră, AEX se deschide cu o oră mai devreme decât LSE, urmată de ambele schimburi de tranzacționare simultan pentru următoarele ore și apoi tranzacționează doar în LSE în ultima oră ca AEX se închide.
Putem explora posibilitatea tranzacționării arbitrajului pe stocul Royal Dutch Shell listat pe aceste două piețe în două monede diferite?
cerinţe:
- Un program de calculator care poate citi prețurile curente de pe piață. Feed-uri atât de la LSE, cât și de la AEX.Un flux de schimb valutar (GBP) pentru GBP-EUR. Posibilitate de plasare a comenzii care poate orienta comanda către schimbul corect. Capacitate de testare a prețului istoric feed-uri.
Programul computerului trebuie să efectueze următoarele:
- Citiți fluxul de prețuri primite din stocul RDS de la ambele burse. Folosind ratele de schimb disponibile, convertiți prețul unei monede în alta. Dacă există o discrepanță suficientă de preț (reducerea costurilor de brokeraj), ceea ce duce la o oportunitate profitabilă, atunci programul ar trebui să plaseze comanda de cumpărare pe schimbul cu prețuri mai mici și să vândă comanda pe schimbul cu preț mai mare. Dacă comenzile sunt executate după dorință, va urma profitul de arbitraj.
Simplu și ușor! Cu toate acestea, practica de tranzacționare algoritmică nu este atât de simplă de întreținut și de executat. Nu uitați, dacă un investitor poate plasa un comerț generat de ceva, la fel și alți participanți la piață. În consecință, prețurile fluctuează în miliarde și chiar în microsecunde. În exemplul de mai sus, ce se întâmplă dacă o tranzacție de cumpărare este executată, dar comerțul de vânzare nu se datorează faptului că prețurile de vânzare se schimbă în timp ce comanda intră pe piață? Comerciantul va rămâne cu o poziție deschisă, ceea ce face ca strategia de arbitraj să nu aibă valoare.
Există riscuri și provocări suplimentare, cum ar fi riscurile de eșec al sistemului, erorile de conectare la rețea, intervalele de timp între comenzile comerciale și execuția și, cel mai important dintre toate, algoritmi imperfecți. Cu cât este mai complex un algoritm, cu atât este nevoie de testarea mai strictă înainte de a fi pus în acțiune.
