• Likvidita na Uniswapu

  1. Architektura návrhu protokolu Uniswap se liší od modelu v tradičních výměnách digitálních aktiv. Většina tradičních burz vede knihu objednávek a používá ji ke spárování kupujících a prodejců určitého aktiva. A Uniswap používá **likvidní rezervy** k realizaci transakcí s digitálními aktivy ve smlouvě.

  2. Rezervy likvidity pro obchodní kontrakty jsou poskytovány poskytovateli likvidity v síti. Tito poskytovatelé likvidity ukládají ekvivalentní tokeny ETH a ERC20 do konkrétních obchodních kontraktů s tokeny ERC20. První poskytovatel likvidity, který poskytne likviditu na směnný kontrakt, nejprve nastaví směnný kurz mezi ETH a odpovídajícím tokenem ERC20 v tomto směnném kontraktu. Poskytovatelé likvidity nastavují tento směnný kurz uložením toho, o čem se domnívají, že je ekvivalentem ETH a tokenu ERC20 podpořeného smlouvou. Pokud je směnný kurz stanovený poskytovatelem likvidity nekonzistentní s širším trhem směn kryptoměn, pak arbitrážní obchodníci povedou směnný kurz mezi tokeny ETH a ERC20 k tomu, co trh považuje za správný směnný kurz. Proto všichni následující poskytovatelé likvidity použijí směnný kurz, když vloží aktiva k uložení likvidity.

  3. Uniswap také používá takzvané **"tokeny likvidity" (tokeny likvidity), které jsou samy o sobě kompatibilní s ERC20. Tyto tokeny lze chápat jako vyjádření příspěvku poskytovatele likvidity k obchodní smlouvě. Důvodem omezení Uniswapu na podporu pouze jednoho tokenu ERC20 na obchodní smlouvu je povzbudit poskytovatele likvidity, aby svá aktiva likvidity sdružili do jediné rezervy**. Uniswap sleduje relativní podíl každého poskytovatele likvidity, který přispívá k celkové rezervě ražením tokenů likvidity. Poskytovatelé likvidity jsou schopni spálit své tokeny likvidity v čase, který si sami zvolí, aby si mohli vybrat poměrnou část svých tokenů ETH a ERC20 ze smlouvy o směně.

  4. Poskytovatelé likvidity se mohou rozhodnout prodat nebo převést své tokeny likvidity bez odstranění likvidity ze smlouvy o směně. Tokeny likvidity Uniswapu jsou však striktně přiřazeny ke smlouvě o výměně. S protokolem Uniswap není spojeno žádné nativní digitální aktivum. Poskytovatelé likvidity mohou také vkládat likviditu do obchodních kontraktů voláním funkce addLiquidity(). Jako odměnu za poskytnutí likvidity dostanou poskytovatelé likvidity určité procento transakčních poplatků při provedení transakce

  5. Obchodování na Uniswapu: Obchod ETH ⇄ ERC20 Jedním typem transakce, kterou lze provést v protokolu Uniswap, je výměna ETH za jakýkoli konkrétní token ERC20. Jak bylo uvedeno výše, směnný kurz mezi ETH a určitým tokenem ERC20 je založen na relativním velikost každého fondu likvidity aktiv v obchodní smlouvě. Směnný kurz je založen na invariantu Uniswapu: ETH pool token pool = invariant (invariant). Během provádění jakékoli transakce na protokolu Uniswap zůstává invariant (invariant) nezměněn. Kromě toho se invarianty mění pouze tehdy, když likvidita v obchodovaných kontraktech roste nebo klesá.

  • Příklad ETH ⇄ BAT: Bob chce zahájit transakci za účelem výměny 1 ETH za token ERC20 BAT. Bob k provedení této transakce použije existující výměnnou smlouvu na protokolu Uniswap. Poskytovatel likvidity vložil do smlouvy o směně určité množství ETH a BAT, pro tento příklad řekněme 10 ETH a 500 BAT. Základní invariant je nastaven jako: ETH pool *BAT pool = invariant (invariant), to znamená:

ETH pool = 10 BAT

bazén = 500

Invarianty = 10 * 500 = 5 000

Bob zahájí svou transakci odesláním 1 ETH do fondu ETH transakční smlouvy a na tomto základě odečte 0,3 % jako poplatek pro poskytovatele likvidity. Zbývajících 0,997 ETH bylo přidáno do zásoby ETH. Poté vydělte invariant novým celkovým ETH, abyste určili nejnovější velikost fondu BAT. Zbývající žetony BAT jsou poté odeslány kupujícímu, v tomto případě Bobovi. to je:

ETH pool = 10 BAT

bazén = 500

Invarianty = 10 * 500 = 5 000 Bob

zahájí svou transakci zasláním 1 ETH do fondu ETH transakční smlouvy a na tomto základě odečte 0,3 % jako poplatek pro poskytovatele likvidity. Zbývajících 0,997 ETH bylo přidáno do zásoby ETH. Poté vydělte invariant novým celkovým ETH, abyste určili nejnovější velikost fondu BAT. Zbývající žetony BAT jsou poté odeslány kupujícímu, v tomto případě Bobovi. to je:

Bob posílá: 1 ETH

Manipulační poplatek: 0,003 ETH

ETH pool = 10 + (1 – 0,003) = 10,997

BAT pool = 5000/10,997 = 454,67

Bob dostává: 500 – 454,67 = 45,33 BAT

Manipulační poplatek zaplacený poskytovateli likvidity byl odečten, když Bob inicioval transakci, a nyní je tento manipulační poplatek přidán do fondu likvidity (což znamená, že se invariant zvýší). To funguje jako platba poskytovatelům likvidity, kterou mohou inkasovat, když z trhu odstraní své příspěvky na likviditu. Protože se tento poplatek znovu připočítává po kalkulaci ceny, při každé transakci na směnném kontraktu se invariant postupně zvyšuje, čímž se akt uložení likvidity do směnného kontraktu stává důležitým pro likviditu. Pro poskytovatele sexu je to výnosná činnost. v tuto chvíli:

ETH pool = 10,997 + 0,003 = 11

BAT pool = 454,67 nových

invariant = 5 001,37

V této transakci Bob získá BAT za směnný kurz 45,33 BAT/ETH.

Vstup: 1 ETH

Výstup: 45,33 BAT

Směnný kurz = 45,33 BAT/ETH

Obchodování na Uniswapu: ERC20 ⇄ ERC20 Obchodování

Dalším typem transakce, kterou lze provést v protokolu Uniswap, je výměna jednoho tokenu ERC20 za jiný token ERC20. Protože ETH se používá jako veřejný obchodní pár pro všechny tokeny ERC20, Uniswap používá ETH jako zprostředkovatelské aktivum pro přímé transakce mezi ERC20 a ERC20. Uniswap může například převést tokeny BAT na ETH v určité transakční smlouvě a poté převést tuto část ETH na OMG v jiné transakční smlouvě, přičemž všechny jsou dokončeny v jedné transakci, takže je možná jakákoliv výměna dvou tokenů ERC20.

Tento vzorec funguje velmi podobně jako normální trh v tom, že čím více žetonů koupíte, tím vyšší mezní směnný kurz musíte zaplatit, abyste si koupili další jednotku žetonů.