每天晚上保存下一交易日的原單、分數與輸入快照;交易日收盤後重產同一天清單並比對。重試保留原單,結算使用原單張數。
PnL 按交易規則模擬結算:同一批部位照 nightly 的規則下單與成交(kevin_live_twse_nightly:流動性優先的整張分配、每檔 ≤ 成交張數 1/500、開盤漲跌停不進場、空單開盤跳空 ≥ +8% 或 ≤ −2% 不做、多單跳空 ≤ −8% 不做、空單 RefPrice×1.08 停損(+2 tick 成交)、收盤出場、來回成本 19 bps)。多單條件出場(v007 起,TW54):出場模型預測「開盤→10 點」高於「開盤→收盤」的多單,在 10:00 那根 5 分 K 收盤(10:05)賣出,跌停或尚未成交則留到收盤;空單保留停損,未觸發則收盤出場。資金使用=實際進場金額 / 每邊資金;未成交=開盤擋單、跳空排除、張數為 0。
IC 與 A_target 用凍結模型的訊號逐日計算;f_D / f_V / f_L 是近 60 日 alpha 在 train 擬合的 label 基底上的能量占比(D 占比下降、V/L 上升=失效的樣子,TW31)。CUSUM 偵測 edge 的平均跌破 0(NN 不再贏過同輸入的 ridge 基準;nn edge 看 IC、D edge 看 D 方向對齊),門檻校準為正常雜訊下每年約 12 次警報(偏重 recall,TW30),每週最後一個交易日檢查,警報後歸零;橘色點=警報=建議重訓(重訓做法見 docs/LIVE_TWSE.md)。
共同規則:formation week w(週一~週五)每天都有成交、有 5 分 K、未處置、可現股當沖(X)的股票是候選;用到 w 收盤為止的資料打分數,分數最高的成員在下一週每天交易(週五晚上的訊號已用新一週的成員)。成員當天不能當沖仍留在模型截面,只是不給權重。「流動性前 300」=候選中 w 的日均成交值前 300 名。
| Book | 候選池 | 分數(選最高者) | 檔數 |
|---|---|---|---|
| vol100 | 流動性前 300 | w 的 Parkinson 波動(日高低價):波動最大 | 100 |
| elec100 | 電子產業(產業代碼 24–31:半導體、電腦週邊、光電、通信網路、電子零組件、電子通路、資訊服務、其他電子) | w 的日均成交值 | 100 |
| spec100 | 流動性前 300 | 近 10 個交易日 5 分 K 報酬(扣掉每根 bar 的截面平均)的相關矩陣,做特徵分解;高於 Marchenko–Pastur 雜訊邊界的共同模態能解釋的變異占比:最會跟著族群一起動 | 100 |
| dirwk100 | 流動性前 300 | 近 10 個交易日盤中 label 能量的方向性 uD = log sD − (log sV + log sL)/2(D=方向、V=活躍度、L=大波動):能量偏方向而非雜訊;至少 80% 天數有資料 | 100 |
| dir5s100 | 流動性前 300 | 同 dirwk100 的方向性 uD,但只看近 5 個交易日(TW57 / TW58) | 100 |
| indmix | 全部候選,按產業分組 | 每個產業取日均成交值前 12%(無條件進位,每產業至少 1 檔),聯集 | 約 195 |
| branch100 | 流動性前 300 | 近 10 個交易日(前 10 大買超分點 + 前 10 大賣超分點金額)/ 成交值:分點集中度最高 | 100 |
| calm100 | 流動性前 300 | 近 10 個交易日 Parkinson 變異的負值:日內振幅最小(多方用) | 100 |
該交易日部位(多空各 1 單位資金)的淨曝險 = 多方平均 − 空方平均,因子用前一交易日收盤後已知的資料(盤前即可得)。beta:60 日對市值加權大盤的 beta(beta 單位);其餘為全市場截面 z 分數(±3):size=log 市值、momentum_20d、reversal_1d=當日報酬、volatility_20d、liquidity_20d=20 日均成交值、foreign_5d=外資 5 日淨買 / 成交值。產業:淨權重(多 − 空,占單邊資金 %)絕對值最大的 3 個。