實例分析
手把手走一遍:一個想法從提出到被驗證
這一頁的每一個數字都是此刻用真實台股資料現算出來的, 不是寫死的範例。重新整理就會重算。
因為它的結論不漂亮。它會示範三件事:同一個想法的不同版本結果天差地遠、 樣本內最好的那個通常不是樣本外最好的、以及交易成本可以吃掉八成的報酬。 這些才是你真正需要先知道的事。
1提出一個想法
「強勢股會不會繼續強?」
這是股市裡最老的說法之一:強者恆強。聽起來很有道理, 但它不是一個可以計算的東西——「強勢」是多強?看多久?
2把它拆成可以計算的版本
「最近漲最多」的「最近」可以是 5 天、20 天、60 天、120 天、250 天。 這是五個完全不同的策略:5 天在賭短線情緒,250 天在賭長期趨勢。 與其憑感覺挑一個,我們五個都測。
| 版本 | 樣本內年化 2019–2023 |
樣本外年化 2024 以後 |
樣本外 風險報酬比 | 換手率 |
|---|---|---|---|---|
| 看 5 天 | -6.4% | +23.6% | 1.12 | 94% |
| 看 20 天 | +5.5% | +47.0% | 2.85 | 92% |
| 看 60 天 樣本內最好 | +20.9% | +19.6% | 1.02 | 70% |
| 看 120 天 | +13.0% | +23.9% | 1.21 | 58% |
| 看 250 天 | +9.9% | +21.6% | 1.12 | 47% |
在挑因子的當下(只看得到樣本內),我們會挑「看 60 天」,因為它的樣本內成績最好。 但把時間往後推,樣本外表現最好的其實是另一個版本。
這不是我們的引擎有問題,這就是現實。如果一個平台的每個因子 在樣本外都很漂亮,那它多半在用某種方式偷看答案。
3看被挑中的那個表現如何
我們照規矩來:只用樣本內挑,然後誠實報告樣本外。 被挑中的是「看 60 天」。
看得出來樣本外那一段(灰底)並沒有比樣本內漂亮。 這是健康的樣子。如果樣本外反而比樣本內好很多,通常代表哪裡算錯了。
4做健康檢查:十等分圖
把全市場依這個因子排名切成十等分,看每一等分的年化報酬。 如果這張圖大致是階梯狀,代表排名真的有意義; 如果高高低低沒規律,那前 10% 賺錢可能只是碰巧。
5把交易成本加回去
上面所有數字都沒有扣交易成本。台股賣出要付 0.30% 證交稅, 加上手續費與買賣價差,我們實測真實來回成本中位數約 80 bps。
這個因子每次換股要動掉 70% 的持股, 每 20 個交易日換一次。把成本扣下去:
在台股,換手率高的策略會被成本吃掉大部分報酬。 這也是為什麼我們預設月頻換股而不是日頻—— 日頻換股一年的成本大約是 200%,再好的訊號都撐不住。
6今天這個因子會挑出哪些股票
2026-06-18 收盤後產生,共約 91 檔,以下顯示前 8 檔。
| 排名 | 代號 | 名稱 | 產業 | 收盤價 |
|---|---|---|---|---|
| 1 | 5386 | 青雲 | 電腦及週邊設備業 | 345.96 |
| 2 | 6861 | 睿生光電 | 生技醫療業 | 371.00 |
| 3 | 6147 | 頎邦 | 半導體業 | 252.00 |
| 4 | 6217 | 中探針 | 電子零組件業 | 247.00 |
| 5 | 4973 | 廣穎 | 半導體業 | 193.50 |
| 6 | 2492 | 華新科 | 電子零組件業 | 558.04 |
| 7 | 2327 | 國巨* | 電子零組件業 | 1080.00 |
| 8 | 2426 | 鼎元 | 光電業 | 81.80 |
這是「符合這個條件的股票」,不是買賣建議。
7所以我們學到什麼
- 一個想法有很多版本,而且結果差很多。 同樣是「強者恆強」,五個版本的樣本內年化從 -6.4% 到 +20.9%。憑感覺挑一個數字是在賭運氣。
- 樣本內好看是必然的,樣本外才算數。 我們只用樣本內挑,然後接受樣本外給的答案,不管好不好看。
- 測得越多,門檻要越高。 這次只測了 5 個版本。如果測了幾百個,同樣的成績可信度會低很多—— 這個折扣是自動算進去的。
- 成本會改變結論。 +19.6% 扣完變成 +4.3%。任何不談成本的回測都只講了一半。