🗄️ 歴史的文書(アーカイブ) — この文書は過去の研究フェーズの記録であり、現在の結論・手法を反映していません。現在の研究状況は解説セクションを参照してください。
Phase 1.5 — Regime Decomposition (rally / chop / down)
本ページは Phase 1.5 のレジーム分解レポート research_reports/phase1_5_regime_decomposition.md を整理したもの。
62 日の単一窓 P&L を rally / chop / down のレジーム別に分解し、各戦略が特定レジームで真のエッジを持つかを検証する。基となるリーダーボードは leaderboard.md を参照。
メソドロジ概要
- Symbol: ETH_JPY | Window: 2026-02-17 → 2026-04-19(62 日)
- Benchmark:
fixed_hold_eth = 10(+¥591,155 over the full window) - Daily return =
(close_D − close_D-1) / close_D-1、close_Dは営業日 JST Parquet の最終約定価格 - 戦略 daily P&L は
data/derived/reports/phase1_5_logs_s3/<strategy>.logからパース;62 日目(2026-04-19)は JSON レポート対比の残差として補完(06:00 JST rollover で 1 行 emit、61 行の log tail) - レコンサイル: 各戦略はリーダーボード α と ¥425 以内(sub-bp)で一致
レジーム分類
閾値: rally = 日次リターン > +0.3%、down < −0.3%、それ以外は chop。
| regime | days | total bench P&L (10 ETH hold) |
|---|---|---|
| rally | 31 | +¥2,940,550 |
| chop | 4 | +¥16,580 |
| down | 27 | -¥2,366,400 |
| total | 62 | +¥590,730 |
解釈: ラリー 31 日が +¥2.94M 寄与、ダウン 27 日が −¥2.37M 吐き出し、chop 4 日が +¥16k。ネット +¥591k はラリーがドローダウンを約 ¥574k 上回った結果。
レジーム別 α(戦略 − ベンチマーク)、rally α でソート(less-negative = better)
| strategy | rally α (31d) | chop α (4d) | down α (27d) | total α |
|---|---|---|---|---|
| multiday_trend_carry_aware | -¥2,540,310 | -¥31,815 | +¥1,822,961 | -¥749,164 |
| mm_zero_fee_inside_spread | -¥2,914,583 | -¥16,580 | +¥2,366,400 | -¥564,763 |
| baseline_flat | -¥2,939,905 | -¥16,580 | +¥2,366,400 | -¥590,085 |
| baseline_flow_imbalance_pulse | -¥2,947,301 | -¥16,805 | +¥2,363,827 | -¥600,279 |
| baseline_mean_reversion_micro | -¥2,947,358 | -¥17,104 | +¥2,361,437 | -¥603,025 |
| baseline_inventory_mm | -¥2,949,072 | -¥17,356 | +¥2,357,707 | -¥608,721 |
| baseline_momentum_micro | -¥2,949,789 | -¥16,977 | +¥2,362,128 | -¥604,638 |
| baseline_sweep_follow | -¥2,953,117 | -¥17,234 | +¥2,358,292 | -¥612,059 |
| baseline_queue_imbalance_breakout | -¥2,953,502 | -¥17,339 | +¥2,359,189 | -¥611,652 |
| baseline_regime_switch_micro | -¥2,954,515 | -¥16,880 | +¥2,364,913 | -¥606,482 |
| imbalance_momentum_micro | -¥6,131,637 | -¥164,411 | +¥348,183 | -¥5,947,865 |
| sweep_counter_fade | -¥6,982,266 | -¥149,554 | -¥529,891 | -¥7,661,711 |
レジーム別 生 P&L(ベンチ差し引きなし)
| strategy | rally pnl | chop pnl | down pnl | total pnl |
|---|---|---|---|---|
| mm_zero_fee_inside_spread | +¥25,967 | ¥0 | ¥0 | +¥25,967 |
| baseline_flat | +¥645 | ¥0 | ¥0 | +¥645 |
| baseline_flow_imbalance_pulse | -¥6,751 | -¥225 | -¥2,573 | -¥9,549 |
| baseline_mean_reversion_micro | -¥6,808 | -¥524 | -¥4,963 | -¥12,295 |
| baseline_momentum_micro | -¥9,239 | -¥397 | -¥4,272 | -¥13,908 |
| baseline_regime_switch_micro | -¥13,965 | -¥300 | -¥1,487 | -¥15,752 |
| baseline_inventory_mm | -¥8,522 | -¥776 | -¥8,693 | -¥17,991 |
| baseline_queue_imbalance_breakout | -¥12,952 | -¥759 | -¥7,211 | -¥20,922 |
| baseline_sweep_follow | -¥12,567 | -¥654 | -¥8,108 | -¥21,329 |
| multiday_trend_carry_aware | +¥400,240 | -¥15,235 | -¥543,439 | -¥158,434 |
| imbalance_momentum_micro | -¥3,191,087 | -¥147,831 | -¥2,018,217 | -¥5,357,135 |
| sweep_counter_fade | -¥4,041,716 | -¥132,974 | -¥2,896,291 | -¥7,070,981 |
判定: 特定レジームにエッジを持つ戦略はあるか?
どの戦略も、どのレジーム・バケットにおいても hold-10-ETH ベンチマークに勝っていない。 レジーム別 α は 12 戦略すべてで一様にマイナス — 以下 1 つのエッジケースを除いて。
- Down days:
mm_zero_fee_inside_spreadとbaseline_flatが α = +¥2,366,400 を記録 — ただしこれは機械的な結果。両戦略とも実質フラット(0〜1 フィル、正味 P&L ゼロ)なので、10 ETH ベンチが ¥88k 失う日には「何もしない」が定義上それに勝つ。戦略エッジではない。対称に、ラリー日には同じ 2 戦略がインベントリを持たないことで α −¥2.91M / −¥2.94M を失っている。 - 全マイクロサイズ・ベースライン(0.05 ETH cap)はラリーで α ≈ −¥2.95M、ダウンで ≈ +¥2.36M。β = 1 ベンチに対して事実上 β = 0 なので α ≡ −bench_pnl。実際のアルファ貢献は chop バケット(4 日、¥16k ムーブ) — 全て −¥16k 〜 −¥17k にクラスタリングし、1 日あたり均一に −¥500 〜 −¥1k の slippage/fees で方向性エッジなし。
- アクティブに 10 ETH インベントリを保有しようとする戦略(
multiday_trend_carry_aware,imbalance_momentum_micro,sweep_counter_fade)は全レジームでフラット・スタンスにすらアンダーパフォーム:multiday_trend_carry_aware: rally α −¥2.54M(マイクロよりはマシ — +¥400k の生ラリー pnl)、ただし down α +¥1.82M vs ベンチ −¥2.37M = down days でまだ −¥543k 生 P&L。Holding cost(¥24k/62d)がドラッグ。imbalance_momentum_micro,sweep_counter_fade: 全レジームで壊滅的;ラリー (−¥3-4M) / ダウン (−¥2-3M) どちらでも誤った側をホールド。レジームエッジゼロ。
Chop-day リーダーボード(β 寄与がほぼゼロ → α ≈ 戦略スキル)
chop バケット生 P&L でランキング(ゼロに近い / 正が勝ち):
| strategy | chop pnl (4d) |
|---|---|
| mm_zero_fee_inside_spread | ¥0 |
| baseline_flat | ¥0 |
| baseline_flow_imbalance_pulse | -¥225 |
| baseline_regime_switch_micro | -¥300 |
| baseline_momentum_micro | -¥397 |
| baseline_mean_reversion_micro | -¥524 |
| baseline_sweep_follow | -¥654 |
| baseline_queue_imbalance_breakout | -¥759 |
| baseline_inventory_mm | -¥776 |
| multiday_trend_carry_aware | -¥15,235 |
| sweep_counter_fade | -¥132,974 |
| imbalance_momentum_micro | -¥147,831 |
chop レジームでも 全戦略がマネーを失う。最善のアクティブ戦略(baseline_flow_imbalance_pulse, −¥225)は chop 1 日あたり「1 杯のラテ」未満の損失。最悪(imbalance_momentum_micro, −¥147,831)は chop 1 日あたり ¥37k を出血。
Phase 3/4 への結論
- 単一レジームで独立したエッジを持つ戦略は存在しない。 62 日窓はバケット分解では救えない — マイクロサイズ戦略は全て flat のノイジー・クローン(方向性スキルゼロ)、ビッグサイズ戦略は全てレジーム両側で adverse selection。
hold 10 ETHベンチマークが支配的シグナル。 ラリー日は +¥95k/日、ダウン日は −¥88k/日。α を生成するには、アクティブにラリーでロング・インベントリを carry し、ダウン日で flatten(またはショート)する必要がある。12 戦略のどれもこれをスキルフルに実行していない。- マイクロサイズ戦略(0.05 ETH cap)は情報量ゼロ。 レジーム・プロフィールは
baseline_flat(何も保有しない)とほぼ同一。Phase 3/4 ではイナーシャと区別できるように ≥1 ETH にサイズアップする必要あり。 - Chop 日(62 中 4)はサンプル不足。 chop エッジ戦略を統計的に識別するには、より長い窓または chop-selected 訓練期間が必要(ラリー/ダウンのノイズでミーンリバージョン / マーケットメーキング戦略が溺死しないように)。
- Walk-forward ではレジームを明示的に分割する必要あり(Phase 1.5 implication #1 通り)。rally/chop/down ホールドアウトの 3-fold train/test で戦略をレジーム別に surface できる — ただし Phase 1.5 戦略にはそれを意味あるレベルで使える生 pnl は存在しない。
メソドロジ・注意点
- ETH close prices は
s3://historical-source/market_stream/symbol=ETH_JPY/business_date_jst=<day>/trades.parquetの営業日 JST Parquet あたり初期 / 最終約定価格。これはバックテストが消費した正確なデータ・ソース。 - Daily return 系列は
last_price[D] / last_price[D-1] - 1(day-0 prev はfirst_price[0]を使用 → day-0 return = 2026-02-17 intraday move)。 - Daily chaining によるベンチマーク合計(¥590,730)はリーダーボードの ¥591,155 と ¥425 以内 — 残差は参照 tick の選択(初期約定 vs 06:00-JST ticker)。
- Strategy daily P&L は stdout log(
[backtest] YYYY-MM-DD ... pnl=...¥)から。これらは 06:00-JST rollover で emit されるため、各エントリは rollover 時点の前営業日 realized P&L。62 日目(2026-04-19)は rollover エントリがないためreport_strategy_total_pnl - sum(log_days)として imputed。戦略毎に ¥425 以内でレコンサイル。 - アーティファクト:
/tmp/regime_decomp_data.jsonに全 per-day × per-strategy frame。
アーティファクト
- Reports:
data/derived/reports/backtest_ETH_JPY_2026-02-17_2026-04-19_<strategy>_phase1_5_s3.json - Logs:
data/derived/reports/phase1_5_logs_s3/<strategy>.log
関連ページ
- Leaderboard (62-day, s3-stream) — 元となるリーダーボード
- Big-size Loser Diagnosis —
sweep_counter_fade/imbalance_momentum_microのレジーム両側損失の詳細 - Benchmark Audit —
hold 10 ETHベンチマークの公正性(窓のタイミングに対する感度)