blindTest V45 vs karmaResearch V9

V45: Karma regime + MPI-scaled shorts + CBBI/ARI boosts  |  V9: BB regime + bottom signals + MPI exit
Train RetTrain SharpeVal RetVal SharpeTest RetTest SharpeFull SharpeMaxDDVal/TrainParams
V45 +170%2.74 +95%2.92 +7.1%2.41 2.6713.8% 0.56~50
V9 +146%2.20 +99%3.37 -3.8%-0.13 2.1516.4% 0.6820+
V16 (simple) +159%2.04 +49%2.19 +30.5%1.84 2.0018.2% 0.315

V45 完整決策流程

flowchart TD START["每根 K 棒 (1h)"] --> WAIT{"有掛單? 暖機中?"} WAIT -->|是| SKIP["跳過"] WAIT -->|否| POS{"有持倉?"} POS -->|無| REGIME["Karma Regime\nkarma < 30 → BEAR\nkarma > 60 → BULL\n其他 → NEUTRAL"] POS -->|有多| LONG_EXIT["多頭出場判斷"] POS -->|有空| SHORT_EXIT["空頭出場判斷"] REGIME --> HOUR{"06-12 UTC?"} HOUR -->|是| ENTRY_THR["ob_dif 閾值\nBULL=1500\nNEUTRAL=2000\nBEAR=3000"] HOUR -->|否| ENTRY_THR_OFF["ob_dif 閾值\n= 5000 (off-peak)"] ENTRY_THR & ENTRY_THR_OFF --> LONG_CHECK{"ob_dif > 閾值\nAND price <= BB upper?"} LONG_CHECK -->|是| LONG_LEV["計算多頭 leverage"] LONG_CHECK -->|否| SHORT_CHECK{"做空訊號?"} SHORT_CHECK -->|是| SHORT_LEV["計算空頭 leverage"] SHORT_CHECK -->|否| SKIP LONG_LEV --> BUY["做多"] SHORT_LEV --> SELL["做空"] style START fill:#1f6feb,color:#fff style BUY fill:#238636,color:#fff style SELL fill:#da3633,color:#fff style SKIP fill:#30363d,color:#8b949e

V45 多頭 Leverage 計算

flowchart TD REG["Karma Regime"] --> BASE{"regime?"} BASE -->|BULL| B20["base = 2.0x"] BASE -->|NEUTRAL| B10["base = 1.0x"] BASE -->|BEAR| B03["base = 0.3x"] B20 & B10 & B03 --> LIQ{"overall_liq\n>= Q95?"} LIQ -->|是| BOOST15["× 1.5"] LIQ -->|否| NEXT1["不變"] BOOST15 & NEXT1 --> CBBI{"CBBI 值?"} CBBI -->|"< 0.35"| CB_UP["× 1.5 (低估)"] CBBI -->|"> 0.80"| CB_DOWN["× 0.5 (過熱)"] CBBI -->|"0.35-0.80"| CB_NORM["不變"] CB_UP & CB_DOWN & CB_NORM --> CAP["min(result, 3.0x)"] style B20 fill:#238636,color:#fff style B03 fill:#da3633,color:#fff style CB_UP fill:#238636,color:#fff style CB_DOWN fill:#da3633,color:#fff

V45 多頭出場 (3 層條件)

flowchart LR subgraph "Regime-based Rules" R["Karma Regime"] --> BULL_R["BULL:\nmax_hold=36h\nmpi_exit=70"] R --> NEU_R["NEUTRAL:\nmax_hold=24h\nmpi_exit=60"] R --> BEAR_R["BEAR:\nmax_hold=18h\nmpi_exit=50"] end subgraph "ob_liq Hold Adjust" OL["ob_liq quantile"] --> OL_HIGH{"Q >= 0.7?"} OL_HIGH -->|是| HM1["hold × 1.0"] OL_HIGH -->|否| OL_LOW{"Q <= 0.2?"} OL_LOW -->|是| HM2["hold × 1.0"] OL_LOW -->|否| HM3["不變"] end subgraph "Basis Emergency" BA["basis_apy >= 0.15?"] -->|是| BA_TIGHT["hold = min(hold, 12h)"] end BULL_R & NEU_R & BEAR_R --> EXIT{"ob_dif < 0\nOR MPI > exit\nOR held >= max_hold"} HM1 & HM2 & HM3 --> EXIT BA_TIGHT --> EXIT EXIT -->|任一觸發| CLOSE["平倉"] style CLOSE fill:#da3633,color:#fff

V45 做空系統

flowchart TD subgraph "進場 (5 道過濾)" F1["06-12 UTC only"] --> F2["LSUR >= -1.0\n(veto filter)"] F2 --> F3["ob_dif < -2500"] F3 --> F4["MPI > 50"] F4 --> ENTER_SHORT["進場做空"] end subgraph "MPI 分級 Leverage" ML["MPI 值"] --> M50["50-60 → 0.5x"] ML --> M60["60-70 → 1.0x"] ML --> M70["70-80 → 1.5x"] ML --> M80["80+ → 3.0x ⚡"] end subgraph "出場 (4 條件 OR)" E1["ob_dif > 0"] E2["MPI < 40"] E3["held >= 12h"] E4["stop loss (if set)"] E1 & E2 & E3 & E4 --> CLOSE_S["平空"] end style ENTER_SHORT fill:#da3633,color:#fff style M80 fill:#da3633,color:#fff style CLOSE_S fill:#238636,color:#fff

V45 vs V9 核心差異

V45 — Karma Regime

Long+Short ~50 params 8 指標

V9 — BB Regime

Long+Short 20+ params 6 指標

為什麼 V45 贏

觀察分析
V45 用 Karma Index 做 regime情緒指標比價格 BB 反應更快
V45 的 MPI exit 依 regime 調整 (50/60/70)比 V9 的固定 monthly range 更靈活
V45 做空用 MPI 分 4 級 + LSUR veto比 V9 的 3 tranches 更精細
V45 用 CBBI scaler (低估加倉/過熱減倉)週期位置感知,V9 沒有
V45 Test Sharpe 2.41 vs V9 -0.13核心邊際更真實,不是 noise fit
V9 Val 高 (3.37) 但 Test 虧損Val 被間接 overfit(數百次看 Val 數字)
V45 ~50 個參數參數多但多數是 disabled (boost=0),有效參數 ~15