FABRKNT
← EVM Perp
EVM Perp · サンドボックス合格

ADL trigger

強制的なオートデレバレッジ——保険基金が枯渇し、利益の出ている反対ポジションが (pnl × レバレッジ) 順に強制クローズされ、残る不足分を吸収。

オラクルが110→30へ下落、板は空。ロングは Underwater として清算され、メイカーのショートは ADL で強制決済される。

何が起きるか

ロング1件(10)がショートのメイカー1件(40)に対しエントリー110で建つ。ブロック1のスタブマーク(100)では両者とも健全。ブロック2でオラクル指数価格が30をプリント——73%の下落。ロングは深く水没(証拠金50に対し1枚あたり80の評価損)し、CLOB の板は空(メイカー注文は既に消化済み)のため、クローズループにはロングを吸収する流動性がない。Underwater クローズが残余を保険基金へ送り、ADL がメイカーの相手方をヘアカット価格で強制決済する。単一ポジション・流動性なしのオラクルショックで保険基金+ADL 経路が発火する——ADL が存在する教科書的な理由——を見るためのシナリオ。

宣言された結果

宣言した各結果は、実行時の実際の状態に対して ✓ 合格 / ✗ 不合格 で採点されます。

5件中5件の結果を検証

実行を1ブロックずつ辿る
マーク100ソースstub-empty-book取引2約定1入金2清算0ADL

検証レポート(原文)

ツールが出力する英語の原文レポート(5セクション)——毎回同一です。

─── scenario: adl-trigger ────────────────────────────────────
HEADLINE ✓: Oracle drop from 110 → 30 with an empty book: the long is liquidated Underwater and the maker short is force-closed via ADL.

DESCRIPTION:
  One long (10) opens against one short maker (40) at entry 110; both stay healthy at block 1's stub mark (100). At block 2 the oracle index price prints 30 — a 73% drop. The long is now deeply underwater (collateral 50, mark-to-mark loss 80 per contract), and the CLOB book is empty (the maker order was already fully consumed), so the close-loop has no liquidity to absorb the long. The Underwater close kicks the residual into the insurance fund and ADL force-closes the maker counterparty at the haircut price. Use this scenario to see the insurance-fund + ADL path fire on a single-position, no-liquidity oracle shock — the textbook reason ADL exists.

TIMELINE (per-block):
  height  mark    src              trades  fills  deposits  liqs  adl  fund
  ------  ------  ---------------  ------  -----  --------  ----  ---  ----
       1     100  stub-empty-book       2      1         2     0    —     —
       2      30  oracle                0      0         0     1  yes     —
       3      30  oracle                0      0         0     0    —     —

ACCOUNT DELTA (final − initial):
  account  collateral  position  avg_entry
  -------  ----------  --------  ---------
       10           0         0        110
       40         350         0        110
  (initial account count: 0, final account count: 2)

OUTCOMES:
  ✓ Long (10) and maker short (40) — exactly two trading accounts after the chain history applies.
  ✓ The 73% oracle drop flags the long for liquidation.
  ✓ With no resting bids to absorb the close, ADL force-closes the maker short.
  ✓ Account 10's long is fully closed by the liquidation.
  ✓ Account 40's short is fully closed by ADL.

  5 of 5 outcome(s) verified.

NOTE: v1 runs the scenario in-process against a unit-provider
`LiveRethEvmBridge<()>` (no Reth boot). For the production-shape
run (real Reth + Malachite + JSON-RPC), use:
  openhl reth-devnet --chain-history scenarios/adl-trigger.json --rounds 3

NEXT:
  • Adopt this engine  : https://github.com/psyto/rdk
  • Custom build       : https://fabrknt.com/waitlist.html?product=evm-perp&intent=build
  • Hosted access      : https://fabrknt.com/waitlist.html?product=evm-perp&intent=hosted

他のシナリオ