📉リクイデーション・ドック

はじめに

トレーダーの証拠金率(MR)が維持証拠金率(MMF)を下回った場合、超新星の清算プロセスが開始されます。0.0625.この場合、トレーダーのポジションは第三者清算人ボットによって清算されます。

各ポジションの清算価格は、ポジションサイズとエスクロー資金量に基づいて計算される。清算ペナルティはトレーダーの証拠金から差し引かれ、80%がプロトコルに、残りの20%が証拠金残高に基づいて清算人に配分される。

清算トリガー

清算トリガーは、トレーダーの証拠金率が維持証拠金率を下回ったときに開始される。

維持証拠金率は、ポジションを保有し続けるために必要な最低証拠金です。トレーダーの証拠金率がMMFを下回った場合、そのポジションはさらなる損失を防ぐために清算されます。

清算価格

ロング・ポジションの清算価格は以下のように計算される:

清算価格 = (|エスクロー金額 - オープン時の位置値|) / ((1 - MMF) * ポスサイズ)

ショートポジションの清算価格は以下のように計算される:

清算価格 = (|エスクロー金額 + オープン時の位置値|) / ((1 + MMF) * ポスサイズ)

どちらの場合も、清算価格はポジションが清算される価格である。現在の市場価格が清算価格を下回ると、ポジションは自動的に清算される。

清算ペナルティ

清算ペナルティはトレーダーの証拠金から差し引かれ、80%がプロトコルに、残りの20%が証拠金残高に応じて清算人に配分される。

Alexというトレーダーが100WETHを入金し、始値10WETHで100SNVのショートポジションを建てたとする。

アレックスの最初の証拠金率は0.1である。なぜなら、ポジションの初期値は1000WETHで、エスクローで預かっている担保は100WETHだからである。

これはMMFの0.0625を上回っているので、アレックスのポジションはまず安全だ。

しかし、SNVの市場価格が10.36WETHに変動した場合、アレックスのポジションの価値は1036WETHとなり、エスクロー資金64WETHはポジションの価値の61.77%しかカバーできなくなる。

したがって、アレックスのマージン比率はMMFを下回る0.0617まで低下した。この時点でアレックスのポジションは清算される。

アレックスのポジションの清算価格は次のように計算される:

清算価格 = (|エスクロー金額 + オープン時の位置値||) / ((1 + MMF) * ポスサイズ)

(|100 + (1000)|) / ((1 + 0.0625) * 100) = 10.3529 WETH. つまり、価格が 10.3529 WETH に達すれば Alex のポジションは清算される。清算のペナルティは64.71WETHで、51.76WETHがプロトコルに、12.94WETHが清算人に支払われる。

清算機能

提供されたコード・スニペットはSolidityプログラミング言語で書かれており、システム内のユーザーのポジションを清算する機能を実装しています。

1. コンストラクタ

コンストラクタは、コントラクトがデプロイされるときに呼び出される関数です。3つのパラメータを取る:

名称
タイプ
説明

_orderBook

住所

オーダーブック管理に使用

_margin

住所

証拠金管理に使用

_takerOrderProcessor

住所

テイカーオーダー処理管理に使用

これらのアドレスは、注文帳簿の管理、証拠金、および注文者の注文を処理するためのコントラクトを参照します。この関数は、コントラクトを初期化し、必要なコントラクト・アドレスを設定します。

function コンストラクタ(住所 _orderBook, address _margin,アドレス _takerOrderProcessor)

2. オーダーブックの更新

この関数は、管理者がOrderBookの契約アドレスを更新することを可能にします。

名称
タイプ
説明

_newOrderBook

住所

オーダーブックの更新に使用

function 更新オーダーブック(アドレス _newOrderBook)

3. 証拠金元帳の更新

この関数は、管理者が証拠金契約アドレスを変更するためのもので、入力として1つのパラメータを受け付ける。

名称
タイプ
説明

_newMargin

住所

証拠金契約を更新するために使用

function 更新マージンレジャー(アドレス _newMargin)

4. ポーズ機能

この機能により、管理者は契約の清算機能を一時停止することができ、機能が再開されるまで、それ以上の清算を防ぐことができる。

function _pause()

5. 一時停止解除機能

この機能により、管理者は契約の清算機能の一時停止を解除し、再び清算を再開することができる。

function _unpause()

6. 清算と売却

この関数は、システム内のユーザーのポジションを清算するために特別に設計されており、入力として1つのパラメータを受け付ける。

名称
タイプ
説明

data

配列

清算に関連するエンコードされた情報を含むバイト配列。

エンコードされたデータには、以下のような情報が含まれる。

  • 清算人の住所

  • 清算人の住所。

  • 清算される金額。

  • ポジションの種類(ロングまたはショート)。

  • ポジション金額と一致する反対注文IDのリスト。

  • 次のオーダーID。

function liquidateAndSell (bytes メモリーデータ)

結論

Supernovaプラットフォームの清算プロセスは、過度な損失からトレーダーを保護する為にデザインされております。トレーダーの証拠金率がMMFを下回った場合、そのポジションは自動的に清算されます。

清算価格は、ポジションサイズとエスクロー資金量に基づいて計算されます。清算のペナルティはトレーダーの証拠金から差し引かれ、プロトコルと清算人の間で共有されます。清算ボットは、Supernovaプラットフォーム上で清算を効率的かつ正確に行うためのオープンソースツールです。

Supernovaプラットフォームにおける清算手続きについて、本書が包括的にご理解いただけることを願っております。ご不明な点やご質問等ございましたら、サポートチームまでお気軽にお問い合わせ下さい。

Last updated