...by Daniel Szego
quote
"On a long enough timeline we will all become Satoshi Nakamoto.."
Daniel Szego

Monday, March 27, 2023

Bevezetés a kripto-tőzsdék működésébe

 



A decentralizált pénzügyek cikksorozatunk új fejezetében elmerülünk a DeFi szinteken belül a protokollok világában, elsőnek a kripto-tőzsdék működésével.

A kripto-tőzsdéknek legegyszerűbb esetben egyetlen egy funkciójuk van: egy tokent váltanak egy másik tokenre valamilyen áron. Más megfogalmazásban valamilyen mennyiségű X tokenért valamilyen mennyiségű Y tokent adnak. A tokenek itt szűkebb értelemben általában valamely felcserélhető tokenek. 

Centralizáltság szerint a kripto-tőzsdéknek a következő nagy típusait különböztethetjük meg:

- Centralizált kripto-tőzsdék: A centralizált kripto-tőzsdék a legrégebbi és legklasszikusabb tőzsdék. Ilyen például a Coinbase, vagy a Kraken. Legfontosabb tulajdonságuk, hogy minden centralizáltan egy adott cégnél fut. Amennyiben valaki tokent szeretne cserélni egy másik tokenre, akkor a tokenjét be kell utalnia a tőzsdei infrastruktúrába, majd miután a kereskedés megtörtént, a tőzsde visszautalja neki az átváltott tokent. A centralizált tőzsdék elég komoly kockázatot jelentenek, mivel közvetlenül tárolják az átutalt token mennyiségeket, így hackelhetőek és cenzúrázhatóak is. Amennyiben meghackelik őket, úgy ezek a token mennyiségek elvesznek. Klasszikus ilyen történet az Mt.Gox ellen elkövetett többszörös hackelés, melynek következtében az exchange többször csődbe ment, legutoljára végérvényesen. 

- Decentralizált kripto tőzsdék: A decentralizált kripto-tőzsdék algoritmusa teljes mértékben a blockchain-en, smart contract-ok segítésével van implementálva.  A teljesen decentralizált működésnek előnye a transzparencia, cenzúrázhatatlanság, illetve megfelelő implementáció esetén a hackelés elleni rezisztencia. A decentralizált kripto-tőzsdék nehézsége a blockchain protokollok skálázhatósági problémáiból ered. A legtöbb nyilvános blockchain protokoll limitált mennyiségű tranzakciót képes másodpercenként végrehajtani, illetve a tranzakciók végrehajtási ideje is eltart egy pár másodpercig. Éppen ezért nehézkes a legtöbb esetben a teljes tőzsdei algoritmust pusztán on-chain smart contract-ok segítségével implementálni. Decentralizált kripto-tőzsdére példa a Uniswap protokoll. 

- Félig centralizált, hibrid kripto-tőzsdék: gyakorlati megvalósítások esetén számos esetben találkozunk hibrid architektúrával, ahol a tőzsde egyes részei hatékonysági okokból centralizáltan valósulnak meg míg más részei decentralizáltan smart contract-ok segítségével. Tipikusan az ajánlati könyv ( order book) feldolgozást végző algoritmust szokták centralizáltan megvalósítani, míg a konkrét token cserék (settlement) decentralizáltan kerülnek implementálásra. Hibrid kripto-tőzsdére példa a 0x protokoll. 

A kripto-tőzsdéket megkülönböztethetjük aszerint is, hogy milyen jellegű szolgáltatást nyújtanak a végfelhasználók számára : 

- Token csere (token swap): a legelemibb művelet a token csere (piaci ajánlat, market order), ahol bizonyos mennyiségű X tokent cserélünk bizonyos mennyiségű Y tokenre. A liquidity pool alapú decentralizált kripto-tőzsdék általában csak ilyen jellegű műveleteket nyújtanak.  

- Eladási / vételi ajánlatok (buy / sell order. limit order, limit ajánlatok) : a klasszikus működésű kripto–tőzsdéknél általában komplex eladási és vételi opciókat is elő lehet állítani, ahol egy adott mennyiségű token adott árú és időtartamú eladására vagy vételére lehet feltételes ajánlatokat tenni. Amennyiben a megfelelő ellenajánlat megtalálható, úgy a két ajánlat teljesítésre kerül. Így működik a legtöbb centralizált kripto-tőzsde, például a Coinbase vagy a Kraken. A limit ajánlatoknak több különböző megvalósítása is lehetséges, több különböző paraméterrel. Az egyik lehetséges megvalósításnál egy stop aktiválási árat is meg lehet adni, ahol az ajánlat csak akkor az ár elérésekor kerül be az ajánlati könyvbe. 

- Határidős és opciós ügyletek: egyes kripto-tőzsdék opciós ügyleteket is az ügyfeleik rendelkezésére bocsátanak, ahol tokenek jövőbeli elvárt teljesítményével lehet kvázi kereskedni. Legjobb példa ilyen jellegű tőzsdére a dY/dX protokoll.

- Nem helyettesíthető termékekkel kapcsolatos szolgáltatások: a kripto-tőzsdéken megtalálhatók NFT tokenekkel kapcsolatos kereskedési lehetőségek is. Az NFT kereskedést nem mindig szokták a kripto-tőzsdékhez sorolni, általában speciális NFT piactereken szoktak velük kereskedni. Azonban a határ gyakran összemosódik a kettő között.

A legegyszerűbb esetben egy kripto-tőzsde működése hasonlóan egy normális tőzsdéhez, ajánlati könyv alapú.

  1. Ábra. Ajánlati könyv (order book)

Az ajánlati könyvben egy tokenpárhoz tartozó eladási és vételi opciók vannak felvéve:

- Az eladási ajánlat leírja, hogy valamely X tokenből x mennyiséget szeretnék eladni egy Y tokenért cserébe úgy, hogy legalább y darab tokent szeretnék kapni érte. Egy egyszerű tőzsde esetén az Y token általában valamilyen közös valuta például USD, vagyis az eladási opciót úgyis meg lehet fogalmazni, hogy X tokenből x mennyiséget szeretnék eladni, legalább egy bizonyos áron. 

- A vételi ajánlat ennek az ellentéte, leírja, hogy valamely X tokenből szeretnék x mennyiséget vásárolni egy Y tokenért amiből legfeljebb y mennyiséget szeretnék adni. Ha az Y token valamely fiat valuta például USD, akkor úgy is lehet fogalmazni, hogy X tokenből szeretnénk adott mennyiséget vásárolni legfeljebb egy adott áron. 

Az ajánlati könyv egy automatikus algoritmus segítségével összerendeli a vételi és eladási ajánlatokat. Például ha van egy vételi ajánlat 100 darab token legfeljebb 110 USD áron és van egy eladási ajánlat 100 darab tokenre legalább 110 dolláros eladási áron, akkor a két ajánlat egymással összepárosítható és a tokenek a megadott áron tulajdonost cserélhetnek. Általános esetben az algoritmus ennél komplikáltabb, általában több vételi és több eladási ajánlatot kombinál össze lehetőség szerint minél optimálisabban, majd teljesíti a kombinációnak megfelelő token transzfereket. Az összerendelésre több különböző algoritmus is létezik, melyek különböző szempontok szerint optimalizálják az ajánlatok kombinálását és teljesülését. Lényegében egy tőzsde technikai szemszögből nézve egy végtelen ciklusban futó alkalmazás, melynek két fő funkciója van:

- egyrészt az újonnan érkező vételi és eladási ajánlatokat folyamatosan felveszi ajánlati könyvbe. 

- másrészt pedig  folyamatosan összekombinálja a vételi és eladási ajánlatokat az ajánlati könyvben, majd amennyiben ezek összeillenek, akkor teljesit a nekik megfelelő megbízást és utána törli őket.

A következő cikkünkben a decentralizált kripto-tőzsdék elméletével és gyakorlatával ismerkedünk meg.