FinLab

外資 vs 投信 vs 自營商:三大法人跟誰最準?

February 16, 2026

投資警語:本文僅供教學參考,不構成投資建議。過去績效不代表未來表現,投資有風險。


三大法人,到底該跟誰?

每天收盤後,財經新聞都會報導:

「外資今日買超 XX 億」 「投信連 3 日買超 OO 股」 「自營商大舉加碼 △△」

但問題是:跟著誰買,報酬率最高?

我們用 10 年回測數據,分別測試「跟著外資買」、「跟著投信買」、「跟著自營商買」的績效,一次搞清楚。


三大法人的特性

法人 資金規模 投資特性 資訊優勢
外資 最大(~兆) 被動式/全球配置 國際視野
投信 中等(~百億) 主動選股/專注台股 個股研究深
自營商 最小(~十億) 短線操作/避險 短期資訊

外資的問題

外資看似最有錢、最聰明,但:

  1. 被動資金多:很多外資是 ETF 被動買賣,不是主動選股
  2. 受國際資金影響:美股跌 → 外資撤離台股,跟台股基本面無關
  3. 大型股偏好:外資主要買台積電、鴻海等大型股

投信的優勢

  1. 專注台股:投信經理人整天研究台股
  2. 主動選股:每次買都是有研究過的決策
  3. 中小型股覆蓋:投信對中小型股的研究更深

回測設計

三組策略統一設定:

設定 數值
條件 法人 10 日累計買超 > 門檻
排序 買超金額最大的前 15 檔
回測期間 2015-2025
換股頻率 月度

策略 A:跟著外資買

買進外資 10 日累計買超最多的股票

顯示程式碼
from finlab import data
from finlab.backtest import sim
 
外資 = data.get('institutional_investors_trading_summary:外陸資買賣超股數(不含外資自營商)')
volume = data.get('price:成交股數')
vol_filter = volume.average(20) > 300 * 1000
 
外資累計 = 外資.rolling(10).sum()
cond = (外資累計 > 10000) & vol_filter
position = 外資累計[cond].is_largest(15)
 
report = sim(position.loc['2015':], resample='M', upload=False)

策略 B:跟著投信買

顯示程式碼
投信 = data.get('institutional_investors_trading_summary:投信買賣超股數')
 
投信累計 = 投信.rolling(10).sum()
cond = (投信累計 > 5000) & vol_filter
position = 投信累計[cond].is_largest(15)
 
report = sim(position.loc['2015':], resample='M', upload=False)

策略 C:跟著自營商買

顯示程式碼
自營商 = data.get('institutional_investors_trading_summary:自營商買賣超股數(自行買賣)')
 
自營商累計 = 自營商.rolling(10).sum()
cond = (自營商累計 > 5000) & vol_filter
position = 自營商累計[cond].is_largest(15)
 
report = sim(position.loc['2015':], resample='M', upload=False)

回測結果:單獨跟法人效果有限

指標 跟外資 跟投信 跟自營商
年化報酬率 12.4% 7.4% 15.0%
夏普比率 0.65 0.35 0.68
最大回撤 -36.0% -39.3% -29.5%

意外的結果:單純跟著法人買,三者績效都不算出色。 自營商竟然最高,但也才 15%。

為什麼單純跟法人效果有限?

  1. 買超 ≠ 看好:法人買超可能是被動買入、避險需求、或 ETF 申贖
  2. 訊號太粗糙:只看買超量,沒有過濾基本面好壞
  3. 跟風成本:法人資訊公開延遲,散戶跟進時股價已反映

關鍵洞察:法人只是「第一道篩選」

法人買超告訴你「專業機構在注意這檔股票」,但還需要第二道篩選確認:公司營收是否真的在成長?

想建立自己的策略?

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

免費開始