Bot DeFi bot DEX 開発ログ

🛠️開発記録#570(2026/9/14)追加研究の限界価値を考える回:市場横断観測機の作成を通して

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

ここしばらく、複数の取引所をまたいで価格変化がどう伝わるのかを調べていました。

出発点は、Binanceで価格が動いたあと、Hyperliquidが少し遅れて同じ方向へ動いているように見えたことです。

以前の記事では、この現象について、

  • 24時間データで再現できるか
  • 別期間でも再現するか
  • Binance→Hyperliquidと逆方向で差があるか
  • 実際に注文を出す前提でも残差が残るか

などを確認しました。

結果として、

Binance→Hyperliquidの価格伝播遅延そのものは観測できる。

一方で、

観測できる遅延が、そのまま個人botterの取れる時間になるわけではない。

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

関連記事
🛠️開発記録#563(2026/9/7)CEX-DEX横断研究の更新|「見える」のに「取れない」仮説をどこで切るか

続きを見る

その時点でHyperliquidについては WATCH_ONLY に落としました。

ただし、ここで一つ確認しておきたいことが残っていました。

Hyperliquidで取りにくいだけで、他のvenueにはもっと大きく、もっと長く残る価格伝播遅延があるのではないか。

今回はその確認のために、市場横断観測機を複数venueへ広げました。

比較したのは、

  • Hyperliquid
  • ApeX
  • Aster
  • Lighter

です。

最終的には、Hyperliquidを含め、この価格追随研究はいったんactive researchから外しました。

今回は、その判断をどのように作ったのかを書きます。

同時に、自分がどこまで技術的に理解していて、どこに理解負債が残っているのかも整理します。


まず「価格追随」を何として測るのか

最初に必要だったのは、

Binanceが動いたあと、別venueも動いた。

という見た目を、そのまま価格追随と呼ばないことでした。

仮にBinanceの価格更新が非常に多く、別venueの更新頻度が低ければ、

Binanceが先に更新され、別venueが後から更新される

という見た目は自然に発生します。

これは、

Binanceが価格形成を先導し、別venueが経済的に遅れている

こととは別です。

そこで今回の分析では、単純な「後から同じ方向へ動いた割合」だけではなく、いくつかの観点を分けて見ました。

主に見たのは、

  • Binanceで一定以上の価格変化が起きたあと、相手venueが同方向へ動くか
  • 逆に、相手venueが先に動いたあとBinanceが追随するケースはどうか
  • どちらが先に動き始めているように見えるか
  • Binanceの価格変化に対して、相手venue側に何bpsの差が残るか
  • その差が何秒で縮むか
  • 上昇と下落で挙動が変わるか
  • venueごとの更新頻度や配信方式だけで説明できないか

です。

ここでは、

追随したか

だけではなく、

その追随に方向性があるか

を見ることが重要でした。


観測機では何を保存していたのか

今回のmulti-venue observerでは、各venueのBest Bid / Best Ask、つまりBBOを継続的に保存しました。

最低限、

  • bid価格
  • ask価格
  • bid size
  • ask size
  • exchange側で利用できるtimestampやsequence
  • ローカルで受信した時刻

などを記録します。

そこからmid priceを作り、

あるvenueで価格が変化したとき、別venueのmidがその前後でどう動いたか

を比較します。

今回の観測では、最終的に約4,150万行のデータを保存しました。

Binanceが最も更新量が多く、約3,860万行。

それに対して、

  • ApeX:約84万行
  • Aster:約61万行
  • Lighter:約145万行

です。

この行数差だけを見ても、各venueが同じ頻度でmarket dataを配信しているわけではないことが分かります。

つまり、

Binanceの方が先に動いて見える

という事実には、最初からmarket-data cadenceの差が混ざります。

ここを無視すると、かなり簡単に「Binanceが先行している」という結論を作れてしまいます。


22時間半のデータで比較した

本来は24時間観測する予定でした。

Binance側のWebSocketが途中で切断されたため、共通して使える観測時間は約22時間半になりました。

今回は再走していません。

理由は単純で、

今回の目的であるvenue screeningには、この観測量で十分だった

からです。

ApeXとは約22.4時間。

Asterとは約13.2時間。

Lighterとは約13.9時間。

それぞれBinanceと重なる時間帯だけを使って比較しました。

全venueを最短の共通時間に合わせて削るのではなく、

Binance–ApeX
Binance–Aster
Binance–Lighter

というpairごとの観測可能区間を使っています。

この点も今回、自分の理解負債を減らすうえでは重要でした。

「4venueを同じ期間で比較した」というより、

Binanceを基準に、それぞれのvenueとの重複区間を別々に評価した

という方が正確です。


ApeXは「追随率だけ見ると良い」が崩れた

ApeXは、最初の見え方だけならかなり良い候補でした。

Binanceで価格が動いたあと、

ApeXも同じ方向へ動く

というforward followは高く見えます。

これだけを見れば、

Binanceを見てApeXへ注文を出せばよいのではないか。

と考えたくなります。

しかし、そこから一段掘って、

実際にはどちらが先に動き始めているように見えるのか

を確認すると、結果が崩れました。

matched onsetを見ると、ApeX側が先行しているように見えるケースが多くなります。

つまり、

Binanceが価格形成を行い、ApeXが一方向に遅れて追随している

という単純な構造にはなりませんでした。

ここで疑うべきなのは、

  • market dataの更新頻度
  • batching
  • publisher cadence
  • timestampの意味
  • 同一midが長く続いたあと一度に更新される挙動

などです。

ApeXにはsequence gapも1件ありました。

21011571 -> 21011576

で、欠けていたsequenceは4。

local timestamp上では約2.68秒のgapです。

これは局所的なものだったため、その周辺だけ分析から除外しました。

重要なのは、このgapそのものではありません。

gapを除いても、

forward followは強く見えるのに、方向性を厳密に見ると価格先導とは解釈しにくい

という問題が残りました。

そのためApeXは REJECT にしました。

今回ここで学んだのは、

「Binanceのあとに同方向へ動いた割合が高い」というだけでは、cross-venue edgeの証拠としてかなり弱い

ということです。


Asterは今回のnon-HLでは最も良かった

Asterは今回比較したnon-HL venueの中では最も良い結果でした。

Binanceの価格変化後に追随する構造は一部見えます。

ただし、

  • Binance→Asterだけに明確な非対称性がある
  • 一定以上の価格差が安定して残る
  • その差が十分長く残る
  • 条件を変えても同じ構造が続く

というところまでは行きませんでした。

上昇・下落、shockの大きさ、時間帯などで分けると、結果は弱くなったり混ざったりします。

最終判定は、

WEAK_OR_MIXED

です。

そのため、

BEST_NON_HL_VENUE = ASTER

ではあるものの、

BETTER_THAN_EXISTING_HL_SIGNAL = NO

でした。

ここはかなり重要です。

今回の横展開の目的は、

Asterにも何かあるか

を確認することではありません。

Hyperliquidより掘る価値のあるvenueがあるか

を確認することです。

この問いに対しては、NOでした。


Lighterも「何もない」ではない

Lighterにも、一部では追随らしい構造が見えました。

ただしAsterと同じく、

  • directional asymmetryが弱い
  • 条件によって結果が混ざる
  • residualが決定的ではない
  • Hyperliquidより強いとは言えない

という結果でした。

こちらも WATCH_ONLY

つまり今回の横展開では、

ApeX:REJECT
Aster:WATCH_ONLY
Lighter:WATCH_ONLY

となりました。

そして、既存のHyperliquidを上回る候補はありませんでした。


residualとconvergenceでは何を見ていたのか

今回、自分の理解負債を減らすうえで特に整理しておきたかったのが、

  • lead
  • lag
  • residual
  • convergence

という言葉です。

これらは便利ですが、かなり誤読しやすい。

たとえば、

AがBより500ms leadした

と言ったとき、

本当に取引所内部でAの価格形成が500ms先だったのか、

それとも、

自分のobserverがAのmarket dataを500ms早く受け取った

だけなのかは別問題です。

今回測れているのは主にmarket data上の観測順序です。

したがって、

true exchange latency

そのものを測ったわけではありません。

ここは未解決のままです。

residualについても同じです。

Binanceが先に2bps動き、相手venueがまだ1bpsしか動いていなければ、

1bps程度の差が残っている

と見ることはできます。

しかし、

その1bpsを自分が実際に注文して取れる

とは限りません。

注文を送信している間に価格が更新されるかもしれない。

板の先頭に入れないかもしれない。

約定した瞬間には逆選択を受けているかもしれない。

手数料を払えば消えるかもしれない。

そのため今回は、

residualが観測できること

と、

tradeable residualがあること

を分けました。

convergenceも、

価格差がその後縮んだ

という観測であって、

その間ずっと安全に裁定可能だった

という意味ではありません。

今回closeout時に、これらのsemantic metadataもコードへ追加しました。

将来自分がこの分析コードを再利用したとき、

leadと書いてあるから本当にexchange-level leadなのだろう

と誤読しないためです。


Hyperliquidでは何が残ったのか

ここまで横展開したうえでも、最も明確だったのはHyperliquidでした。

既存の検証では、

  • Binance→Hyperliquidの価格伝播は確認
  • 別期間でも再現
  • Hyperliquid→Binanceの逆方向先行は支持されない
  • structural lag phenomenonは観測

というところまで進んでいます。

つまり、

観測上の価格伝播遅延そのもの

については、Hyperliquidが最も強い。

それでも、

TRADEABILITY_EVIDENCE = INSUFFICIENT

でした。

ここが今回研究を止めるうえで一番大きな材料です。

最も良いvenueですら、

「見える」

から、

「取れる」

へ進めなかった。

そこで、

他venueならもっと良いのではないか

と横展開した。

しかし、

Hyperliquidより良いvenueも見つからなかった。

ここまで確認したことで、

まだ別venueを追加すればあるかもしれない

というだけでは研究を続ける根拠として弱くなりました。


まだ分からないことは残っている

ここまでやっても、未確定事項はかなりあります。

たとえば、

  • 本当のexchange内部latency
  • 注文送信latency
  • queue position
  • fill probability
  • adverse selection
  • market regimeによる差
  • 高負荷時だけlagが広がる可能性

などです。

つまり、

genericなcross-venue追随は絶対に取れない

と証明したわけではありません。

ここは重要です。

研究を止める判断と、

仮説が完全に偽だと証明すること

は別でした。

以前の自分は、この二つをかなり近いものとして扱っていた気がします。


なぜ、ここで止めるのか

今回の停止理由は、

追随は絶対に取れないと分かったから

ではありません。

もっと限定的です。

次の追加研究が、現在の判断を大きく更新する可能性が低くなったから

です。

たとえば、

もう一度24時間回せば、データは増えます。

ただし、今回すでにApeX / Aster / Lighterの相対評価は作れています。

あと数時間や1日増えたことで、

Asterが突然Hyperliquidを明確に上回る

という反転を期待する根拠は弱い。

また、

Binance collectorを修正すればWebSocket切断後に再接続する仕組みを作ることはできます。

ただし、それで改善するのは観測基盤です。

価格追随がtradeableか

という中心問題はほとんど進みません。

ほかにも、Asterをさらに数日掘るとか。

特にAsterは、今回のnon-HLでは最良でした。

しかし、現時点ですでにHyperliquidより弱い。

そこからさらに数日使って、

tradeability phaseへ進めるほどのcandidateへ反転する

可能性を高く見る材料もありません。

こうして一つずつ見ると、

まだ調べられること

はたくさんあります。

しかし、

次に調べる価値が高いこと

はかなり減っていました。


研究の限界効用を見る

今回、自分の中で一番大きかったのはここです。

これまで研究を止めるとき、

仮説をどこまで否定できたか

をかなり重く見ていました。

でも、市場研究では完全な否定はかなり難しい。

データ期間を変えればどうか。

venueを増やせばどうか。

別のregimeならどうか。

もっと高速な実装ならどうか。

より良いexecution環境ならどうか。

調べようと思えば、いくらでも続けられます。

そこで、今回から別の問いを置くことにしました。

次の1日、あるいは次の1週間をこの研究へ投入したとき、どれくらい意思決定が更新されるのか。

今回の記事でいう「限界効用」は、この意味です。

厳密な経済学用語として使っているわけではありません。

追加でもう一単位、時間・実装・データを投入したとき、研究判断がどれだけ前へ進むのか。

という基準です。


「まだ分からない」は継続理由にならない

これは今回かなりはっきりしました。

まだ分からないことがある。

これは事実です。

でも、それだけでは研究を続ける理由になりません。

重要なのは、

その未確定事項を次に調べることで、どの判断が変わるのか。

です。

CVFで今残っている大きな問題は、

  • execution
  • fill
  • queue
  • true latency

などです。

これらは、

BBOをもう24時間保存する

だけではほとんど解けません。

つまり、

分からないことは多い

のに、

普通の追加観測の価値は低い

という状態になっています。

ここを区別できるようになったことで、研究を止めやすくなりました。


「必要十分」を研究時間にも広げる

以前、

観測粒度は細かければ細かいほどいいわけではない

という話を書きました。

関連記事
🛠️開発記録#558(2026/9/1) 高頻度なら細かいほどいい?|個人botterの「必要十分な観測粒度」を具体例で考える話

続きを見る

また、別の研究では、

工程を細かく刻みすぎると、確認作業ばかり増えて判断が進まない

という反省もありました。

関連記事
🛠️開発記録#567(2026/9/11)清算後の資産移動をオンチェーンから追う|研究工程を細かく刻みすぎた話

続きを見る

今回、この二つをもう一段広げることになりました。

必要十分を考える対象は、

  • 観測粒度
  • 保存データ
  • 実装
  • 分析工程

だけではありません。

一つの研究テーマへ投入する時間そのものにも、必要十分がある。

ということです。


「何となくもういい」を分解する

これまでにも、

この研究はもういい気がする

と感じることはありました。

それを、そのまま判断基準にするつもりはありません。

単純に飽きている場合もあるからです。

ただし、今後はこの感覚が出たときに、

次に何をするつもりなのか。
それで何が分かるのか。
その結果、どの意思決定が変わるのか。

まで分解してみようと思います。

もし、

面倒だが、この1日で仮説の生死判定が大きく進む

のであれば、優先度は高い。

逆に、

簡単だからもう24時間取っておく

だけで、判断がほとんど変わらないなら優先度は低い。

自分がこれまで「何となく筋が悪い」「あまり掘る気が起きない」と感じていた研究の一部には、

次の追加作業の限界効用が低い

という判断が言語化されないまま入っていた可能性があります。


今回の最終判断

今回のmarket cross-venue研究は、

WATCH_ONLY

に戻しました。

現時点では、

  • Hyperliquidでは価格伝播遅延を確認
  • 別期間でも再現
  • tradeability evidenceは不足
  • ApeXはREJECT
  • AsterはWATCH_ONLY
  • LighterはWATCH_ONLY
  • Hyperliquidを上回るvenueなし
  • 追加24時間観測は不要
  • collector修正も今は不要
  • tradeability拡張も不要

という状態です。

これは、

cross-venue価格追随という仮説を完全に殺した

という意味ではありません。

今ここへ追加で研究資源を投入する理由がなくなった

という判断です。

再開するとすれば、

  • 特定の市場状態でlagが大きく広がる
  • 新venueで明確な非対称性が見える
  • execution条件が大きく変わる
  • 他の研究から価格伝播遅延が拡大する条件が見つかる

といった、新しい材料が出たときです。

それまでは止めます。


まとめ

今回、市場横断観測機を作って確認したのは、

Binanceのあとに別venueが動いているか

だけではありませんでした。

実際には、

  • どちら向きの伝播なのか
  • 追随率だけでなくonsetはどうか
  • residualは残るか
  • どの程度でconvergenceするか
  • update cadenceで説明できないか
  • local receive順序とtrue exchange latencyを混同していないか
  • Hyperliquidより強いvenueがあるか

まで確認しました。

その結果、

Hyperliquidでは現象自体は見える。
しかし取れるところまでは進まない。
他venueにも、そこを超える候補は見つからない。

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

まだ未確定事項はあります。

ただし、次に残っている問題の多くは、

もう少し長くBBOを保存する

だけでは解けません。

そこで研究を止めました。

今回得た基準は、

研究を続ける理由は「まだ分からないから」ではない。
次の追加作業に、意思決定を更新するだけの価値があるから続ける。

というものです。

仮説を完全に殺し切る必要はない。

今ある情報の中で、次の1日をどこへ置くのが一番良いかを考える。

市場研究を続けるうえで、この基準は今後かなり重要になりそうです。

それでは、また。

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