FinLab

用 Claude/GPT 寫出台股回測策略:從提示到績效報告

February 21, 2026

用 Claude/GPT 寫出台股回測策略:從提示到績效報告

不會寫程式也能回測台股策略?2026 年,你需要學的不是 Python,而是怎麼跟 AI 說話。


前言:一個不會寫程式的人,做出了年化 50% 的策略

先看一組數據:

策略 年化報酬 最大回撤 開發方式
傳統量化(低 PE + 高 ROE) 6.60% -49.74% 手寫 Python
AI 多因子選股 8.20% -63.38% 一段 Prompt
AI 三輪迭代(動能 + 品質) 12.48% -41.29% 三輪 Prompt 對話
0050 買入持有 13.02% -55.75% 什麼都不做
Ralph Loop 8 輪優化 50.47% -42.28% 系統化 AI 迭代

(來源:finlab AI 研究,實際回測數據)

你沒看錯。一個不會寫任何程式碼的人,靠跟 AI 系統化對話 8 輪,就做出了一個:

  • 年化報酬 50.47%(是 0050 的 3.9 倍
  • 最大回撤 -42.28%(比 0050 的 -55.75% 好了 13%)

從第一版的 12.48% 到最終的 50.47%,報酬率翻了 4 倍

關鍵不在於第一次就對,而是你有沒有一套系統化的迭代方法

但是...事情沒有這麼簡單。

你看到第一行了嗎?「傳統量化策略」只有 6.60% 的年化報酬,連 0050 都打不過。這代表什麼?

不是用了 AI 就自動賺錢。關鍵是你怎麼跟 AI 對話。

今天這篇文章,我要手把手帶你走過這整個過程——從第一句 Prompt 開始,到最終拿到一份完整的績效報告。

不需要任何程式基礎。你只需要會打字。


Ch.1:為什麼 2026 年要學 Prompt,而不是學 Python?

AI 時代的典範轉移

2026 年,投資界正在發生一場安靜的革命。

根據台灣證交所數據,2025 年台股程式交易佔總成交比重已突破 30%,較三年前翻了一倍。而在台灣最大投資社群 PTT Stock 板,「AI 選股」相關討論量 2025 年較前一年成長 300%

量化交易:用數學模型和電腦程式來分析市場、做出交易決策的方式。過去這是華爾街專利,現在 AI 讓每個人都能做到。

但有趣的是,大部分台股投資人還在糾結一個問題:「我要不要學 Python?」

這就像 2010 年有人問:「我要不要學 HTML 才能上網?」

答案是不用。 就像你不需要學 HTML 就能用 Google,你也不需要學 Python 就能做量化投資。

Prompt 就是新時代的程式語言

想像一下這個場景:

傳統做法(需要程式能力):

顯示程式碼
# 你需要寫這種程式碼
from finlab import data
pe = data.get("price_earning_ratio:本益比")
roe = data.get("fundamental_features:ROE稅後")
position = (pe > 0) & (pe < 15) & (roe > 10)
report = sim(position, resample='M')

AI 時代的做法(只需要 Prompt):

「幫我找出本益比 15 以下、ROE 大於 10% 的股票,然後回測看看績效如何。」

結果完全一樣。 但第二種方法,你只花了 10 秒鐘。

點菜的藝術

好葉有個很棒的比喻:

Prompt 就像點菜。 AI 是你的私人大廚,finlab 是他的食材庫。你不需要知道怎麼切菜、怎麼開火,你只需要說清楚你想吃什麼。

概念 生活化比喻 說明
Prompt 點菜 越具體,AI 做得越好
回測 時光機實驗 回到過去驗證你的投資想法
年化報酬 年利率 平均每年賺多少 %
最大回撤 最痛的時刻 你的策略最慘會虧多少 %
過度擬合 考古題投機客 只會解歷史題,遇到新題目就廢了
交易成本 隱形殺手 手續費 + 滑價,偷偷吃掉你的報酬

好了,理論講夠了。讓我們開始實戰。


Ch.2:第一次對話 — 選股條件設計

你的第一句 Prompt

大部分人跟 AI 對話時犯的第一個錯誤是:太模糊

❌ 錯誤示範:「幫我選一些好股票」

這就像走進餐廳說「給我一些好吃的」。你會得到什麼?可能是一碗泡麵。

✅ 正確示範:「幫我找本益比低於 15、ROE 大於 10% 的股票」

這就像說「我要一份不要太辣的宮保雞丁,飯少一點」。具體!

實戰 Prompt #1:基礎選股


💬 你對 AI 說:

幫我找出符合以下條件的台股:

  1. 本益比(PE)在 0 到 15 之間
  2. ROE(股東權益報酬率)大於 10% 然後用這些條件回測看看,從 2013 年到現在,這樣選股的績效如何。

🤖 AI 回覆:

我幫你用這兩個條件篩選並回測了。以下是結果:

策略:低本益比 + 高 ROE

指標 數值
年化報酬率 (CAGR) 6.60%
最大回撤 (MDD) -49.74%

嗯...年化只有 6.6%,而且最大回撤接近 50%。 相比之下,0050 的年化報酬是 13.02%。 看起來這個簡單的「低 PE + 高 ROE」策略,打不過大盤

📌 以上回測結果已包含 finlab 預設交易成本(手續費 0.1425% + 證交稅 0.3%),但未計入滑價成本。

(來源:finlab 實際回測數據)


畫出低PE+高ROE策略 vs 0050 從 2013 年到 2025 年的累積報酬曲線比較圖

顯示程式碼
from finlab import data
from finlab.backtest import sim
 
pe = data.get("price_earning_ratio:本益比")
roe = data.get("fundamental_features:ROE稅後")
position = (pe > 0) & (pe < 15) & (roe > 10)
report = sim(position, resample='M', name='低PE+高ROE策略')
report.display()

基礎選股策略 vs 0050 績效比較

圖 1:第一版策略(藍色)vs 0050(灰色)。數據會說話——簡單的條件篩選不夠用。

等一下,這不是說 AI 很厲害嗎?怎麼第一次就輸了?

這正是重點。AI 不是魔法水晶球。 它是一個工具,結果取決於你怎麼使用它。

就像一把好刀,在大廚手裡能做出米其林料理,在路人手裡可能只能切水果。

問題出在哪?讓我們進入第二次對話。


Ch.3:第二次對話 — 分析失敗原因 + 加入更多因子

為什麼第一版策略會失敗?

你得學會跟 AI 「追問」——這是 Prompt 的進階技巧。

實戰 Prompt #2:分析失敗原因


💬 你對 AI 說:

上一個策略只有 6.6% 的年化報酬,輸給 0050。幫我分析可能的原因,然後改進策略。

我想試試:

  1. 在低 PE + 高 ROE 的基礎上
  2. 加入「營收年增率大於 0%」的條件
  3. 加入「股價在 120 日均線之上」的趨勢確認

這樣可以避免買到正在衰退的便宜股嗎?

🤖 AI 回覆:

你的直覺很對!「低 PE + 高 ROE」的問題可能是:

  1. 價值陷阱:PE 低不代表便宜,可能是公司在衰退
  2. 缺乏趨勢確認:買了便宜股但股價一直跌

加入你建議的條件後,回測結果:

策略:低 PE + 高 ROE + 營收成長 + 趨勢確認

指標 原始策略 改進策略 變化
年化報酬 6.60% 8.20% +1.6%
最大回撤 -49.74% -63.38% -13.6% ⚠️

報酬提升了一點,但最大回撤反而惡化了! 問題可能是條件太多,選到的股票太少,集中度過高。

📌 回測已含手續費與證交稅。條件篩選型策略的隱性風險:選股數量不穩定,某些月份可能只剩 3-5 檔,集中度暴增。

(來源:finlab 實際回測數據)


看到了嗎?加了更多條件,報酬提升,但風險反而更大了。

你覺得問題出在哪? 提示:想想「分散投資」這個概念。

(答案在下一段揭曉)

關鍵洞察:選股邏輯的根本轉變

問題不在於「加更多條件」,而在於選股的邏輯方式

傳統做法是「篩選」——設定門檻,符合就選、不符合就淘汰。

但更好的做法是「排名」——不問「符不符合標準」,而是問「誰最好」。

這是一個微妙但關鍵的差異:

做法 邏輯 風險
門檻篩選 PE < 15 且 ROE > 10% 可能選太少或太多
排名選股 從品質好的股票中選動能最強的 持股數可控

想建立自己的策略?

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

免費開始