LambdaMART 截面排名動能策略:以Learning to Rank 強化台灣 50 動能選股
前言與策略背景
傳統動能策略通常將選股視為報酬預測問題,試圖精確估計每支股票的未來絕對報酬率。然而,主動選股的本質並非預測報酬的精確數值,而是在截面上找出「哪幾支股票相對更強」—— 這是一個排名問題(Ranking Problem)。
本策略根據論文 Learning to Rank Enhancing Momentum Strategies Across Asset Classes,將截面選股重新定義為機器學習中的 Learning to Rank(LTR)任務:以多個動能因子作為特徵,訓練 LambdaMART 模型直接最大化截面排名的 NDCG(Normalized Discounted Cumulative Gain)目標。與單因子動能或線性多因子合成相比,LambdaMART 能自適應地學習因子之間的非線性交互作用,並以排名目標取代均方誤差,使模型更直接服務於選股決策。
策略以歷史台灣 50 成分股(TW50) 為投資標的 ,採月度再平衡,每期買入 LTR 分數最高的前 10 支股票,等權配置。訓練採用 Walk-Forward 架構,每預測一個月份前僅使用過去所有月份的歷史資料,嚴格避免前瞻偏差。
本研究採用專為台股開發的 TQuant Lab 回測系統,透過與 TEJ API 深度整合,大幅提升因子運算與數據整併效率:
- TQuant PIT 資料集:提供 Point-in-Time 資料,精確紀錄數據發布的原貌,有效排除「前瞻偏差 (Look-ahead Bias)」,確保回測結果具備高度實戰參考價值。
- TejToolAPI 資料整併:支援跨頻率數據轉換,能一鍵整併季、月、日等不同頻率的資料(如財報與日股價),簡化進出場訊號的建構流程。
- 專業分析模組:內建 Zipline 回測引擎與 Pyfolio 績效模組,並支援 Alphalens 進行因子健檢,在回測前即可先行驗證因子的預測力與穩定性。
TQuant Lab 回測系統提供標準化且具高度重現性的實驗平台,助您精確模擬真實交易邏輯。
👉 立即造訪 TQuant Lab 官網,掌握台股量化開發利器。
量化定義與資料來源(Data & Methodology)
策略邏輯
特徵因子(6 個)
策略使用以下 6 個動能與波動率相關特徵因子
說明 計算方式 三時間尺度 MACD 合成訊號 三組快慢線 移動平均( (天數為8/24、16/48、32/96),各組計算 MACD / σ(近63日價格) 後套用轉換函數 φ(x) = x·exp(−x²/4)/0.89,三組等權合成 波動率調整動能 21 日報酬 ÷ 21 日日報酬標準差 短期動能 近 21 個交易日(約 1 個月)報酬率[1] 中期動能(跳過最近一個月) 從 T-64 到 T-22 的報酬率,跳過最近 1 個月以避免短期反轉偏差 中長期動能(跳過最近一個月 ) 從 T-127 到 T-22 的報酬率,同樣跳過最近 1 個月 波動率因子 近 21 個交易日日報酬標準差
Walk-Forward 滾動訓練架構
每個回測月份 T 的預測流程如下:
- 訓練集:使用歷史累積月份 $[0, T-1]$ 的數據(包含各期特徵與前向 1 個月報酬的分位數標籤)
- 標籤定義:在每個月份截面內,依前向 1 個月報酬分為 5 個分位組(0 = 最差,4 = 最佳)
- LambdaMART 訓練:採用排序學習(Rank Optimization) 為目標訓練,評估指標為 NDCG@5 與 NDCG@10;並設定月份截面分組,使模型理解截面排名結構
- 預測:對當前月份 T 各檔股票輸出排序分數
- 執行:買入排序 分數最高的前 10 檔股票,進行等權配置。
模型設定參數
參數 值 說明 學習目標 (Objective) lambdarank 以截面排名最佳化為目標 評估指標 (Metric) ndcg 衡量排序結果品質的權重累積增益 評估截面深度 [5, 10] 著重評估前 5 與前 10 名之排序精準度 學習率 (Learning Rate) 0.05 模型學習步長 樹葉節點數 (Num Leaves) 31 控制單棵樹之最大複雜度 葉節點最小資料量 5 防止過擬合的節點資料限制 迭代輪數 (Boost Rounds) 100 提升樹之建構次數 seed 隨機種子 (Seed) 42 確保結果可重現
策略交易執行機制
- 每日盤前處理:每個交易日開盤前,自動更新最新因子運算結果與當期目標持股名單。
- 定期再平衡:設定僅於每月第一個交易日執行實際的部位調整與下單作業。
- 進場邏輯:對於當期目標持股名單內的每檔股票,以等權重(各占資產約 10%)下單買入。
- 出場邏輯:對於原持股中已未列入當期目標名單的個股,進行全數賣出平倉。
- 資料動態更新:模型的排序分數按月載入,並於月內自動延續與保持最新狀態
資料來源與期間設定
- 資料來源:TEJ 投資用資料庫
- 投資標的:台灣 50 成分股
- 訓練資料期間:2016-01-01 ~ 2019-12-30(4 年,純訓練用,不進入回測)
- 回測期間:2019-12-30 ~ 2024-12-31- 最短訓練月份:12 個月(首次預測前需累積至少 1 年訓練資料)
- 再平衡頻率:月度,每月第一個交易日)
- 持股數量:前 10 名,等權配置,每檔約 10%
- 初始資金:新台幣 100 萬元(- 交易成本:買入 0.1425% 手續費;賣出 0.1425% 手續費 + 0.3% 證券交易稅(- 滑價成本:VolumeShareSlippage\(volume_limit=0.025, price_impact=0.05\)
- 基準指數:IR0001(臺灣加權股價報酬指數)
實戰回測與圖表分析
指標項目 策略 台灣加權指數 (Benchmark) 年化報酬率 (Annual return) 43.656% 18.348% 累計報酬率 (Cumulative returns) 475.965% 125.74% 年化波動率 (Annual volatility) 29.43% 18.61% 夏普比率 (Sharpe Ratio) 1.38 1.00 索提諾比率 (Sortino Ratio) 1.98 1.40 卡瑪比率 (Calmar Ratio) 1.07 0.64 最大回撤 (Max Drawdown) -40.757% -28.553% 歐米茄比率 (Omega Ratio) 1.26 1.19 日風險價值 (Daily VaR) -3.547% -2.271% 日換手率 (Daily Turnover) 5.651% — Alpha 0.19 — Beta 1.26 —
圖 1:策略累計報酬率 vs 加權指數(Equity Curve)
說明:LTR 排序策略於 2019-12-30 ~ 2024-12-31 期間累計報酬達 475.965%,遠超 加權指數的 125.74%,超額累計報酬約 350 個百分點。策略 Beta 為 1.26,反映持股整體波動高於大盤;但 Alpha 達 0.19,代表在承擔市場風險以外,LambdaMART 排名模型確實帶來了顯著的超額報酬。2020 年 V 型反彈與 2023-2024 年 AI 相關行情的高 Beta 特性,有助放大策略在多頭期間的絕對表現。
圖 2:策略回撤曲線(Drawdown Curve)
說明:策略最大回撤為 -40.757%,顯著深於基準的 -28.553%。Beta 1.26 放大了市場下行時的損失,2022 年全球升息環境造成的科技股修正可能是主要回撤來源。Calmar Ratio 1.07(年化報酬 / |最大回撤|)優於基準的 0.64,代表在承擔更深回撤的同時,報酬補償相對充足。
圖 3:月度報酬分布(Monthly Returns Bar Chart)
由月報酬分佈圖(Distribution of monthly returns)可見,策略的單月報酬主要集中在零軸附近的正值區間(黃色虛線代表之平均值高於零),呈現小幅度的正向偏移。大部分月份皆錄得正報酬,僅少數月份出現較大的極端正報酬或較深的負報酬,整體分佈型態大致維持對稱,未見顯著的單邊失衡現象
深度洞察與優化建議
回測結果判讀
本策略的 Alpha 來源有兩層:因子本身的預測力與 LambdaMART 對因子非線性組合的學習能力。台灣50 成分股流動性高、資訊效率相對充足,因此單一因子 alpha 的強度預期低於全市場選股,但同樣受益於以下結構特性:
- 有利的市場情境:當 台灣50 成分股出現明顯的截面分化(例如半導體族群強勢而傳產族群落後),多時間尺度MACD訊號與中短期動能因子將捕捉到清晰的排名訊號,LambdaMART 的 NDCG 最優化在此情境下效果最佳。
- 不利的市場情境:當 台灣50 成分股高度同步(例如系統性拋售或指數期貨帶動的全面下跌),截面排名訊號雜亂,模型排名能力(排序分數離散度趨近零)下降,選出的前 10 支股票與其餘成分股報酬差距縮小,策略退化為接近等權 台灣50。此時策略仍保持多頭曝險,無法避免系統性回撤。
- Walk-Forward 架構的穩健性:策略使用 2016-2019 年(4 年)作為預訓練資料,確保 2019-12-30 回測第一天就有 12 個月以上的訓練樣本(。Walk-Forward 的每期訓練集持續累積,理論上模型會隨時間改善,但也可能在市場風格急劇切換時出現短暫的模型滯後(訓練資料仍以舊風格為主)。
綜合回測表現,本策略在報酬效率與風險調整後收益上均顯著超越基準大盤,然而,較高的市場曝險 (Beta) 也導致策略在空頭市場中承受更深的最大回撤。整體而言,模型展現了強大的超額報酬創造能力,但投資人仍需具備承受階段性較高波動與回撤的風險承受度。
策略侷限性與潛在風險
- 過擬合風險:LambdaMART 的超參數(在本版本為固定值,未進行 Walk-Forward 內部交叉驗證。若 台灣50 的截面樣本數每月僅約 42-50 支,訓練樣本相對模型複雜度的比例需關注,存在過擬合至特定歷史風格的風險。
- Small universe 問題:台灣50 約 50 支成分股,每月截面樣本數有限。LambdaMART 在大截面(數百支股票)中排名效果更穩定;小截面下的 NDCG 最優化可能受雜訊影響較大,實際排名能力與大截面論文結果可能有落差。
- Long-only 無空頭保護:策略等權持有排名前10的股票,無做空機制。在系統性風險(如 2022 年升息環境)中,所有持股同步下跌,最大回撤可能與加權指數相當甚至更大。
- 交易成本侵蝕:每月換倉的交易成本(買入 0.1425% + 賣出 0.1425% + 0.3% 證交稅 = 0.585%)在持股排名前10、等權配置下,每換 1 支股票(佔 10% 部位)成本約 1/10 × 0.585% = 0.0585%。若每月換手 4-6 支,年化交易成本約 3-4%,對策略淨 Alpha 影響顯著。
可行的量化優化方向
- 加入 Walk-Forward 內部驗證:在每期訓練時用最近 3 個月作為驗證集(早期停止 early stopping),動態調整模型迭代輪 ,降低過擬合風險。
- 擴大標的至 TWSE 前 150 大市值:增加截面樣本數可提升 LambdaMART 的排名學習效果,同時保持流動性。論文原始實驗即採用較大截面,台灣50 是此次實作的保守起點。
- 加入市場 趨勢/總體 濾網(Market Regime Filter) :當 加權指數 月報酬連續 2 個月為負時,將持股數降至前五名或全部轉為現金,減少空頭期間的系統性曝險。
- 加入排序離散度(LTR Spread) 自動監測:若滾動 3 個月的平均排序分數差距 低於閾值(代表模型排名能力退化),自動縮減部位至 50%,等 排序能力 回升後再恢復全倉。
- 增加基本面特徵:可加入盈餘殖利率、帳面市值比等價值因子,讓 LambdaMART 在動能衰退期間能以基本面特徵為替代排名依據,提升跨 市場環境的穩健性。
TEJ 產品推廣
TEJ 量化資料庫:克服前瞻偏差的關鍵數據
量化回測最忌諱使用「未來資料」。TEJ 量化資料庫 的核心優勢在於完善的 Point-in-Time (PIT) 當時點數據架構。這代表資料庫紀錄的是數據「當時」發布的正確數值與時間點,而非事後修正後的數字。透過 PIT 數據,您能確保回測時使用的是當時市場真正能取得的資訊,徹底排除「前瞻偏差(Look-ahead Bias)」,讓回測績效具備極高的實戰參考價值。
TQuant Lab:一站式量化策略開發平台
TQuant Lab 是專為量化交易者設計的專業開發環境,整合了從數據調取、策略研發至績效評估的全流程優勢:
精準數據與高效整併:內建 Point-in-Time (PIT) 量化資料集,配合 TejToolAPI 自動完成跨頻率數據整併(如將季、月頻率財務指標轉換至日頻率),讓使用者在排除前瞻偏差的前提下,快速建構如「營收成長率」等複雜選股因子。
高模擬度事件驅動回測:採用 事件驅動 (Event-driven) 架構,全方位模擬台股真實交易環境。回測過程中嚴謹計入證交稅、手續費與滑價成本,並具備注意股、處置股等流動性過濾機制與資金控管功能,確保回測績效具備高度的可執行性。
多構面績效量測指標:系統化產出專業評估報表,包含涵三大構面:
報酬指標:累計報酬率、年化報酬率、Alpha 值。
風險指標:最大回撤 (MDD)、夏普比率 (Sharpe Ratio)。
持股分析:前十大持有標的占比、換手率統計。
數據的品質與工具的效率,決定了量化模型的生命力。不論您是想複製大師經典策略,或是開發獨門的因子模型,TEJ 與 TQuant Lab 都是您在資本市場中最堅實的數據後盾。
🚀 準備好開啟您的量化交易之路了嗎?
立即前往 TQuant Lab 官方網站,查看更多策略範例與產品資訊: 👉 TQuant Lab - 專為台灣市場打造的量化實驗室**
本文內容僅供研究與學術探討之用,不構成任何投資建議。
延伸閱讀
https://www.tejwin.com/insight/james-oshaughnessy-%E5%9F%BA%E7%9F%B3%E5%83%B9%E5%80%BC%E7%AD%96%E7%95%A5-%E5%BE%9E%E5%A4%A7%E5%9E%8B%E6%94%B6%E7%9B%8A%E8%82%A1%E4%B8%AD%E7%99%BC%E6%8E%98%E5%84%AA%E8%B3%AA/ https://www.tejwin.com/insight/%e5%bd%bc%e5%be%97%e2%80%a7%e6%9e%97%e5%8d%80%e9%81%b8%e8%82%a1%e5%93%b2%e5%ad%b8%e5%af%a6%e8%b8%90%ef%bc%9a%e6%88%90%e9%95%b7%e8%88%87%e5%83%b9%e5%80%bc%e5%85%bc%e5%85%b7%e7%9a%84%e9%87%8f%e5%8c%96/ https://www.tejwin.com/news/factor-library-%E5%9B%A0%E5%AD%90%E8%B3%87%E6%96%99%E5%BA%AB/?utm_source