Carbonホワイトペーパーの要約
先日、Carbonプロトコルの主なアイデアが記述されたホワイトペーパーが発表されました。この投稿では、その概要をいくつかのセクションに分けて紹介します:
指値注文における既存AMMの欠点
ホワイトペーパーは、まず自動マーケットメイカー(AMM)の進化につ いて歴史的背景を説明しています。
第一世代のAMMは「コンスタント・プロダクト」方式を採用していました。このテクノロジーは通常、無限の為替レートの範囲で2つのペア資産の取引をサポートすします。しかし、ほとんどの場合、市場のどの2つの資産もほぼ一定の範囲で取引されています。つまりコンスタント・プロダクトAMMは、合理的な仮定の下では(仮に到達することがあったとしても)めったにない価格帯での取引に対応していることを意味します。その結果として、コンスタント・プロダクトAMMの担保の大半は非効率的に使用されている状況にあります。
AMMは、集中流動性の導入によって、より一層の変化がもたらされました。ユーザーは無限の範囲に流動性を提供することを強いられる代わりに、特定の価格帯に流動性を提供することが可能になったのです。これは流動性プロバイダーに、トークンがどのように取引に使われるかをよりコントロールできるようにする一方で、多くのLPは現在でもAMMに同じ目標を持って取り組んでいる状況があります。流動性集中型AMMのほとんどのLPは、ILを考慮に入れても収支が合わないことが、多くの研究により 明らかされてきています。
最近、集中流動性AMMでは、利用者が取引手数料を得るためだけに流動性を提供するのではなく、AMMを利用して市場に「指値注文」を出すという新しいパラダイムが生まれつつあります。この注文方式では、オンチェーン流動性を提供して、それに対して他のユーザーが成行注文を行うという点で、従来のLPポジションと同様の目的を果たします。しかし、LPの目的は、取引手数料を得ることではなく、特定の価格・レンジで取引を執行することにあります。実際に指値注文のユーティリティに従来の集中AMMを使用すると、以下のような問題が発生します:
- 流動性が自己反転する: 執行された指値/レンジ注文は、市場が後退すると(ユーザーが時間内に流動性を引き出さない限り)取り消されます。
- 流動性の更新と自動化にコストがかかる: ユーザーがポジションを別の価格帯に移動させるには、流動性のあるポジションを引き出して再作成する必要があるため、ガスコストがかかります。
- MEVが横行している: 既存のAMMに対して成行注文を行うユーザーは、「MEV(Maximum Extractable Value)」サンドイッチ攻撃にさらされます。
Carbonの紹介
Carbonはトレーダーを念頭に置いて設計されたDEXであり、真のオンチェーン指値・レンジ注文とMEV耐性のあるスポット取引を可能にします。その最も重要な特徴は、集中的かつパラメトリックに調整可能な非対称流動性に基づくものです。
集中型
既存の集中型AMMと同様に、Carbonは特定の価格帯に流動性を提供することができます。しかし、Carbonは既存の集中流動性とは異なり、ユーザーが流動性を置くことができる価格ポイントまたは範囲を制限する事前定義された「ティックレンジ」に依存しません。むしろ、Carbonのユニークな機能として、どのような価格ポイントやレンジにも流動性を提供できるようにカスタマイズすることができます。これによって定積から定価まで、またその中間のものまで、幅広いボンディングカーブの形状を実現することができます。
パラメトリックに調整可能
集中流動性モデルの現状は、ユーザーが資本を拠出できる「ティック」建ての価格バケットを規定セットで提供することにあります。レンジを変更するには、あるバケットセットから資金を引き出し、別のバケットに資金を再投入する必要があるのです。Carbonの「注文」(個々のユーザーの流動性ポジションを指す用語)には、規定された範囲はありません。むしろ、各注文は、開始価格、終了価格、キャパシティという3つのパラメータの効率的なセットでパラメータ化されています。ユーザーは、資本の引き出しや移動を必要とせずに、ポジションのパラメータを更新するトランザクションを発行できます。これによって、流動性を管理し、市場の変化に反応するための、よりガス効率の高い手段がユーザーに提供される仕組みです。
非対称性
市場に存在する他のAMMとは異なって、カーボンの基礎となるカーブは一方向に取引されます。1つのカーブ(または「注文」)には1つのトークンバランスが含まれて、買いまたは売りのどちらかに使用されますが、両方に使用されることはありません。そして、2つのカーブをリンクさせることで、単一の担保ソースを通じて、(異なる価格決定アルゴリズムを持つ)異なる買い注文と売り注文を組み合わせることが可能です。他の AMM が、単一のプライシング・アルゴリズムに従っ て売りと買いの注文を対称的に管理する 1 つのボンディング・カーブに流動性 を提供することを要求するのに対して、Carbonは、1 つの取引ペアに対して2つの異なる売りと買いのカーブに流動性を提供することができ、そ れぞれのカーブは独自に定義されたプライシング・アルゴリズムを採用して、2つのカーブは共同で非対称取引戦略を形成することができます。
この特徴を組み合わせることで、Carbonの中核をなす2つの新しいオンチェーンプリミティブが生まれます:
- オーダー:パラメトリックに調整可能な単一の集中曲線から構成される。(例: 「1500(開始)から1000(終了)の範囲でETHをUSDCで買う」または「2000でETHをUSDCで売る」)
- ストラテジー:担保を介してリンクされた2つの注文で構成されます。(例: 「1500–1000の間でUSDCのETHを買って、2000で売り、キャンセルされるまで繰り返す」)
パラメトリックに調整可能なボンディングカーブ(注文)
説明したように、Carbonの各カーブはユーザーが提出した注文に対応して、トークンを売買する正確な価格または範囲を決定する効率的なパラメータセットによってカスタマイズ可能です。このデザインは、精度の面だけでなく、ガスや運用効率の面でトレーダーに多くの利点をユーザーに提供します:
- ユーザーは、既存の集中AMMで利用可能な価格やレンジの事前定義セットに制限されることなく、代わりに任意の単一の価格またはレンジに流動性を提供することができます。
- 注文条件は、注文をクローズして再作成するためにガスを大量に消費するトランザクションを必要とすることなく、その場で調整することができます。
- カーブ・パラメーターは、コンスタント・プロダクトやコンスタント・プライスなど、あらゆるボンディング・カーブ形状を実現するようにカスタマイズできます。特にコンスタント・プライス・カーブでは、特定のプライス・ポイントに流動性を置き、真のオンチェーン・リミット・オーダーを実現することができます。
カーボンカーブはこのDesmosチャートと下のチャートで見ることができます。下のチャートでは、カーボンの新しい調整可能なカーブを使用した集中プロフィールの例が緑色で表示されています。青色のカーブは一定プロダクトカーブで、オレンジ色の直線は一定プライスカーブです。デスモスのΓ値は相対集中パラメータを表し、Γ=0は無限集中(価格一定)を、Γ=1はゼロ集中(製品一定)を示します。DesmosのΓの値を変えると、カーボンカーブがΓ=1では一定製品カーブ(緑)と同一であったのが、Γ=0では一定価格カーブ(オレンジ)と同一になることがわかります。
実際には、Carbonカーブは3つのパラメータでカスタマイズされます:
- レンジの開始:提供された流動性の最初の無限小をペアの他のトークンと交換できる為替レートを示します。
- レンジの終点:提供された流動性の最後の無限小がペアのもう一方のトークンと交換できる為替レートを示します。
- カーブの容量:これは、レンジの端から端まで移動するのに必要な担保の量を決定します。
4番目のパラメータ:カーブの「状態」を表して、現在アクティブな取引に利用可能なトークンの量に対応します。これは標準的なAMMでおなじみの「トークン残高」です。しかし、限界価格は、ペアを構成する両方のトークンの準備金の比率とは対照的に、この残高のみの関数となります。トークン残高が変化すると、限界価格も変化します。カーボン注文が満たされると、獲得したトークンは自動的に別の「リンク注文」に表示されます。
リンク注文(ストラテジー)
2つのカーブ(または「注文」)を1つの流動性ポジション(または「ストラテジー」)でリンクさせることができ、同じ担保プールを利用する個別の買い注文と売り注文を確立することができます。ユーザーは最初に両方の注文に資金を供給することも、一方の注文にのみ資金を供給して、もう一方の注文は空のままにすることもできます。ストラテジーは、買い注文で獲得したトークンがリンクされた売り注文で取引可能になるという意味で反復され、その逆も同様です。
既存のAMMを使ってこの種のマルチオーダー戦略を実行するには、2つの流動性ポジションを別々に持つか、価格がレンジ内に入るとポジションを引き出して再作成するガス集約型取引を自動化する専門ツールが必要になります。対照的に、Carbonでは、2つの注文が1つの担保ソースを利用して、どちらかの注文がレンジに入ると自動的に2つの価格(またはレンジ)の間で流動性を回転させて、ユーザーが停止を選択するまで無限のサイクルを繰り返すことができます。
このような「安く買って高く売る」ストラテジーの例は、DesmosチャートまたはCarbonシミュレーターで見ることができます。
左側のアクティブトークンは「RSK」で、右側のアクティブトークンは「USD」です。ユーザーの意図の非対称性を観察しながら、1つの共有状態(x,y)で両方のカーブを実行することは不可能であるため、カーブは意図的に別々のチャートに表示されています。
左側の「RSK売り」チャートは、100単位までのRSKを、100RSK当 たりの平均値225USD、つまり2.25USD/RSKのレンジで売ります。右の「USD売り」チャートはもっと大きく、5,000単位までのUSDを含んで、14,000RSKあたり5,000USDの平均価格、すなわち0.36USD/RSKでRSKを買います。
それぞれの曲線は、アクティブなアセット(慣例的にy軸上のもの)の売却(および売却のみ)を記述して、曲線がy = 0でトークンを使い果たしたときに売却が停止します。売却によって得られたトークンは直ちに反対側の曲線に移動され、必要に応じて拡大されます。このシステムは、所有者による調整を除いて、カーブを縮小することはありません。
CarbonとMEV
オンチェーンの流動性にとって重要な問題はMaximal Extractable Value(MEV)です。オンチェーン流動性プールの主要なMEV攻撃ベクトルは、いわゆる「サンドイッチ攻撃」と呼ばれるもので、本物の取引が攻撃者の取引に挟まれるものです。AMMのサンドイッチ攻撃は、サンドイッチ攻撃が成功するか、コストなしで失敗することが保証されていることを除けば、従来の市場におけるフロントランニングに非常に似ています。
その仕組みは次のとおりです:
- 注文は「成行注文」で、つまりUSDCの金額を確定して、得られるETHの金額をすべて受け取ります。
- 攻撃者は攻撃されたトランザクションの直前に、USDCに対してETHを買う同規模の注文を挿入します。
- 攻撃者は攻撃されたトランザクションの直後に(2)と等しく反対のトランザクションを挿入します。
上記が正常に実行された場合、攻撃されたトランザクションが満たされる価格は、トランザクション(2)によって導入されたスリッページによって人為的に高くなることになります。現在ETHを売っているトランザクション(3)は、トランザクション(2)によってもたらされたスリッページと攻撃されたトランザクションによってもたらされたスリッページの両方から利益を獲得します。攻撃者はトランザクションを市場外でより高い価格ポイントにシフトさせ、リスクなしでその価格差をポケットに入れることができるわけです。
この特殊な攻撃ベクトルはCarbonでは防がれます。攻撃者は上記(2)のように取引をフロントランすることはできますが、逆取引(3)はシステムの非対称性によって禁止されています。つまり、攻撃者はもはやフロントラン取引の結果から撤退する立場になく、サンドイッチ攻撃の根本的な十全性を完全に打ち破っている仕組みを実装しているのです。
結論
Carbonの集中的でパラメトリックに調整可能な非対称流動性モデルは、ユーザーにオンチェーン取引戦略をパーソナライズする前例のないレベルの精度を提供すると同時に、MEVの最も一般的な形態であるMEVサンドイッチ攻撃からマーケット注文を保護します。
一般的に、Carbonは従来のAMMが規定する「ショート・ガンマ」取引プロフィールを覆します。他のすべてのAMMがトークンの価格が下落したときに買い、価格が上昇したときに売るのに対して、Carbon AMMは特定の価格または価格帯で安く買い、高く売る取引戦略を実行することができます。これは既存のAMMの現状を変えるものです: オンチェーンでの流動性は、ILによって損失やリターンの低下を頻繁に被るLPのみに依存するのではなく、オンチェーンでのネイティブな指値注文やレンジ注文によって方向性のあるポジションを取るユーザーによってサポートされます。
この投稿は、ホワイトペーパーを要約したものです。より詳細な把握には、ホワイトペーパー全体をお読みになることをお勧めします。