Bot DeFi bot DEX 開発ログ

🛠️開発記録#574(2026/9/19)PLI研究の一区切り──清算を追う研究から市場ストレスの観測へ

こんにちは、よだかです。

ここしばらく、Perp Load Imbalance(PLI)というテーマを調べていました。

PLIという名前だけでは分かりにくいですが、出発点にあった問いは比較的単純です。

市場に積み上がっているポジションの負荷に対して、その市場が売買を処理する能力は十分なのか。

建玉が大きい。レバレッジが高い。一方向への偏りが大きい。

その一方で、注文板が薄い。流動性が弱い。急な注文を受け止める余裕が小さい。

こうした状態で何らかのショックが発生すると、市場は通常時より大きく不安定になるのではないか。

これがPLI研究の基本的な発想でした。

今回、この研究はいったん一区切りにします。

ただし、「PLIという仮説が否定されたので終了する」という意味ではありません。

研究を進める中で、PLIそのもの、清算を含む増幅経路、そして実際にbotで取るための戦略を分けて考える必要があることが明確になってきました。

今回は、そこまでの過程を整理します。


PLIで見ようとしていたもの

PLIでは、市場の状態を大きく二つに分けて考えていました。

一つは、市場に積み上がっている負荷です。

たとえば建玉量、ポジションの偏り、レバレッジ、清算価格への近さ、ポジションの集中などです。

もう一つは、その負荷を市場が受け止める処理能力です。

注文板の厚さ、スプレッド、売買による価格への影響、流動性供給者がどれだけ注文を補充できるか、といったものが含まれます。

初期の検証では、これらをすべて直接測ることはできません。

そこで、まずは建玉量や注文板など、取得しやすい情報を使って簡単な代理指標を作り、そこから研究を始めました。

ここで注意したいのは、建玉量を板厚で割った値そのものがPLIなのではないという点です。

それはあくまで、負荷と処理能力の関係を安く測るために使った一つの観測方法でした。

【PLIの基本概念】


清算との接続を考えた

このテーマを考えるうえでは、過去に発生した大型ポジションや清算を伴うストレス事例も参考にしました。

大きなポジションが存在し、それを通常の市場流動性だけでは処理しきれなくなったとき、どこへ負荷が移るのか。

強制清算が出るのか。バックストップの仕組みがポジションを引き受けるのか。別の市場へヘッジ注文が流れるのか。

こうした事例を見ていく中で、当初は次のような因果関係をかなり強く意識していました。

大きなポジション負荷
→ 市場の処理能力不足
→ 価格変動
→ 清算
→ 強制的な売買
→ さらに価格が動く

構造としては不自然ではありません。

ただ、今振り返ると、PLIという考え方そのものと、「清算が価格変動を増幅する」という一つの経路を近づけすぎていた部分があります。

清算はPLIそのものではありません。

市場に存在していた潜在的な負荷が、実際の注文へ変換される経路の一つです。

通常の手仕舞いかもしれません。マーケットメーカーのヘッジかもしれません。注文板の撤去によって流動性そのものが失われる場合もあります。

この区別は、後半の研究で重要になりました。


まずは安く測れるものから調べた

最初から複雑な清算データや口座単位のポジションを復元したわけではありません。

まずは、すでに観測可能だったperpetual市場のデータを使い、

  • 建玉量
  • Funding
  • 注文板
  • スプレッド
  • 価格変化

などと、その後の値動きとの関係を調べました。

初期の単純な指標は、それほど強いものではありませんでした。

条件をそろえて比較しても、明確に一方が優勢とは言いにくい結果が出ています。

そこで、「単純な建玉量と板厚だけで、強いシグナルがすぐ作れる」という考えはいったん後退させました。

一方で、それだけで負荷と処理能力という考え方全体を捨てるのも早いと判断しました。

そこで対象を十数市場へ広げ、一定時間の価格急変と、その前後の市場状態を比較する段階へ進みました。

すると、市場をまとめて見る限りでは、建玉に対して売買を受け止める板が薄い状態ほど、その後の大きな価格変動が太くなる傾向が出ました。

ただし、市場ごとに分けると結果はかなり混在しました。

全体をまとめれば傾向がある。

しかし、どの市場でも同じ方向に成立するわけではない。

この時点で、PLIを単純な一つの数値にして売買へ使うにはかなり弱いことが分かりました。

【市場ごとの傾向が異なる】


一度、測定方法そのものを壊した

研究の途中で、より大きな問題が見つかりました。

それまで「急変前の市場状態」として扱っていたデータの一部が、厳密には急変が始まった後の情報を含んでいました。

将来の5分後の結果を見ていたわけではありませんが、「ショックより前の状態」という説明としては成立していません。

ここはそのまま進めず、測定方法を作り直しました。

急変より前に観測済みだった市場状態だけを使い、同じデータを再計算しました。

その結果、全市場をまとめたときの傾向そのものは残りました。

一方、市場ごとに結果が揃わないという問題も残りました。

この過程は、今回のPLI研究でかなり重要だったと思います。

きれいな結果が出たあとに、その結果を説明するのではなく、そもそも何を測っていたのかを壊して確認する必要がありました。

ここまでで言えるのは、

負荷と処理能力の不均衡は、市場ストレスを見るための候補にはなる。

ただし、

それを単純な建玉量と静的な注文板だけで安定して測れるとは限らない。

というところまででした。


「見える」と「取れる」の分離

次に調べたのは、もう少し実務的な問題です。

過去データ上で何らかの関係が見えていたとしても、実際のbotが使えなければ意味がありません。

そこでHyperliquid上でリアルタイム観測を行い、

  • 市場の急変をその場で検知する
  • その時点までに取得済みだった市場状態だけを使う
  • 急変後の短い時間を追う
  • 実際の売り板・買い板を使った場合も確認する

という検証へ進みました。

24時間の観測自体は完走しました。

途中でこちら側の再接続処理に不具合があり、数回のデータ欠損が発生したため、あらかじめ決めていたデータ品質基準には通りませんでした。

この不具合は後から原因を特定し、修正しています。

正式な検証結果としては使えないため、欠損区間を結果を見る前に固定したルールで除外し、残りを参考解析として使用しました。

この解析で十分な条件を満たしたのはSOLだけでした。

BTCとETHでは、取得していた注文板の範囲だけでは必要な流動性を正確に測定できず、評価対象から外れています。

したがって、BTCとETHについて「取れなかった」と結論付けることはできません。

一方、SOLでは、急変を検知したあと数秒から数十秒を見ても、典型的な追加の値動きはほとんど残りませんでした。

さらに、実際に売り板や買い板を跨いでエントリーする想定にすると、手数料を含める前から不利な結果になりました。

これは、過去データ上で見えた傾向が間違っていた、という意味ではありません。

過去の分析では数分後の大きな値動きの「尾」を見ています。

リアルタイム側では、急変を認識したあと数秒で、通常のケースにどれだけ値動きが残っているかを見ています。

測っているものが違います。

【「見える」と「取れる」の分離】

この区別は、PLIに限らず今後の研究でもかなり重要だと思います。

市場に脆弱性があることと、その脆弱性を自分のbotが利益へ変換できることは別です。


PLIを閉じる、という整理ではない

一連の検証を終えた直後は、「PLI研究を閉じる」という整理も考えました。

しかし、研究全体をもう一度監査すると、それでは少し雑でした。

今回検証したものを分けると、少なくとも三つあります。

一つ目は、

負荷と処理能力の不均衡を見る、PLIという考え方そのもの。

二つ目は、

その状態を、建玉量や静的な注文板でどこまで測れるか。

三つ目は、

その状態で価格急変が起きたあと、同じ方向へ追いかけることで利益が取れるか。

今回、否定的だったのは主に三つ目です。

二つ目についても、単純な指標だけでは市場横断で安定しないという限界が見えました。

しかし一つ目については、まだ研究の入口として利用価値が残っています。

さらに、「PLI状態がなぜ価格変動へつながるのか」という因果経路については、実際の清算フローをまだ接続していません。

清算を調べるためのデータ取得経路までは確認しましたが、今回の価格急変イベントと実際の清算注文を直接結び付けるところまでは進めていません。

したがって、

PLIが清算連鎖を説明できなかった

とも言えません。

そもそもそこはまだ測っていません。

現在のPLIの位置付けはざっくり以下のような感じです。

【現在のPLIモデル】


まだ見ていないものは多い

今回調べていない領域もかなり残っています。

たとえば、

  • 実際の清算注文
  • 各ポジションのレバレッジや集中
  • 清算価格への距離
  • より深い注文板
  • 注文板が補充・撤去される速度
  • 一秒より短い時間帯
  • 手数料や注文サイズ
  • 実際の注文送信から約定まで
  • 他取引所への伝播

などです。

これらを調べれば、PLIの解像度をさらに上げることはできます。

ただし、「まだ調べていない」という理由だけで、すべてを順番に調べるつもりはありません。

未検証であることと、追加で調べる限界効用が高いことは別です。

現在の証拠から見ると、PLI専用にさらに大きな測定系を構築していく優先度は高くありません。

一方で、今後別の研究で必要な観測技術やデータが自然に揃えば、再び検証できる部分もあります。


次は「PLI bot」ではなく市場ストレスの観測機へ

今回の研究から残したいのは、PLIを直接売買シグナルにする発想ではありません。

今後は、

市場ストレスが発生しそうな場所を常時探すための観測レンズ

として利用します。

まずは、ポジション負荷、流動性、注文板、スプレッド、実際の注文フロー、価格変動などを独立して監視します。

そこで複数の異常が重なった市場だけを「ストレス候補」として拾います。

候補が出たら、

何が積み上がっているのか。
何が処理能力を制限しているのか。
何がきっかけになったのか。
どんな注文へ変換されたのか。
どこに影響が出たのか。

を個別に調べます。

そして、因果経路の途中に取得可能な歪みが残っている場合だけ、改めてedge候補として検証します。

つまり、次に作るものは「PLIが高ければ売買するbot」ではありません。

深掘りする価値のある市場を機械的に絞り込むための観測機です。

何も起きていなければ、何も出さない。

異常が重なったときだけ、その時点の市場状態をケースとして残す。

そこから個別研究を始めます。


研究を終わらせるのではなく、使い方を変える

PLI研究では、最終的な売買edgeを確定するところまでは到達しませんでした。

一方で、

負荷が大きいこと
市場の処理能力が弱いこと
ストレスが顕在化すること
その後に自分が取れること

は、それぞれ別の問題だということが明確になりました。

特に、「市場が壊れやすいように見える」ことから「取れる」までを一気につなげないことは、今後の研究でも重要になります。

PLIは、単独の売買戦略としてではなく、

市場の負荷と処理能力の不均衡から、次に掘るべき場所を探すための研究レンズ

として残します。

ここから先は、この考え方を常時観測へ移します。

実際にどのような市場が検知されるのか。

どの指標が役に立ち、どの指標がほとんど意味を持たないのか。

そして、検知されたケースの中から実際に取れる歪みまで到達するものがあるのか。

次はそこを見ていきます。

それでは、また。

-Bot, DeFi bot, DEX, 開発ログ