※本記事へのコメント・質問等は私のX(旧ツイッター)にDMで送っていただいても大丈夫です。丁寧に回答させていただきます。
Uniswap(ユニスワップ)は、2018年11月にローンチされた分散型取引所(Decentralized Exchange)です。
初の自動マーケットメーカー(AMM)を備えた仮想通貨取引所であり、主にイーサリアムブロックチェーン上で広く利用されています。
ユニスワップは2020年3月にバージョン2.0であるV2をローンチ、2021年5月にはバージョン3.0であるV3がローンチされました。
本記事を最後まで読むことで、UniswapのV3とV2の違い、利用上の注意点を詳しく理解することができます。
UniswapV3とUniswapV2の違いとは
UniswapV3とUniswapV2の仕様には、大きく分けて次の5つの違いがあります。
順番にご紹介していきます。
①価格帯を事前に決めて流動性を提供
UniswapV3のUniswapV2との1点目の違いは、流動性を提供する価格帯を事前に決める必要があるという点です。
UniswapV3では、流動性マイニングを行うときに、提供する価格帯を事前に決めなければなりません。
従来のUniswapV2では価格帯を指定できず、全ての価格帯に満遍なく流動性を提供していました。
イラストでイメージすると、次の通りです。(縦軸:流動性金額、横軸:価格帯)
事前に価格範囲を狭くすればするほど、イラスト右のように細く長い流動性が提供され、現在の価格が提供した価格レンジに該当する場合のみ、あなたの流動性はスワップで利用されることになります。
UniswapV3の実際の流動性提供画面では次のような画面が表示されますが、右上の青いデータは流動性提供者が価格帯を自由に決めて流動性を提供した積み上げ結果です。
詳しくは後述しますが、流動性としてスワップに利用されないと手数料を報酬としてもらえないため、現在価格付近に流動性が集まり、山が高くなります。
このように現在価格付近に流動性が集中しやすくなるような流動性を「Concentrade Liquidity(集中流動性)」と呼び、UniswapV3の最も特徴的な点といえます。
②価格帯に該当してると手数料を貰える
UniswapV3のUniswapV2との2点目の違いは、提供した価格帯に現在価格が該当している場合のみ、利用者のスワップ手数料を報酬として貰えるという点です。
UniswapV3では、価格帯を事前に決めて流動性を提供する「Concentrade Liquidity(集中流動性)」が採用されていることをご紹介しました。
この集中流動性が採用されている理由は、UniswapV3では「資本効率性(Capital Efficiency)」を重要視しているからです。
従来のUniswapV2では流動性が満遍なく配置されていましたが、結局実際のスワップに利用される流動性は、その内の極僅かでした。
つまり、ほとんどの仮想通貨は流動性として機能することなく、ただDEX上に放置されているだけになっていました。
UniswapV3の集中流動性により、現在付近のみに仮想通貨が提供されるようになり、このとき提供される流動性の金額は従来のV2より小さくなります。
提供される流動性が小さくても問題ない理由は、報酬としての利用者のスワップ手数料が適切な価格レンジで流動性を提供した人に集中し、APR(年利率)が高くなるからです。
UniswapV3では価格レンジを絞って提供すれば、V2のときのAPRの数倍・数十倍のAPRを簡単に出すことができます。(後述のインパーマネントも発生しやすくなるが)
従って、リターン(&リスク)がV2より高くなるため、必然的に投資家は提供する流動性の金額を小さくすることになります。
ここでV2と比べて提供されなかった仮想通貨は、例えばステーキング等でより有効に利用されることになる訳ですね。
③スワップ手数料は流動性提供者が決定
UniswapV3のUniswapV2との3点目の違いは、流動性を提供する側が利用者のスワップ手数料率を決めるという点です。
UniswapV3では、次の4つの手数料率から流動性提供者側で自由に選ぶことができます。
基本的には推奨される手数料率が銘柄毎に決まっており、例えばステーブルコイン同士のペアなら0.01%が自動提案され、逆に草コインを含むペアであれば1%が推奨されます。
このように設定される理由は、流動性提供者の利益が「スワップ利用者の手数料-流動性提供者のインパーマネントロス」で計算されるからです。
ステーブルコインはインパーマネントロスが発生しないStableSwap AMMという仕組みが利用されているので、手数料をそこまで報酬として貰わなくても流動性提供者側にとっては十分メリットがあります。
だから利用者にそこまで手数料を支払ってもらう必要がない訳ですね。
逆に、草コインが含まれるペアはインパーマネントロスが大きくリスクが高いため、手数料を高く設定して流動性提供者にとってのメリットを増やし、流動性を集められるようにします。
このように、UniswapV3では流動性プール毎に、利用者と投資家にとって最適な手数料率が設定されていることが分かります。
④価格帯毎に異なる流動性のグラフ
UniswapV3のUniswapV2との4点目の違いは、V2のようにxy=kのグラフで流動性プールが変化するのではなく、価格帯毎に異なる式を持った流動性プールが存在する点です。
Uniswap V2では流動性提供者全員で1つの流動性プールを構築しているイメージで、利用者側は1つの流動性に対してスワップを行っていました。
具体的には、次のようなXY=k(X,Yは流動性提供の枚数、kは流動性の追加や削除の際に決まる固定の値)のグラフに従って、流動性プールの中身や仮想通貨の価格は変化していました。
XとYの定積(k)で決まる自動価格決定の仕組み(AMM)なので、Costant Product AMM(定積AMM)と呼ばれています。
UniswapV3も各仮想通貨ペア毎に流動性プールは1つですが、価格帯毎に異なる流動性プールが大量に存在しているイメージです。
分かりやすくするために、3人でユニスワップV3にBTC&USDTの流動性を提供している場合をイメージしてみましょう。(BTCは正確にはWBTC)
事例①:BTCの価格が上昇しているケース
現在のBTCの価格は$60,000で、Aさん、Bさん、Cさんの3人は以下の価格範囲で流動性を提供する中、BTCの価格が$61,000まで上昇しました。
- A:「59,000~61,000USDT」で配置(BTC&USDTの複合ポジ)
- B:「61,000USDT~∞」で配置(BTCの単一ポジ)
- C:「0~59,000USDT」で配置(USDTの単一ポジ)
※BさんはBTCの価格上昇を予測した戦略を取っているため、集中流動性の仕組みではより流動性として必要になるBTCの単一ポジションしか取ることができません。
※CさんはBTCの価格下落を予測した戦略を取っているため、集中流動性の仕組みではより流動性として必要になるUSDTの単一ポジションしか取ることができません。
現在価格時点ではAさんの流動性プールのみが現在価格に該当しており、Aさんの流動性のみが機能していて手数料報酬をもらえています。
USDTでBTCが購入されBTC$61,000まで上昇すると、Aさんの流動性の曲線は赤①の位置まで移動し、この流動性は価格帯から外れて機能しなくなります。
今度はBさんの流動性が機能するようになります。Bさんの流動性は赤②からスタートします。価格上昇を想定したポジションのため、この時点ではBTCの単一ポジションです。(資本効率性の観点からBTCしか必要ない)
さらにBTCが買われると、Bさんの流動性の曲線の赤③の位置まで移動していきます(同時にUSDTのポジションも増える)。
このように、ユニスワップV3では価格が変化する毎にスワップで利用される流動性がアクティベイト・ディアクティベイトを繰り返します。
事例②:BTCの価格が下落しているケース
BTCの価格が下落する場合は、先ほどの例とは逆の動きになり、Aさんのポジションが機能しなくなると同時にCさんのポジションが機能するようになります。
今回は分かりやすくするために3人で流動性を提供する例でご説明しましたが、実際は大量の投資家が様々な戦略で流動性を提供しています。
各流動性プールの価格はtick(ティック)という単位で分割され、複数人の流動性提供範囲が重なると各ティックに流動性が蓄積されます。
特に現在価格付近のティックに流動性が蓄積されやすいです。
集中流動性におけるtickは山が高ければ高いほど価格が動きづらく、スワップ利用者の「プライスインパクト」が小さくなり、適正価格でスワップしやすくなります。
また、各tickの間隔はUSDT&USDCや、BTC&ETHといった安定ペアであればあるほど狭く設定されます。(つまり適正な手数料が安いほどtickも狭い)
安定ペアは価格変動が好まれないため、なるべくスワップによる価格変化を緩やかにする必要があるからです。
⑤流動性は1:1の等価提供する必要なし
UniswapV3のUniswapV2との5点目の違いは、流動性として提供する仮想通貨のペアを1:1の等価で提供する必要がないという点です。
Uniswap V3では、流動性を提供するときに2つの仮想通貨を等価の1:1に設定する必要はありません。
先ほど例に挙げた、3人が流動性プールに仮想通貨を提供している状態をもう一度イメージしてみましょう。
例えば、Bさんは提供する流動性の価格帯の下限を現在の価格よりも大きく設定していますが、この場合は供給する流動性は全てBTCにしなければなりません。
これはUniswapV3が重要視している「資本効率性」の観点からすると、USDTが必要ないからです。
Bさんの流動性はAさんの流動性でBTCが全て買い尽くされた時にアクティブになりますが、この状態というのは流動性からBTCがなくなっており、さらにBTCを利用者に買わせてあげるにはBTCだけが必要だからです。
この時Aさんの流動性が機能しなくなりUSDTが機能していないですが、BTCが売られて価格が少しでも下がると今度はAさんの流動性が再度アクティブになり、USDTが流動性として機能するようになります。
このように、下限の価格が現在価格に近付けば近づくほど流動性として提供しなければならないUSDTの枚数は減り、逆に上限の価格が現在価格に近付けば近づくほど、必要になるBTCの枚数が減るという訳です。
ちなみに、等価の1:1で流動性を提供したいときをイメージすると、次のように価格帯の下限と上限を設定します。
この場合、下限価格/現在価格=現在価格/上限価格=0.81となるようにレンジを設定すると、現在価格が10,000USDT/BTCのときに10,000USDTと1BTCでV2と同じように流動性を提供できます。
V3とV2のインパーマネントロスの違い
UniswapV3のインパーマネントロスについては、下の記事で詳しく解説しています。
UniswapV2のインパーマネントロスについては、下の記事で詳しく解説しています。
コメント