こんにちは、ぼっちbotterよだかです。
今日は観測機の継続確認をしつつ、DeFi研究の初回分析で何が見えて、何がまだ見えていないのかを整理する日でした。リードラグ研究では、朝チェックの結果から観測継続の前提が崩れていないことを確認しています。DeFi側では、約67時間分のデータを使った初回分析を回し、USDe供給変化とHyperliquid側の反応のうち、どこに当たりがありそうかを見ました。今日は大きな結論を出した日ではありませんが、見えていることと保留すべきことの線引きはかなり進んだと思います。
-
-
🛠️開発記録#521(2026/4/22)観測継続の前提を確認しつつ、ETFとDeFiの確認ポイントを並べた日
続きを見る
本日の確認対象
今日の確認対象は大きく二つでした。ひとつは、Binance Japan向けリードラグ観測機が引き続き正常に回っているかを朝チェックで確認すること。もうひとつは、DeFi観測機で約67時間分まで溜まったデータを使い、初回分析として「何が見えているのか」を実際に読みにいくことです。
前者は運用状態の確認、後者は分析の入口づくりです。ただし今日は、何か新しい仕組みを大きく実装するよりも、すでに回っている観測からどこまで言えるのかを丁寧に切り分けることを優先しました。
見る対象は同じでも、「もう確定してよいこと」と「まだ仮説の域を出ないこと」を分けて書いておかないと、あとで自分で読み返した時に判断が混ざります。今日はその整理を意識した一日でした。
リードラグ観測の朝チェック結果
まず、リードラグ観測機の朝チェックについては、今日も継続で問題なさそうでした。make morning-check の結果では、prometheus、grafana、global_fx、etf_spot、cme_spot、mempool_aux がすべて稼働中で、プロセスの外形上は正常です。

また、source_alive、session_open、session_state_mismatch についても、global_fv、cme_btc、us_spot_etf の各市場で大きな異常は見られませんでした。recent logs にも Traceback、Exception、ERROR は出ておらず、source_quality_not_ready の reject spike も増えていません。要するに、少なくとも「観測機の異常で見え方が歪んでいる」という状態ではなさそうです。
ETFの session-aware summary も、今日はかなり見やすくなっていました。regular では mismatch が 0/390 (0.00%) で、pre-market は 107/330 (32.42%)、after-hours は 43/241 (17.84%)、closed は 1/480 (0.21%) です。これまでは ETF まわりが雑に「ズレている」「弱い」と見えがちでしたが、いまはどの時間帯でズレやすいのかがかなり分かりやすくなっています。
このあたりは、何か新しい構造を見つけたというより、観測の見え方が少しまともになった、という種類の前進です。regular が 0% で、pre や after でだけ mismatch が乗る形になっているので、本命時間帯とそうでない時間帯を分けて眺めやすくなったのは素直に良かったと思います。
ETFの見え方が少し整理された
今日のリードラグ側で新しく何か大きな判断を作ったわけではありませんが、ETFの見え方については一歩整理が進みました。
現時点で確定してよさそうなのは、ETF系ソースが「止まっている」わけではないことです。source_alive=1、session_open=1、session_state_mismatch=0 が regular ではきれいに揃っており、エラー系のログも出ていません。つまり、少なくとも本命時間帯に限れば、観測系の基本動作は成立していると見てよさそうです。
一方で、未確定のまま置いておくべきこともあります。ETFが現行の lead-lag 定義では弱く見えること自体は事実として残せますが、それを「ETFに構造がない」とまではまだ言えません。今の定義がETFの市場特性に合っていない可能性もあるし、プレ・アフターを含めた時間帯差が、見え方全体に混ざっていた可能性もあります。
未確定だがそれらしく見えているものとしては、「ETFは regular だけ切り出して改めて見る価値がある」ということです。これはまだ結論ではありませんが、少なくとも以前よりは、どこを見直せばよいのかの輪郭が少し出てきました。前回までの「ETFがなんとなく弱い」よりは、今日のほうがずっと扱いやすい状態です。
だから今日の時点では、「ETFは現行モデルでは弱く見えるが、時間帯を分けたことで見直しポイントが少し明瞭になった」くらいに置いておくのがちょうどよさそうです。
DeFi初回分析で見えたこと
DeFi側は、今日の主題がかなりはっきりしていました。約67時間分、usde_supply は 73点、期間は 2026-04-20T05:00:16Z から 2026-04-23T00:00:16Z までで、厳密にはまだ72時間未満ですが、初回分析に入るには十分なところまで来ています。
今回の初回分析でまず見たのは、USDe供給変化に対して Hyperliquid 側の funding_rate、open_interest_usd、volume_24h_usd がどう反応しているかでした。ここで一番当たり方が良かったのは open_interest_usd です。
6時間 horizon では、open_interest_usd の方向一致率が 19/26 = 73.1% で、内訳は BTC が 76.9%、ETH が 69.2% でした。24時間では 7/14 = 50.0% で優位性は消えていますが、少なくとも 6時間では「USDe供給ショックのあとに建玉が同方向に追随している」ような痕跡が見えています。lag相関でも、BTC OI は +2h 付近、ETH OI は +4h 付近で弱いながらピークが出ており、完全に空振りではありません。
一方で、funding_rate は今回のデータでは明確な同方向性が見えていません。6時間では 11/26 = 42.3% で、むしろ少し逆方向寄り、24時間では 9/14 = 64.3% ですが、サンプルが少なく強くは言えません。volume_24h_usd も、6時間で 13/26 = 50.0%、24時間で 5/14 = 35.7% と、一貫したパターンは見えていませんでした。
ここで見えていることを分類すると、まず確定してよさそうなのは、「今回の初回分析では open_interest_usd がいちばん素直に反応していそうだった」という点です。逆に、funding_rate と volume_24h_usd は少なくとも現時点では主役ではありません。
さらに、未確定だがかなりそれらしく見えている補助軸もありました。それが backing - supply や coverage です。今回、backing - supply のレンジは 29.36M〜326.38M USD、最新値は 95.39M USD、coverage は 1.022263 でした。また、collateral_backing_snapshot の内訳では、最新時点の total backing が 4,380,198,271.17、そのうち Liquid Cash が 3,795,215,472.50 (86.645%)、ETH が 177,399,804.72 (4.050%)、BTC が 169,617,860.95 (3.872%)、WBETH が 161,265,500.00 (3.682%)、mETH が 58,479,668.00 (1.335%) でした。直近48スナップショットでも、Liquid Cash 比率は 86.645%〜88.946%、ETH 比率は 3.435%〜4.050%、BTC 比率は 3.218%〜3.872% の範囲でちゃんと動いています。
この補助系列を使って OI の6時間反応を分けると差がかなり大きく、低spread群では方向一致率が 0.929、高spread群では 0.500 でした。coverage(backing / supply:発行量全体に占める裏付け総額の割合)で分けても、低coverage群で 0.857、高coverage群で 0.583 と差が出ています。イベント単位に落としても、低spread群 0.857、高spread群 0.333 という差が残っていました。
つまり、今日の時点でかなりそれらしく見えているのは、USDe供給ショック単体よりも、backing(USDe を裏付けている資産全体の合計額) と supply(発行されている USDe の総量) の関係や担保構成を足したときのほうが、Hyperliquid OI の反応を分けられそうだ ということです。
ただし、ここでまだ確定したとは言えません。イベント数は 13 と少なく、補助説明変数として有望に見える、という段階です。いまは「地形が見えたかもしれない」とは言えても、「ここに勝ち筋がある」とまではまだ言えません。
まだ作っていない判断
今日の時点では、あえてまだ作っていない判断がいくつかあります。
まず DeFi 側では、「USDe供給が Hyperliquid の funding / OI / volume に先行している」という大きな言い方は、まだしません。今回見えたのは、せいぜい OI について 6時間内の追随の痕跡がありそうだ、というところまでです。funding や volume はまだ弱いし、24時間では優位性も薄れています。だから、ここで市場全体に対する強い物語を作るのは早すぎます。
また、coverage や backing - supply が効いていそうだ、という点も、いまは「有望な補助軸」に留めます。差は出ていますが、サンプルがまだ薄い以上、「これを条件に入れればうまくいく」といった形でルールに落とす段階ではありません。ここはかなり大事で、良さそうに見えるものほど雑に昇格させないほうがよいと思っています。
リードラグ側でも同じで、ETFについて見え方は整理されたものの、「regular で mismatch がないからもう大丈夫」とは言いませんし、「pre-market や after-hours のズレをどう評価するか」もまだ保留です。今は観測しやすくなった段階であって、再設計の結論を出す段階ではありません。
今日は、見えているものが少し増えた日ではありますが、それ以上に「まだ言わないこと」を増やしすぎなかった日でもあったと思います。
明日以降の方針
明日以降も、リードラグ側はまず朝チェック継続です。観測前提が崩れていないことを定例で確認しつつ、ETFについては regular / pre-market / after-hours の見え方を分けて眺められる今の状態をしばらく維持します。すぐに core を触る必要はまだなさそうです。
DeFi 側は、観測継続が基本です。今回の初回分析では、usde_supply → open_interest_usd (6h) と、coverage / backing-supply の補助軸が少し見えたので、まずはこの傾向がイベント数の増加とともに維持されるかを見ます。主系列は引き続き usde_supply、補助系列として collateral_backing_snapshot、Hyperliquid 側では当面 open_interest_usd を中心に見る、という形でよさそうです。
一方で、yield_staking 系の時系列修正は別件として処理しつつ、今すぐ主系列には置かない方針でよさそうです。記録の質は直すとしても、今日見えた当たりはそこではありませんでした。
今日は大きな実装を積んだ日ではありませんが、観測継続の前提を確認しつつ、DeFi 側で初回分析の輪郭を少し掴めた日ではありました。こういう小さい前進を、雑に盛らずに残していくのがたぶん一番効くのだと思います。それでは、また。
補足1:DeFi側で「供給ショック」をどう定義しているかも整理した
DeFi研究については、初回分析の結果だけでなく、そもそも今の実装で「供給ショック」をどう定義しているのかも整理しました。ここは途中で自分でも少し混乱しかけたのですが、改めて確認してみると、今の yield-observer 実装で一次トリガーとして使っているのは、単純な「供給量の増加・減少そのもの」ではありませんでした。これは、今後の認知ズレを予防するためにもきちんと言語化しておきます。
現時点で shock 判定に主に使っているのは、usde_supply の生系列から作った usde_supply_zscore_24obs です。これは、24観測窓の中で見たときに、その時点の供給量が平均からどれくらい離れているかを z-score にしたものです。データ点が足りない場合だけ usde_supply_diff_1obs にフォールバックしますが、今回の分析では主に usde_supply_zscore_24obs を使っています。
さらに、shock の判定方法も「ゼロより上か下か」ではなく、分位点ベースです。具体的には、その特徴量系列の 10% 分位を q10、90% 分位を q90 として、q90 以上なら positive_shock、q10 以下なら negative_shock としてイベント化しています。つまり、今の供給ショックは「供給量が増えたイベント」というより、USDe供給系列の中で相対的に極端な位置にある点を切り出したものです。
ここは名前だけ聞くと少し誤解しやすいところでした。positive_shock と言われると、直感的には「供給が大きく増えたイベント」を想像しがちですが、実際にはそうではありません。今の実装では、あくまで分布の中で高い側・低い側という意味です。だから、場合によっては positive_shock でも shock 値そのものが負になることがあります。ここは、現時点では「今の実装ではこう呼んでいる」と把握しておくのが大事です。
この定義を踏まえて、今回見えてきた構図も少し整理しやすくなりました。現時点では、一次トリガーは usde_supply 由来の相対的極端値イベントで、そのイベントに対して Hyperliquid 側の open_interest_usd が 6 時間内でどう反応するかを見ています。そして、その効きやすさを分ける補助条件として、coverage や backing - supply のような Ethena 側の裏付け余裕度が効いているかもしれない、というのが現在地です。
つまり、今の読みをできるだけ素直に書くと、USDe供給ショックの効き方は一様ではなく、Ethena の裏付け余裕が薄めな局面で、Hyperliquid OI の 6 時間反応が出やすい可能性がある、ということになります。ここで言う「薄め」とは、coverage(backing / supply) や backing - supply が低い側にある状態です。もちろん、まだイベント数は少なく、ここで因果っぽいことを強く言う段階ではありません。ただ、少なくとも「供給ショックらしきものがあったか」だけでなく、「そのときどんな状態だったか」まで含めて見る必要がある、という整理はかなり進みました。
一方で、懸念点もあります。今の供給ショックはあくまで統計的な極端値イベントなので、これがそのまま「経済的に意味のある供給ショック」と一致しているとは限りません。また、連続イベントを束ねる処理もないので、同じ流れの中で条件を満たした複数時点がそのまま別イベントとして立ちます。このあたりは今後も注意して見ていく必要があります。
とはいえ、ここで大事なのは「今の供給ショック定義はダメだ」と切ることではなく、現実装ではこう定義しており、この定義でも多少の当たりは見えていると理解することです。供給ショックの定義自体はかなり難しく、何をベースラインに置くかでいくらでも変わります。だからこそ、今はまず現定義を v1 として扱い、そのうえで観測継続の中で「本当に使えそうか」「別定義の方が良いのか」を後から比べられる状態にしておくのが良さそうです。
今回この整理を入れたことで、少なくとも「今何をトリガーと呼んでいて、何を反応として見ていて、どこがまだ未確定なのか」はかなりはっきりしました。これはあとで読み返したときにも効いてきそうです。
補足2:現行の供給ショック定義を、探索用 v1 としてどう評価するか
DeFi 側では、供給ショックの中身そのものだけでなく、「この定義を今どう扱うべきか」も少し整理しました。現行実装では、usde_supply の生系列そのものではなく、24観測窓の z-score を使って相対的な極端値イベントを切り出しています。この定義は、名前だけ見ると少し直感に反するところがありますが、初期段階の観測ロジックとしてはそこまで不自然ではなさそうです。
少ない実装コストで、まず「何か反応がありそうなイベント候補」を機械的に切り出したい、という用途で考えると、こうした相対的極端値ベースの定義は十分ありえます。実際、今回の初回分析でも、この現行定義のままで Hyperliquid OI の6時間反応には多少の当たりが見えました。少なくとも、「今の定義は完全に空振りだった」とは言えません。
一方で、この定義がそのまま最終形になるかというと、そこはまだ別問題だと思っています。今の供給ショックはあくまで統計的な極端値イベントなので、それが経済的に意味のある供給ショックときれいに一致しているとは限りません。また、連続イベントを束ねない実装になっているため、同じ流れの中で複数のイベントが立ちやすい、という癖もあります。つまり、現行ロジックは「使えるかもしれない探索用 v1」ではあっても、まだその特性をちゃんと棚卸しする必要があります。
現時点で大事なのは、ここで別の定義や新しい実装を一気に積まないことだとも感じています。今回の観測では、一次トリガー、補助条件、反応先の関係がようやく見え始めたところです。この段階で別の shock 定義や追加ロジックを大量に入れると、認知と解釈のコストが一気に上がって、どの定義が効いているのか分からなくなりそうでした。少なくとも今日は、そこに飛ばなかった判断のほうが良かったと思っています。
そのうえで、今後必要になりそうなのは、「この v1 の shock 定義が、どんな場面で有効で、どんな場面で不利になりやすいのか」を明文化することです。たとえば、観測初期の粗いイベント切り出しには向いているのか、ベースラインが動く局面では弱いのか、連続イベントにどれくらい引っ張られるのか。こうした特性を整理できれば、次に shock 定義を複数比較するときにもかなりやりやすくなります。
要するに、現行の供給ショック定義は「ダメな仮置き」ではなく、「まだ評価途中の探索用 v1」と見るのがいちばん自然そうです。今はまずこれを使って観測を継続し、そのうえで後から別定義と比べられる形にしていくのが良さそうです。