Panoptic:Uniswap v3のLPをオプション化


目次

  1. はじめに
  2. Panopticにおけるオプションの売買
    1. Panopticのプット
    2. Panopticのコール
    3. PanopticのプレミアムStreamia
  3. 手数料
  4. おわりに
    参考文献

1. はじめに

このレポートでは、Panopticプロトコルにおけるオプション売買について詳しく説明する。特に、Panopticが提供するプット・コールオプションの仕組みや、これらのオプションをどのように活用できるのかに焦点を当てる。また、プレミアムの支払いなど、取引の詳細にも触れる予定だ。前回のレポートで触れたPanopticの基本的な仕組みや特徴を踏まえ、より実践的な視点でオプションの売買戦略について解説する。

2. Panopticにおけるオプションの売買

本章はPanoptionにおけるプットとコールの説明、オプションプレミアムであるStreamiaを計算するStreaming Premium Modelの説明を行う。本章は簡潔さのために、Panopticから引用している図と平仄を合わせるため、通貨ペアを(DAI,ETH)とし、DAIがヌーメレールだとする。また、権利行使価格レンジをK≡(K-ϵ,K+ϵ)とし、スポット価格はSとする。Panoptionプレミアムの支払がアップフロントではなく、期中に発生する点で既存金融におけるオプションと異なる。

2.(1) Panoptionのプット

Panopticにおいてプットのショートは、PanopticからUniswap v3に流動性をK+ϵ<SとなるKに流動性を供給することである。一方で、プットのロングはショートの反対売買なので、Uniswap v3からPanopticへ流動性をK+ϵ<SとなるKの流動性を解除させることである(図3.参照)。

図1. Panopticにおけるプット 出所:Panoptic

このとき、プットの買手の利益は下記の通り場合分けできる。まず、プットの買手がUniswap v3からPanopticに流動性を移動させたあとの状態を想定する。

2.(1).a 権利行使レンジKをSが下回るとき

このとき、買手はKで1ETHを売ることができる。

2.(1).b 権利行使レンジKをSが上回るとき

このとき、買手はPanoptionを行使せずにプレミアムを支払う。

2.(2) Panopticのコール

Panopticにおいてコールのショートは、PanopticからUniswap v3に流動性をK-ϵ>SとなるKに流動性を供給することである。一方で、コールのロングはショートの反対売買なので、Uniswap v3からPanopticへ流動性をK-ϵ>SとなるKの流動性を解除させることである(図4.参照)。

図2. Panopticにおけるコール 出所:Panoptic

このとき、コール買手の利益は下記の通り場合分けできる。まず、ロングの買手がUniswap v3からPanopticに流動性を移動させたあとの状態を想定する。

2.(2).a 権利行使レンジKをSが下回るとき

このとき、買手はPanoptionを行使せずにプレミアムを支払う。

2.(2).b 権利行使レンジKをSが上回るとき

このとき、買手はKで1ETHを買うことができる。

2.(3) PanoptionのプレミアムStreamia

Panopticが提供するPanoptionは満期のないオプションであり、Streamiaモデルに従ってプレミアムが計算される。StreamiaはPanoptionの買手から売手に支払われるオプションプレミアムのことである。

StreamiaモデルはPanoption保有者の対象通貨がある価格レンジ内で推移した際のプレミアムを計算する。Streamiaモデルのインプットに、LPerの価格レンジ、対象通貨ペアのUniswap v3プールにおける流動性(liquidity and volumeを内包する)、Panopticプールが提供できる流動性、が挙げられる。Streamiaモデルはブラック・ショールズモデル(以下、BSM)に収束するように作られている。

Panopticにおいて、オプションのプレミアムを収受する売手に対してStreamiaモデルが適用される場合と適用されない場合が存在する。Streamiaモデルが用いられずにオプションの売手がプレミアムを収受するときは、売手に対して買手がいない場合である。このとき、オプションの売手はUniswap v3でLPをしているときのようにプレミアムを得る。一方で、Streamiaモデルが用いられてPanoptionの売手がプレミアムを収受するときは、売手に対して買手が存在する場合である。このとき、Panoptionの対象通貨はUniswapからPanotpicに移される。

Streamiaモデルが適用されるとき、Panoptic上でPanoptionがIRであれば、プレミアムが累積する。Streamiaモデルによって計算されるプレミアムは、Panopticの売手がPanopticを経由し、Uniswap v3でLPをすることによって得られる手数料収入を原資としている。そのため、Streamiaモデルは大別して3段階に分かれて計算が行われている。1つ目は、Uniswap v3で発生した手数料収入を計測する段階である。2つ目は、Panopticにおける流動性の管理であり、Uniswap v3とPanoptic間における流動性を計測する段階である。3つ目は、Panopticに移転された流動性に対して発生するプレミアムを計測する段階である。

2.(3).a Streamiaの計算~Uniswap v3内の手数料トラッキング~

Uniswap v3上で発生する手数料収入を計測するために、StreamiaモデルはUniswapV3Poolインスタンス上に下記の2つのアキュムレータ(表3.参照)を用いる。

表1. Panopticの手数料管理に使われる変数 出所:PanopticよりNext Finance Tech社作成

各アキュムレータはUniswap v3の流動性プールに対して1ティックを越さない範囲でスワップが行われるときに、1ティック内の単位流動性に対する手数料分だけ増加する。スワップによって、価格が1ティックを超す場合、Uniswap v3が1ティックを超すまでに発生した手数料を記録する。また、Panopticを経由してUniswap v3内で新しいポジションが作られるときも流動性の供給範囲を記録する。ポジションが解消されると、feeGrowthGlobalGLobal0X128とfeeGrowthGlobal1X128からfeeGrowthInside0LastX128とfeeGrowhtInside1LastX128にそれぞれ累積した手数料が引かれ、token0とtoken1に対応する手数料が計算される。

出所:Panoptic

2.(3).b Streamiaの計算~Panoptic内の流動性トラッキング~

Panoptionは流動性をUniswapV3Pool.solのスマートコントラクトに移すことで作られる。オプションとして移される流動性には必ずtokenType(移される流動性のトークンペアを定義する変数)、tickLower(LP範囲の下限を定義する変数)、tickUpper(LP範囲の上限を定義する変数)、liquidity(通貨量)が定義される。PanoptionはSemi-Fungibleであるため、異なるユーザーが全く同じオプションや、通貨量だけ異なるオプションのポジションを取ることができる。このように、PanoptionはPanopticとUniswap v3の間で流動性の移転を行うため、Panoptic自体が各プロトコル上の流動性を認識する必要がある。

PanopticはPanopticユーザーの流動性を2つの変数で管理をする。1つ目が、netLiquidity変数である。netLiquidity変数は、Panoptionショート時にUniswapに移された流動性をモニタリングする。2つ目が、shortLiquidity変数である。shortLiquidity変数は、Panoptionロング時にUniswapからPanopticに戻された流動性をモニタリングする。ポジション(ロング・ショート)の総流動性をtotalLiquidityとして、totalLiquidity=netLiquidity+shortLiquidityと定義できる。

出所:Panoptic

2.(3).c Streamiaの計算~Panoptic内の手数料トラッキング~

アキュムレータはGross, Net, Owedの3種類の手数料を各ポジションについて記録する。Grossの手数料とは、オプションの売り手がUniswap v3のLPを始めた瞬間から収受する手数料のことであり、単位流動性に対して定義される。Owedの手数料とは、オプションの買い手がUniswap v3からPanopticに流動性を移したことで、Uniswap v3上で発生するべきだった手数料のことであり、単位流動性に対して定義される。両変数に対し、アキュムレータであるs_accountPremiumGrossとs_accountPremiumOwedがそれぞれ定義されている。本節において、Streamiaをスプレッド(オプションの買手からPanopticへ支払われるプロトコル手数料だと思慮する)が含まれていないときと含まれているときのそれぞれについて説明する。

まず、スプレッドが含まれていないときのStreamiaの計算を実例を使い、説明する。例えば、A君はUniswap v3のあるティックにTだけの流動性を供給し、その後、B君がUniswap v3からSだけの流動性を同じティックから除いたとする。

Grossの手数料とは、Sだけの流動性がB君にUniswap v3からPanopticに移転されなかった場合にPanopticが下記の数式

gross_feesCollectedX128=feeGrowthX128T(1) gross\_feesCollectedX128 = feeGrowthX128 * T \tag{1}

で収受する手数料に相当する。
Owedの手数料とは、Panoptionの買手によって収受できない手数料(スプレッドなしStreamia)

owed_feesCollectedX128=feeGrowthX128S(2) owed\_feesCollectedX128 = feeGrowthX128 * S \tag{2}

に相当する。
Netの手数料とは、Panopticが下記の数式

net_feesCollectedX128=feeGrowthX128(TS)=feeGrowthX128N(3) net\_feesCollectedX128=feeGrowthX128*(T-S)=feeGrowthX128*N \tag{3}

で収受する手数料に相当する。
次に、スプレッドが含まれているときの手数料の計算をA君とB君を出した例を使い、説明する。Grossの手数料とNetの手数料の関係は

gross_feesCollectedX128=net_feesCollectedX128+owed_feesCollectedX128(4) gross\_feesCollectedX128 = net\_feesCollectedX128 + owed\_feesCollectedX128 \tag{4}

であった。このとき、owed_feesCollectedX128を

owed_feesCollectedX128=feeGrowthX128S(1+spread)(5) owed\_feesCollectedX128=feeGrowthX128*S*(1+spread) \tag{5}

としてスプレッドを導入することで、Streamiaを再定義する。Panopticとしてスプレッドを

spread=v(liquidityremovedfromthatstrike)/(netLiquidityremainingatthatstrike)=vS/N(6) spread=v*(liquidityremovedfromthatstrike)/(netLiquidityremainingatthatstrike)=v*S/N \tag{6}

を0≤v≤1という手数料に関するパラメータを用い、定義(現段階では提案に近い)している。スプレッドを導入した場合、プロトコルのGross手数料は

gross_feesCollectedX128=feesGrowthX128T(1+vS2\/(NT))(7) gross\_feesCollectedX128=feesGrowthX128*T*(1+v*S^2 \/(N*T)) \tag{7}

となる。これらの手数料もアキュムレータで管理される。買手がPanopticに支払う手数料はs_accountPremiumOwedアキュムレータに蓄積され、

s_accountPremiumOwed+=feeGrowthX128T\/N(1S(1v)\/T)(8) s\_accountPremiumOwed+=feeGrowthX128*T\/N*(1-S*(1-v)\/T) \tag{8}

と計算される。そのため、買手が移転した流動性がSで、時刻t_1からt_2の間に発生するPanopticに支払うべきプレミアムは

owedPremia(t1,t2)=ΔfeesGrowthX128X(1+vS\/N)(9) owedPremia(t_1,t_2 )=ΔfeesGrowthX128*X*(1+v*S\/N) \tag{9}

となる。PanopticのGrossの手数料は

grossPremia(t1,t2)=ΔfeeGrowthX128T(1+vS2\/(NT))(10) grossPremia(t_1,t_2 )=ΔfeeGrowthX128*T*(1+v*S^2 \/(N*T)) \tag{10}

となる。

3. 手数料

本節はオプションの売り手・買い手にかかるコストを明示する。オプションの売り手・買い手にかかるコスト費目は同じであり、売買手数料、IRオプションのポジションを取る際に発生する手数料、担保にわかれる。このうち、売買手数料と担保は料率がプール有効率(表2.で定義済み)に依存する。プールの有効率とは、Panopticに預け入れられた全トークンのうち、Uniswap v3の流動性プールに預け入れられた割合のことであった。注意すべき点は、Panopticに預け入れられた全トークンはオプションを売る行為でUniswap v3に移されたトークン量を含み、オプショントレーディングによる手数料(売り手がUniswap v3より収受するLPerとしての手数料)は含めない。

Panopticのアップフロントでかかる手数料は売買手数料(Panoptionの額面(流動性総額)×売買手数料率)と担保料率(アップフロントにかかるが、担保はのちほど返却される)のみである。これらの手数料はプールの有効率で料率が変化する。既存金融のオプション取引との違いは、オプションのポジションを手仕舞う際に売買手数料が発生しない点である。

次にプールの有効率が低い状態から高い状態に変化するときの売買手数料率や担保料率の変化について具体例で示す。例えば、プールの有効率が10%のとき(10%以下のとき)、つまりオプションの売り手があまりいないとき、売買手数料の料率は60%、買い手の担保料率は10%、売り手の担保料率は20%とされている。プールの有効率が50%のとき(50%を超えるとき)、つまりPanopticプロトコルに預け入れられているトークンのうち、50%がオプションの売りとして使用されているとき、売買手数料の料率は20%、買い手の担保料率は10%、売り手の担保料率は20%と決められている。プールの有効率が90%のとき、つまりPanopticプロトコルに預け入れられているトークンのうち、90%がオプションの売りとして使用されているとき、プロトコルとしては買い手を優遇する担保料率の設定がなされている。売買手数料の料率は20%で変わらないが、買い手の担保料率は5%、売り手の担保料率は100%と設定される。

補足をすると、プールの有効率が10%から50%の間の時は、プールの有効率に線形に比例して売買手数料の料率は60%から20%まで減少する。そのため、プールの有効率が30%のとき、売買手数料の料率は40%である。一方で、買い手の担保料率はプールの有効率が50%まで10%で一定となっており、プールの有効率が50%から90%の間の時は、プールの有効率に線形に比例して担保料率は10%から5%まで減少する。つまり、プールの有効率が70%のとき、担保料率は7.5%である。

またIRオプションを取る際に徴収される手数料も定義されている。この手数料が発生する理由は、IRオプションのポジションを取る場合、Panopticを通してUniswap v3の中で通貨がスワップされるからである。この手数料はUniswap v3のスワップフィーの2倍で設定されており、Uniswap v3のスワップフィーと通貨交換によるスリッページを賄う目的で設けられている。

4. おわりに

PanopticはILをヘッジするためのツールとして有用だと考えるが、大きくわけて2つのリスクが存在する。1つ目は、Panoptionを購入することができないリスクである。Panoptionの買手となるためには、売手が存在しなければならない。流動性の低い通貨ペアなどではPanoptionが存在しない可能性が高い。2つ目は、手数料(買手が支払うCommission)が割高となり得るリスクである。今のところ、買手からPanopticへ支払う手数料率などが決まっておらず、マーケットの需給によっては担保料率の変化に加えてプロトコルフィーの手数料率も需給によって決まる可能性がある。このとき、Uniswap v3のでLPポジションに対するヘッジとしてPanoptionを購入した場合、トークンボラティリティの変化によってLPポジションを調整するILの軽減を意図した戦略ときと比較して手数料が高いことが発生しうる。

Panoptionを用いたUniswap v3のポジションのヘッジについては、Uniswap v3のLPポジションと反対売買を行えばよいと考える。そのため、ヘッジ自体は単純だが、支払うプレミアムによってヘッジの有効度が変化する。筆者としては、Panoptionにもプット・コールオプションがあるため、Uniswap v3の現物市場のマーケットメイカーがPanoptionを使うことで相場観を形成できる点に面白みを感じる。Panoptionを用いた取引戦略などは次のレポートに譲りたい。