このページは機械翻訳されています。英語の原文が正式版です。 英語で読む
メインコンテンツにスキップ

清算

清算は、証拠金債務を履行できなくなったアカウントからシステムを保護します。アカウントのエクイティが維持証拠金要件を下回ると、清算プロセスによってポジションが支払能力のあるカウンターパーティに移転されます。

トリガー条件

清算は、アカウントがアンダーウォーター(債務超過状態)になったときにトリガーされます:

ポートフォリオ証拠金:

Equity<Maintenance Margin Required\text{Equity} < \text{Maintenance Margin Required}

スタンダード証拠金:

Maintenance Margin<0\text{Maintenance Margin} < 0

ここで、維持証拠金 = エクイティ - 必要MM です。

システムはポジションを持つすべてのアカウントを継続的にポーリングして健全性をチェックします。

ステートマシン

アカウントは4つの清算ステートを遷移します:

ヘルシー純資産 > MM必要額✓ 全注文許可プレ・ロスカット60秒猶予期間✗ リスク増加ブロック✓ リスク減少許可ロスカット中ダッチ・オークション・アクティブ✗ 全注文ブロックロスカット済ポジション移転純資産 < MM猶予期間満了オークション完了入金 / ポジション決済主要パラメータ 猶予期間:60秒 部分ロスカット:≦5ポジション 全体ロスカット:>5ポジション ロスカット・ペナルティ:ロスカット実行者へのインセンティブ 保険ファンド:破綻をカバー ADL:保険ファンド枯渇時回復:プレ・ロスカット中に担保預入またはポジション決済によりヘルシーに戻る。ロスカット中開始後は回復不可。WebSocketは清算チャンネルで状態変更をブロードキャスト。破綻ウォーターフォール1アカウント純資産ユーザーが純資産まで損失吸収2保険ファンド純資産不足時の不足分をカバー3ADL(自動デレバレッジング)利益のあるカウンターパーティがデレバレッジ
ステート説明注文制限
Healthyエクイティ > 必要MMなし
PreLiquidationエクイティ < MM、猶予期間が有効リスクを増加させる注文はブロック
InLiquidationオークション進行中すべての注文がブロック
Liquidatedオークション完了アカウントはクリア済み

ステート遷移

  1. Healthy → PreLiquidation: アカウントがMMのしきい値を下回る
  2. PreLiquidation → Healthy: アカウントがMMを上回るまで回復(ユーザーが資金を追加、またはポジションをクローズ)
  3. PreLiquidation → InLiquidation: 回復しないまま猶予期間が終了
  4. InLiquidation → Liquidated: オークションが正常に完了

清算前の猶予期間

アカウントが清算前(プレ・リクイデーション)状態に入ると:

  1. リスクを増加させる注文は即座にブロックされます
  2. リスクを減少させる注文(ポジションのクローズ)は引き続き許可されます
  3. 60秒の猶予期間が開始されます
  4. 猶予期間が終了する前にアカウントが回復した場合(エクイティ > MM)、Healthyに戻ります
  5. 猶予期間後もアンダーウォーターの場合、清算オークションが開始されます

猶予期間は、ユーザーに以下の時間を与えます:

  • 追加担保の入金
  • ポジションをクローズして証拠金要件を削減
  • 急激な市場変動への対応

清算オークション

猶予期間が終了すると、ダッチオークションが開始されます:

支払能力ありのオークション(エクイティ > 0)

開始価格 = エクイティ × (1 - ペナルティ) で、時間とともに低下します。

清算人(リクイデーター)は、以下と引き換えにアカウントのポジションの引き受けに入札します:

  • アカウントのエクイティ(ペナルティ控除後)
  • すべてのポジションに対する責任

ペナルティは、清算人が参加するインセンティブを生み出します。

支払不能のオークション(エクイティ < 0)

アカウントが支払不能(エクイティがマイナス)の場合、保険基金がボーナスを提供し、清算人がアンダーウォーターのポジションを引き受けるインセンティブを与えます。

ポジション移転

清算が完了すると:

  1. すべてのポジションが清算対象アカウントから清算人に移転されます
  2. 清算人は決済価値を受け取る(支払能力あり)または支払う(支払不能の場合はボーナスを受け取る)
  3. 証拠金ルートがオンチェーンで更新されます
  4. アカウントのステートが Liquidated に遷移します

部分清算と全体清算

種類条件動作
部分清算ポジション5件以下MMが回復するまで特定のポジションを清算
全体清算ポジション5件超アカウント全体を清算

部分清算は決定論的です:

  • ポジションは一貫したアルゴリズムで順序付けられます(ランダムではありません)
  • 清算人は定義された順序でポジションを受け取ります
  • アカウントが健全な状態に戻るとプロセスは停止します

支払不能時のウォーターフォール

清算で全額を回収できない場合、損失は以下の順序で吸収されます:

  1. アカウントのエクイティ: 清算対象ユーザーがエクイティの範囲で損失を吸収
  2. 保険基金: エクイティが不足する場合の不足分をカバー
  3. ADL(自動デレバレッジ): 保険基金が枯渇した場合、利益の出ているカウンターパーティが比例的にデレバレッジされます
  4. 損失の社会化: 最終的なバックストップ(現在未実装)

保険基金

保険基金は:

  • 清算ペナルティから積み立てられます
  • 支払不能の清算をカバーします
  • 取引手数料とペナルティにより補充されます
  • 最低準備金目標が設定されています

ADL(自動デレバレッジ)

保険基金が損失をカバーできない場合:

  • 利益の出ているポジションを持つカウンターパーティが選択されます
  • ポジションはマーク価格で強制的にクローズされます
  • 選択は利益とレバレッジが最も高いものを優先します
  • 影響を受けるユーザーには通知が送信されます

APIエンドポイント

清算ステータスの取得

GET /liquidation/status?wallet=0x...

レスポンス:

{
"success": true,
"data": {
"wallet": "0x...",
"state": "pre_liquidation",
"margin_mode": "portfolio",
"equity": "4500.00",
"mm_required": "5000.00",
"maintenance_margin": "-500.00",
"entered_pre_liq_at": 1737312000000,
"mm_shortfall": "500.00",
"auction_id": null
}
}

清算履歴の取得

GET /liquidation/history?wallet=0x...&limit=20

アカウントのステート遷移履歴を返します。

パブリック清算履歴の取得

GET /liquidations?limit=50

すべてのウォレットにわたる清算遷移履歴を新しい順に返します。このエンドポイントはパブリックであり、清算ボットや監視ツール向けにカーソルページネーションを使用します。

クエリパラメータ

  • cursor: 前のページで返された不透明なカーソル。
  • limit: ページサイズ。デフォルト 50、最大 100
  • wallet: オプションのウォレットフィルタ。
  • status または state: オプションの清算遷移ステートフィルタ。指定可能な値は healthypre_liquidationin_liquidationliquidated です。
  • margin_mode: オプションの証拠金モードフィルタ。指定可能な値は standardportfolio です。
  • liquidation_mode: オプションの清算モードフィルタ。指定可能な値は partialfull です。

レスポンス: 清算遷移エントリと次のリクエスト用の page.next_cursor を含む PublicLiquidationsResponse

オークション詳細の取得

GET /liquidation/auction/{auction_id}

オークションのステータス、ポジション、決済の詳細を返します。

WebSocket通知

清算ステートの変更は liquidation チャンネルでブロードキャストされます:

{
"type": "LiquidationStateChange",
"wallet": "0x...",
"previous_state": "healthy",
"new_state": "pre_liquidation",
"equity": "4500.00",
"mm_required": "5000.00",
"shortfall": "500.00",
"auction_id": null,
"timestamp": 1737312000000
}

サブスクライブすることで、ご自身のウォレットのリアルタイム更新を受け取れます。

パラメータ

パラメータ説明
poll_interval5秒健全性チェックの頻度
grace_period60秒オークション開始までの時間
min_shortfall_threshold0清算前状態をトリガーする最小不足額
partial_liquidation_thresholdポジション5件これ未満の場合、部分清算が使用されます

ベストプラクティス

トレーダー向け

  1. 証拠金比率を監視する: エクイティをMMより十分に高く維持する(2倍のバッファを推奨)
  2. アラートを設定する: WebSocketを使用して清算前状態を早期に検知する
  3. 予備資金を用意する: いつでも入金できる予備の担保を確保しておく
  4. ストップロスを使用する: 清算前にポジション削減を自動化する

健全性の照会

証拠金ステータスを定期的に確認してください:

# Portfolio margin
curl "https://api.hypercall.xyz/portfolio?wallet=0x..."

# Look for:
# - equity vs maintenance_margin_required
# - margin_ratio (equity / IM)

猶予期間中の回復

清算前状態に入った場合:

  1. 資金フローを通じて担保を入金する
  2. ポジションをクローズして証拠金要件を削減する
  3. リスクを増加させる未約定注文をキャンセルする

リスクを減少させるアクションは、清算前状態であっても常に許可されます。

オンチェーンとオフチェーン

コンポーネント場所備考
健全性の監視オフチェーン5秒間隔のポーリング
ステート遷移オフチェーンログ記録・永続化
猶予期間タイマーオフチェーン設定可能
オークション実行オンチェーンControllerコントラクト上でのポジション移転
決済オンチェーン価値の移転と証拠金ルートの更新

オフチェーンエンジンが検知とオーケストレーションを担当し、オンチェーン実行が決済のファイナリティを保証します。


関連情報: