16
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

DEXの歴史とAMMの概要、x*y=kについて(PancakeSwap勉強会①)

Last updated at Posted at 2021-05-12

BlockBaseのエンジニアの@suhara_pontaです

先日BlockBaseのdiscordでPancakeSwapの勉強会を開催しました。この記事から数回に渡ってその内容をまとめていきたいと思います。

DEX(分散型取引所)の歴史

暗号資産の取引所はCEX(中央集権型取引所)とDEX(分散型取引所)に分類できます。
スマートコントラクトを用いて、ユーザーが秘密鍵を自分で管理したまま取引を行えるのがDEXです。

初期(2017~18年くらい)のDEXの例として0xやKyber Networkなどがあります。この頃のDEXはCEXと同様、Order Book方式を採用していました(現在はAMMに移行したりしています)。希望者が購入と売却のオーダーをそれぞれ作成してマッチすると取引が成立する方式です。

image.png(出典 https://thecontrol.co/a-comparison-of-decentralized-exchange-designs-1deef249f56a)

これらのプロトコルが抱えていた問題点として、DEXは流動性が低く、なかなか取引が成立しない点にありました。

UniswapはAMM(automated market maker) という仕組みを生み出し、現時点ではこの課題を解決していると言えます。

AMMについて

UniswapのAMMの仕組みについて見ていきます。
https://uniswap.org/docs/v2/protocol-overview/how-uniswap-works/

AMMでは流動性提供という概念があります。LP Providor(流動性提供者)は特定の通貨どうしのペアからなるLiquidity Pool(流動性プール、以下LP)というものを作ります。

このLPはx * y = k という式で端的に表されます。

learning pancakewap@20210511 (1).jpg
例としてDAIとETHのペアを考えます。xはDAIの量、yはETHの量を表します。
LP Providerが100DAIと1ETHのペアをPoolに追加するとK = 100 * 1で100になります。(このとき後述するLPトークンというものをLP Providerは手に入れます。)

ここに100DAIをETHに交換したい人がやってきます。LPに100DAIを追加すると、x = 200DAIになりますが、このときk = 100を維持するようにyの量が 100 / 200DAI = 0.5ETHに変化します。100DAIをETHに変換したい人は、元々LPの中にあった1ETHから変化後の0.5ETHの差額 1ETH - 0.5ETH = 0.5ETHを得ることができます。
learning pancakewap@20210511 (2).jpg

ここに0.3%の取引手数料が加わります。実際には0.5ETHを入手するためには100.3DAIをswapする必要があるということです。取引が行われるごとにkが少しずつ増えていきます。
learning pancakewap@20210511 (3).jpg

最後にLP ProviderがLPの資金を引き上げます。前述したLPトークンをバーンして、DAIとETHを入手します。このとき返還されるのは元の100DAI + 1 ETHではなく、現在LPにある200.3DAI + 0.5ETHです。

図の例ではLP Providerは一人だけですが、実際には不特定多数が金利収入を得るために流動性を提供します。このとき自分がLPにいくら流動性を提供したかを示すのがLPトークンです。LPトークンの保有割合に応じたトークンが返還されます。

DeFiでよく聞くimpermanent lossというのは、この100DAI + 1ETHが 200.3DAI + 0.5ETHに変化することで、損失が起きていることを指します。増加した100.3DAIより減少した0.5ETHのほうが価値が大きい場合、損失が起きています。DeFiの高金利の裏にはこのリスクがあることを理解してください。

さらに各プロトコルは独自のガバナンストークンを発行したり、LPトークン自体をステーキングしてトークンを稼ぐ方法を提示したりなどして、利率を引き上げユーザーを獲得しようと競争していますが、Qiitaにふさわしくない内容になってくるのでここでは割愛します笑

まとめ

  • DEXの低い流動性という課題をAMMが解決した
  • AMMは提供されている流動性がx*y=kで維持されるようにswap時のレートが決まる

以上、AMMについて解説しました。
次の記事ではUniswapの仕組みをBinance Smart Chain上に持ち込んだPancakeSwapのコントラクトを概観します。

16
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?