メインコンテンツまでスキップ

🗄️ 歴史的文書(アーカイブ) — この文書は過去の研究フェーズの記録であり、現在の結論・手法を反映していません。現在の研究状況は解説セクションを参照してください。

⚠️ CONTAMINATED — in-sample, not OOS (reclassified 2026-06-10). This document's evaluation window 2026-02-17..2026-04-19 was later declared the permanent OOS holdout (2026-06-03/04), but the Phase-3d v1→v3d ladder was iterated and selected on it before that law existed. Every number here is in-sample optimization; the v3c "benchmark-parity" result must never be cited as OOS evidence, and the leveraged_rally_participant family is permanently barred from citing this window as OOS. See docs/research/phase3d-contamination.md.

Phase 3d — leveraged rally-participant(benchmark-parity 達成)

Phase 1.5-v2-final で判明した構造的課題:18 戦略すべてが hold-10-ETH(+¥510k, コスト補正後)に負ける。2026-02-17..04-19 は rally 支配 window で、10 ETH を下回る exposure は算術的に rally upside を取り逃がす。唯一の構造的解は rally 中に 10 ETH を超えるレバレッジ

この記事は v1 失敗 → v2 再設計 → v3c benchmark-parity 達成 のイテレーション記録。v3c で alpha -¥69.80 を達成し hold-10-ETH benchmark に 99.996% 到達(v1 から +¥1.75M 改善)。

  • Date: 2026-04-21
  • Symbol: ETH_JPY
  • Window: 2026-02-17 .. 2026-04-19(62 日)
  • Initial position: 10 ETH
  • Max abs position: 20 ETH(hard cap)
  • Min position: 10 ETH(hard floor — NEVER shorts)
  • Source: --source s3-stream
  • Run tag: phase1_5_s3_v2

1. 戦略設計

1.1 ポジションラダー

レベルETHゲート
Baseline10常時保持(benchmark-matched)
Mild rally15r_30m_bps > RALLY_15_THRESHOLD_BPSPERSISTENCE_EVENTS 連続
Strong rally20r_30m_bps > RALLY_20_THRESHOLD_BPSPERSISTENCE_EVENTS 連続
Fallback10r_30m_bps < EXIT_THRESHOLD_BPS OR persistence 破綻 OR down regime

不変条件(hard):

  • min_position_eth = 10.0 — ベースライン 10 ETH を下回らない
  • max_position_eth = 20.0 — 20 ETH を超えない
  • ショートしない — 負の signal は fallback 10 ETH、ショートに転じない

1.2 Signal: r_30m_bps = 10_000 × log(mid / mid_30m_ago)

ローリング 30 分対数リターン(基点価格から現在 mid までの log-return, bps)。

  • Trend continuation proxy:中期水平線(10-60 分)の realized return は弱い正の自己相関がある(rally regime で特に強い)
  • Phase 2b regime 統計:rally 日 30-min return 平均 +20-40 bps、+50 bps は 60-70 パーセンタイル

2. イテレーション記録

2.1 Phase 3d-v1 — VWAP 偏差シグナル(失敗)

設計vwap_dev_30m_bps = (mid - vwap_30m) / mid × 10_000+2 bps を 3 連続超過で 15 ETH、+5 bps で 20 ETH。

結果(62日):alpha -¥1,751,766

Metricv1
Strategy PnL-¥1,241,683
Benchmark PnL+¥510,083
Alpha-¥1,751,766
Alpha Sharpe-5.34
Fills4,758
Turnover34,400 ETH
Fill rate75.8%

根本原因:signal polarity が mean-reverting

vwap_dev_30m_bps > 0(価格が trailing VWAP より上)は mean-reversion trigger。価格が VWAP を上抜けると VWAP へ revert する傾向があり、ここでレバレッジを 20 ETH に引き上げると反落を増幅する。

1 日 sanity(2026-03-18)の証拠:

  • 戦略終値 20 ETH(フルレバレッジ long)
  • 当日実際は price 下落: benchmark = -¥205k
  • 戦略 pnl = -¥284k(alpha -¥79k)
  • Turnover 510 ETH / 日 — 典型的 whipsaw

学び:regime classifier feature(regime label 分離に優れる)を trend signal(条件付き将来リターン期待値)として誤用した。

2.2 Phase 3d-v2 — rolling return シグナル(breakthrough)

設計変更(2026-04-21):

  • Signal: vwap_dev_30m_bpsr_30m_bps = 10_000 × log(mid / mid_30m_ago)
  • Thresholds: +2/+5 bps → +50/+150 bps(ノイズを確実に切る 30-min horizon)
  • Exit: 0.5 → 10 bps(対称なヒステリシス)

結果(62日):alpha -¥324,585 — 全19戦略中 1 位

Metricv2v1Δ
Strategy PnL+¥185,497-¥1,241,683+¥1,427,180
Benchmark PnL+¥510,083+¥510,083
Alpha-¥324,585-¥1,751,766+¥1,427,181
Alpha Sharpe-1.93-5.34+3.41
Max DD-¥415,803-¥1,795,748+¥1,379,945
Fills6914,75810× 減
Turnover3,565 ETH34,400 ETH10× 減
Fill rate96.5%75.8%+20.7pp

2.3 Phase 3d-v3 パラメータイテレーション(breakthrough)

v2 結果を受けて v3 grid search。4 組の組み合わせを 62 日で backtest:

Runrally_15rally_20exitpersistAlphaStrat PnLTurnover
v250150103-¥324,585+¥185,4973,565
v3a208052-¥709,909 ❌10,855
v3b5015003-¥241,660+¥268,4233,850
v3c5015002-¥69.80 ✅+¥510,0134,570
v3d5015001-¥205,947 ❌+¥304,1365,380

v3 の学び:

  1. v3a(entry 緩和)は完全失敗 — rally_15=20bps では chop との境界が曖昧、turnover 3x 爆増。v2 の +50/+150 bps entry thresholds が最適。
  2. v3b(exit=0)で +¥82k 改善 — v2 は exit=10bps で 10 分程度の pullback でも即 10 ETH に退避、rally 継続分を取り逃がす。Exit=0 で本当に negative return になるまで残留。
  3. v3c(persist=2)で +¥241k 改善 — v2/v3b は persistence=3(3 分連続確認)、slow-ramp rally の initial phase を取り逃がす。persist=2 で entry が 1 分早まり、rally upside を取り込む。
  4. v3d(persist=1)は regression — 単一 tick での upscale はノイズ過多、turnover +18%・false positive 増で v3c を下回る。Persistence=2 が sweet spot。

v3c は v1 から +¥1,751,696 alpha 改善(99.996% benchmark 到達)。

3. 21戦略リーダーボード(v3c 版)

#strategyalphastrat_pnlbench
1leveraged_rally_participant (Phase 3d-v3c)-¥69.80+¥510,013+¥510,083
2baseline_flat-¥509,438+¥645+¥510,083
3baseline_flow_imbalance_pulse-¥519,632-¥9,549+¥510,083
4baseline_mean_reversion_micro-¥522,377-¥12,295+¥510,083
5baseline_momentum_micro-¥523,990-¥13,908+¥510,083
6baseline_regime_switch_micro-¥525,835-¥15,752+¥510,083
7baseline_inventory_mm-¥528,073-¥17,991+¥510,083
8baseline_queue_imbalance_breakout-¥531,004-¥20,922+¥510,083
9baseline_sweep_follow-¥531,411-¥21,329+¥510,083
10multiday_trend_carry_aware-¥668,517-¥158,434+¥510,083
11mm_directional_zero_fee-¥771,381-¥261,298+¥510,083
12regime_gated_holder-¥812,106-¥302,023+¥510,083
13cvd_accel_momentum-¥2,098,825-¥1,588,742+¥510,083
14-18alpha_* / imbalance_* / sweep_counter_fade< -¥5M< -¥4.5M+¥510,083
19mm_zero_fee_inside_spread-¥22,588,325-¥22,078,242+¥510,083

: leveraged_rally_participant (v3c)全戦略で初の benchmark-parity 達成(alpha -¥69.80 = 0.014% gap)、かつ 全戦略で最高の strat PnL +¥510,013。v3b(+¥82k 改善)→ v3c(+¥241k 改善)で v2 から計 +¥254k の progress を得た。

4. v3c が示した構造的解法

4.1 なぜ v3c は benchmark に到達できたか

v2 では 3 つの overhead があった。v3c でそれぞれ対処:

課題 (v2)v3c 修正効果
Exit=10bps でのアグレッシブ退避exit=0 → 本当に negative return で退避+¥82k
Persistence=3 (3 分) が長すぎ、slow-ramp phase を取り逃がすpersistence=2 (2 分) で早期 entry+¥241k
合計+¥254k

4.2 なぜ更なる緩和(v3d: persist=1)は regression したか

v3d (persist=1) は 即 tick upscale — single-event breakout で 15 ETH に乗り換え、すぐ reversal で 10 に戻る whipsaw が発生。

  • Fills: 886 → 1,038(+17%)
  • Turnover: 4,570 → 5,380(+18%)
  • Alpha: -¥69.80 → -¥205,947(-¥205k)

Persistence=2 が最適解 — rally 確認と反応速度のバランスポイント。

5. 実装

  • 戦略: src/atc/strategies/baselines/leveraged_rally_participant.py(~200 LOC)
  • Registry: src/atc/strategies/registry.py
  • Tests: tests/test_leveraged_rally_participant.py(12 unit tests, すべて pass)
  • v3c default parameters: rally_15=50, rally_20=150, exit=0, persistence=2, return_window=1800s
  • v1 失敗診断: research_reports/phase3d_v1_62day_diagnosis.md
  • v2 結果: research_reports/phase3d_v2_62day_results.md
  • v3c 結果: research_reports/phase3d_v3c_62day_results.md

6. 次のステップ

6.1 Phase 5 walk-forward 検証(unblocked)

v3c が benchmark-parity を達成したことで、Phase 5 walk-forward 検証が initiating 可能に:

  1. 2026-02..04 を rolling 14-day window で分割
  2. persistence=2 と exit=0 が regime 別に安定か検証
  3. Window-optimal parameters の drift を確認

6.2 構造的 positive alpha への次の一手

v3c は benchmark tie(alpha -¥69.80)だが beat できていない。positive alpha を取るには:

  • 短期 alpha signal の重畳 — imbalance/sweep signal で ±2 ETH の微調整を v3c 10/15/20 ladder に加算
  • Rally peak detection — 20 ETH でのホールド延長を rolling high に条件付ける
  • Secondary re-entry — exit 後の pullback 底で再 upscale

7. まとめ

  • v1 → v3c で alpha +¥1.75M 改善(-¥1.75M → -¥69.80)
  • 全戦略で初の benchmark-parity 到達(99.996% gap closure)
  • 全戦略で最高の strat PnL (+¥510,013)
  • 4 イテレーション・4 日で失敗から benchmark-parity へ — framework の diagnosis→redesign→sweep loop の実証

関連リンク