跳至主要內容
台股研究 約 6 分鐘閱讀

低波動選股有效嗎?台股 18 年實測:純低波輸 0050,
優化版年化 33%

用 finlab 實測台股 2008–2026:每月選波動率最低的 30 檔年化 4.9%,最高的 30 檔年化 -5.1%、回撤 -90%,低波動異象確實成立。但純低波動年化只有 4.9%,其實輸給含息 0050 的 14.8%。真正有用的是改選風險調整報酬最高的股票,加上品質與動能後年化 33.3%、日夏普 1.13、回撤收斂到 -38%。

烏龜贏兔子 CAGR 33.3% Sharpe 1.13

低波動異象台股 18 年實測:純低波動年化 4.9%、純高波動 -5.1%、風險調整優化版 33.3%、含息 0050 為 14.8%,並比較最大回撤

「想要高報酬,就要承擔高風險。」這是每本教科書都寫的鐵律。但把它拿到台股實測 18 年,結果並不成立。

結論先講三件事。第一,低波動異象在台股確實存在:每月買波動率最低的 30 檔股票年化 4.9%,買最高的 30 檔反而年化 -5.1%、最大回撤高達 -90%。第二,但純低波動年化只有 4.9%,其實是輸給含息 0050 的 14.8% 的,光是「買得穩」並不會贏過大盤。第三,真正有用的做法是改選「風險調整報酬」最高的股票,再加上品質與動能篩選,年化拉到 33.3%、日夏普 1.13、回撤收斂到 -38%,這時候才真正勝過 0050。

真實回測結果

下表是同一段視窗(2008-01 至 2026-06)、同一組成本設定(手續費 0.1425%、證交稅 0.3%)下的實測,含息 0050 基準採 etl:adj_close 還原股價買進持有。

策略 年化報酬率 日夏普 最大回撤 總報酬率
純低波動(最低 30 檔,月換股) 4.9% 0.45 -42.3% 140%
純高波動(最高 30 檔,月換股) -5.1% -0.09 -89.9% -62%
風險調整報酬(前 15,季換股) 22.1% 0.78 -59.2% 3711%
風險調整優化版(最終) 33.3% 1.13 -38.2% 3765%
含息 0050 買進持有 14.8% 0.74 -52.4% 1181%

低波動異象:低波動贏高波動

Ang et al. (2006) 發現一個違反直覺的現象:波動率高的股票,未來報酬反而更差,這被稱為低波動異象,存在於全球多數市場。我們用 finlab 在台股驗證:

  • 低波動組:每月選過去 60 天波動率最低的 30 檔。
  • 高波動組:每月選過去 60 天波動率最高的 30 檔。

18 年下來,低波動組年化 4.9%、高波動組年化 -5.1%,差距 10 個百分點。回撤的差距更可怕:低波動最大回撤 -42%,高波動 -90%,意思是在最高點買進高波動組,最慘時帳上只剩一成本金。

純低波動、純高波動、風險調整優化版與含息 0050 的對數淨值曲線,高波動長期幾乎歸零,低波動穩穩累積

為什麼高波動股票報酬反而差

幾個行為金融學的解釋已被廣泛討論:

  • 彩票效應:投資人偏好「類彩票」的高波動股票,願意為小機率的大獲利付出溢價,把高波動股的價格推高、未來報酬壓低。
  • 機構限制Baker, Bradley & Wurgler (2011) 指出,基金經理要跟大盤比績效,傾向追逐高 beta 股票,使低波動股長期被低估。
  • 過度自信:投資人高估自己駕馭高波動股的能力,結果實際表現不如預期。

用一個比喻:高波動股像賽車場上油門踩到底的車手,看起來最快,卻最常在彎道撞車;低波動股像穩穩開的車手,單圈不亮眼,卻更常完賽。長期累積下來,少犯大錯的那一方反而跑得更遠。這就是為什麼回撤 -90% 的高波動組,18 年後幾乎血本無歸,而回撤只有 -42% 的低波動組還能維持正報酬。

但純低波動其實輸給大盤

低波動異象是「低波動贏高波動」,很多人就此以為「買低波動股票就對了」。實測打破了這個誤會:純低波動年化只有 4.9%,日夏普 0.45,這兩個數字都低於含息 0050(年化 14.8%、日夏普 0.74)。換句話說,純低波動買的是一籃債券型 ETF、特別股和穩定傳產,波動小、回撤淺,但報酬也被磨平了,長期跑不贏直接買 0050。

純低波動、純高波動、風險調整優化版與含息 0050 在報酬與回撤地圖上的位置,高波動落在高風險低報酬的右下角

所以低波動真正的用法,是把波動率當成分母,去找每單位風險換到最多報酬的股票,而不是只挑波動最低的那一批。

實測篩出的純低波動標的,多半集中在幾類資產:債券型 ETF(本質就是穩定資產)、金融特別股(配息穩定、價格波動小)、營收不太受景氣影響的傳產,以及高股息 ETF。它們的共同點是波動小、配息穩,但也因為「太無聊」、缺乏成長動能,長期報酬被磨得很平。這正是純低波動跑不贏 0050 的原因:你買到的是一籃防禦性資產,守得住、卻攻不出去。低波動異象告訴我們高波動是陷阱,但它沒說「最低波動」就是最好的選擇。

風險調整報酬優化版

把選股標準從「波動率最低」換成「風險調整報酬最高」(個股 6 個月報酬除以 6 個月波動率),再加上品質與動能把關,結果完全不同。下面是核心程式碼,登入後可重跑:

顯示程式碼
import finlab
from finlab import data
from finlab.backtest import sim
 
finlab.login()  # finlab 會自動引導登入
 
adj = data.get("etl:adj_close")
roe = data.get("fundamental_features:ROE稅後")
yoy = data.get("monthly_revenue:去年同月增減(%)")
 
ret = adj.pct_change()
ret6m = adj.pct_change(120)
vol120 = ret.rolling(120).std()
mom_3m = adj.pct_change(60)
 
# 風險調整報酬 = 6 月報酬 / 6 月波動
risk_adj = ret6m / vol120
# 品質與動能把關:ROE>5、營收年增 > 0、3 月與 6 月動能都為正
pool = (roe > 5) & (yoy > 0) & (mom_3m > 0) & (ret6m > 0)
 
position = risk_adj[pool].is_largest(15)
report = sim(position, resample="Q", fee_ratio=0.001425, tax_ratio=0.003)
report.display()

這個版本年化 33.3%、日夏普 1.13、月索提諾 2.52、最大回撤 -38.2%,平均持有約 15 檔。和純低波動相比,報酬從 4.9% 拉到 33.3%,回撤反而從 -42% 略為收斂到 -38%。關鍵在於「報酬除以波動」這個比值同時獎勵高報酬與低風險,比單看波動率更貼近實際想要的東西。

要提醒的是,這個優化版其實已經偏離了「純低波動」的初衷:它的目標是風險調整後報酬最高,而非波動最低,因此持股裡會出現一些波動中等、但趨勢與基本面都強的成長股。這也呼應我們在其他因子上看到的同一個規律:單一因子,不管是純動能還是純低波動,往往打不過大盤,要靠多個條件互補,才能在報酬與風險之間取得划算的平衡。如果你想要抱得住、又不想長期落後 0050,這種風險調整加品質、動能的組合,會比單純買最穩的股票更值得參考。

純低波動、純高波動、風險調整優化版與含息 0050 的回撤曲線,高波動組曾回撤逾 90%

互動式回測報告

下面是風險調整優化版的完整互動式回測報告,可自己看每一年的報酬、持股與交易明細,資料來源為 finlab 套件實跑:

方法揭露與風險

  • 交易成本與稅:回測已內含手續費 0.1425%(雙邊)與證交稅 0.3%。優化版用季度換股,周轉與成本都比月換股低。
  • 前視偏誤的處理:ROE 來自 finlab 已對齊公布日的 fundamental_features,營收年增使用月營收資料,季度換股讓進場落在財報與營收公布之後。
  • 集中度與回撤:優化版只持有約 15 檔,且風險調整報酬高的常是中小型成長股,單一個股影響大;即使是優化版,最大回撤仍有 -38%。
  • 牛市落後與因子擁擠:低波動或穩健類策略在大牛市可能跑輸大盤,且當太多人使用同一因子,溢酬會被稀釋。
  • 樣本內結果:本文是單一視窗(2008–2026)的回測,未做樣本外切割(in_sample_only)。「純低波輸大盤、要改用風險調整報酬」是對這段資料的觀察,過去績效不代表未來。

想看把低波動和其他因子組合的版本,可延伸看多因子選股打敗 0050,那裡把低波動當成四個因子之一。

常見問題

低波動選股有效嗎?

要看你怎麼定義有效。低波動異象成立(低波動年化 4.9% 贏過高波動的 -5.1%、回撤也淺很多),但純低波動年化 4.9% 是輸給含息 0050 的 14.8% 的。把選股標準改成風險調整報酬並加上品質與動能後,年化 33.3%、日夏普 1.13,才真正勝過大盤。

台股低波動股票有哪些?

實測篩出的低波動標的多集中在債券型 ETF、金融特別股、配息穩定的傳產與高股息 ETF。它們的共同點是價格波動小、配息穩,但也因此報酬有限。

低波動和高股息 ETF 一樣嗎?

不完全一樣。高股息 ETF 通常波動較低,但低波動選股是用波動率高低來排序,標的可能包含特別股、債券型 ETF 等非高股息資產。兩者重疊但不相等。

為什麼不直接買波動最低的股票?

因為實測顯示純低波動長期跑不贏 0050。波動最低的標的報酬也被磨平。改用「報酬除以波動」這個比值,同時要求報酬與穩定,效果好得多。

延伸閱讀

自己重跑

本文所有數字都可下載自行重現,與互動式報告同口徑:

檔案 內容
strategy.py 低波動異象與風險調整優化版的完整程式
data.csv 四種策略的淨值序列
report_strategy.html 風險調整優化版互動式回測報告
report_baseline.html 純低波動版互動式回測報告

想用最新資料即時重算、或換成自己的條件,[用 AI 輔助流程安裝 FinLab](

免費試用

用 AI 開始 FinLab

把這句話交給你的AI,它會帶你完成設定並做出第一個策略。

告訴你的AI:

幫我設定 FinLab,重現這篇文章,請讀:https://finlab.finance/setup?relatedUrl=/blog/low-volatility-strategy

)後就能直接跑。


本文由 FinLab 研究團隊撰寫,所有回測以 finlab 套件實跑、資料來源為 finlab 台股資料庫,數字可用上方下載檔自行重現。內容僅供教學與研究參考,不構成投資建議。過去績效不代表未來表現,本文策略最大回撤可能超過 38%,投資前請依個人風險承受度審慎評估。

FinLab AI

想建立自己的策略?

用自然語言描述你的選股想法,AI 自動驗證、回測、給你答案

免費開始

更多風險與資產配置研究

查看全部