投資教室🔍 VIP 功能投票引擎:11 群非參數共識(風險 8 + 量化 5 + 元投票 2)
🔍 VIP 功能10 分鐘閱讀

投票引擎:11 群非參數共識(風險 8 + 量化 5 + 元投票 2)

v3.85 起加入的非參數共識引擎,把同 horizon 用 4 種 VaR 方法(歷史/區塊 Bootstrap/FHS/EVT POT)+ 11 群風險/量化/元投票合票。禁常態 VaR / 禁 √t 縮放,Rule B 跨面向分歧直接揭露。

💡

TL;DR: 投票引擎是 v3.85.0 起加入的「非參數共識引擎」,把風險面 8 群 + 量化面 5 群 + 元投票 2 群(共 11 群)的判斷拆成數十張獨立的方法票,按時段加權聚合成 verdict。設計鐵則:禁常態 VaR、禁 √t 縮放、禁單方法獨大,所有分歧都直接揭露給使用者(Rule B 跨面向旗示)。

觀念篇

為什麼要投票引擎?

傳統做法:挑一個 VaR / Beta / Sharpe 公式,直接給一個數字當風險評估。

問題:任何單一公式都有假設。常態 VaR 假設報酬常態分布(實際不是);√t 規則假設報酬獨立同分布(實際有自相關);GARCH 假設條件變異數有特定結構。一個公式錯,結論就錯

新做法:同一個 horizon 用 4 種不同方法算 VaR,4 票合成一個共識。任一方法假設失效,還有 3 票兜底;4 票全錯 → 模型可信度元投票會抓出來。

11 個群組分工

面向群組在量什麼
風險G1 回撤MDD / CDaR / 平均回撤 / 復原日數
G2 VaR 多期矩陣4 方法 × 6 天期 = 24 票/檔(歷史 / 區塊 Bootstrap / FHS / EVT POT)
G3 下行Sortino / 下行偏差 / Omega
G4 系統性風險Beta_60 / Beta_250 / 相關係數 / R²
G5 報酬風險比Sharpe / Calmar / M²
G6 平穩性Hurst / ADF / KPSS
G7 尾部依賴大盤左尾 5% / 1% tail β / 不對稱 β
G8 波動 regimeσ_20 z-score / vol-of-vol / clustering
量化Q1 趨勢MA 5/20 / 20/60 / 60/200 / Donchian
Q2 動能RSI / MACD / Stoch K
Q3 波動 forwardEWMA / GARCH σ_{t+1} / 已實現 σ
Q4 季節性同月份 / 同週幾 / 月初效應
Q6 預期報酬FHS Monte Carlo 5d / 20d / 60d μ
元投票G9 風險模型可信度Kupiec POF / Christoffersen / Basel(週日跑)
Q5 預測模型可信度rolling backtest hit-rate(週日跑)

4 種非參數 VaR

G2 多期矩陣是引擎核心。對每個天期(5/10/20/60/120/220d)用 4 個方法各投一票:

方法假設怎麼算
M-A 直接歷史0overlapping h 天累積報酬取 5% 分位
M-B 區塊 Bootstrap2抽連續區塊保留波動聚集,n_sims=5000
M-C FHS2GARCH(1,1) 過濾 + 標準化殘差重抽
M-D EVT POT2GPD 擬合尾部超門檻部分,深尾外推

假設權重:0 假設 ×1.0、2 假設 ×0.8、3 假設 ×0.6、4+ 假設(常態 / √t) ×0(直接排除)。

期間切片

每群結果按四個時段切:

  • 極短期:H1=5d
  • 短期:H2=10d, H3=20d
  • 中期:H4=60d
  • 長期:H5=120d, H6=220d

切完按 horizon 聚合 → 給「參考總結」卡內的「風險面」/「量化面」塊用。

Rule B 跨面向分歧

同一時段同時出現:

  • 風險面共識 = high(風險高)
  • 量化面共識 = bull(看多)

→ 後端 cross_panel_divergence API 直接旗示。前端在卡頭亮「⚠ 分歧」。

設計理念:這種分歧不該被加權平均抹平,使用者必須知道「訊號矛盾」這件事本身

操作篇

怎麼在頁面上看到?

開個股 → 總評 → 訊號 → 滑到「參考總結」下面 → 展開 ▶ 投票引擎詳細 — 風險面 × 量化面 11 群組

每群可點開看:

  • overall 整體共識方向 + 信心
  • per_horizon 4 期間共識(極短/短/中/長)
  • 18 票細項表:方法 × 期間 × 方向 × 值 × 信心

訊號層級

讀法由粗到細:

  1. 參考總結 4 卡的 verdict 籌碼(看多/偏多/中性/觀望/偏空/看空)
  2. 卡內「風險面」/「量化面」塊(該期共識,4-5 行核心指標)
  3. 底部 11 群面板(想知道是哪個方法投了什麼票)

模型可信度(G9 / Q5)

每週日深夜跑 250 天 backtest:

  • G9 Kupiec POF:VaR 突破率是否符合名義 α(5%)?
  • G9 Christoffersen:突破是否聚簇?(GARCH 漏了波動聚集 → 紅燈)
  • G9 Basel Traffic Light:紅 / 黃 / 綠燈
  • Q5:ARIMA-MC 預測誤差 hit-rate

紅燈 → 該方法當週票權重降到 40%(自我校正)。

常見問題

Q1:為什麼禁常態 VaR?

常態分布假設尾部太薄。實證:股市報酬有 fat tail(峰度 > 3),常態 VaR 系統性低估極端風險。投票引擎排除是規格鐵則,不是參數設定。

Q2:為什麼禁 √t 規則?

√t 規則(用 1 天 σ × √h 推 h 天 VaR)需要報酬 i.i.d.,實證有自相關(短期動量、長期均值回歸)。每個 horizon 獨立估計 → 不用縮放公式。

Q3:每天會重算嗎?

Daily 跑短窗群(G2 5-20d / G8 σ_20 / Q1-Q3 / Q6),約 30 分鐘/天。 Weekly 跑長窗群(G1 / G3-G7 / Q4)+ 元投票 G9 / Q5,約 5 小時/週,排在週日深夜。

這樣每天的關鍵訊號(短期)是最新的,長期慢數據不必每天浪費 CPU 重算。

Q4:看到「無資料」怎麼辦?

新上市股(< 260 天歷史)會 skip。元投票 G9/Q5 需要 weekly cron 跑完才有資料。

學完了?自己動手試試看

用 CTSstock 的工具實際操作一次,加深理解

查看 2330 投票引擎
版權所有 © 2024 ~ 2026 樹宇科技有限公司,統一編號:93569915