10 min read

用 Claude Code 打造台股 AI Agent:盤前自動選股、盤中盯盤、訊號到就發 Telegram

我用 Claude Code 把抓股價的腳本,升級成一隻會自己選股、盯盤、偵測訊號就發 Telegram 通知我的台股 AI Agent。盤前選股、盤中每 10 分鐘監控、收盤補資料全自動,背後是通過全市場回測的策略。完整做法分享。
用 Claude Code 打造台股 AI Agent:盤前自動選股、盤中盯盤、訊號到就發 Telegram

前陣子某個交易日的盤中,我手機震了一下。

是 Telegram,我那隻台股 bot 傳來的:

🔔 2330 台積電【波動率擠壓】
現價 1085.0 量 38,201 張
✓ 突破上軌 1078.0(現 1085.0)
✓ 成交量 38,201 張 ≥ 25,000 張
✓ 5 日動量正向

重點是——那個當下我在開會,完全沒看盤。 是它早上自己選好今天要盯的股票,盤中每 10 分鐘檢查一輪,等到某檔「該滿足的條件全部滿足」,才主動敲我。

半年前我寫過一篇 用 Claude Code + FinMind 追蹤台股,那時候它只會「抓資料、記持倉」——我問它才動。這篇要講的是它的升級版:從一個被動的資料工具,變成一隻會自己選股、盯盤、提醒我的 AI Agent。

這篇會聊這些:

  • 為什麼我要把「抓股價」升級成「自己盯盤」
  • 這隻 agent 的一天:盤前選股 → 盤中監控 → 收盤補資料
  • 它怎麼選股、又怎麼判斷盤中該不該通知我
  • 背後那套「通過全市場回測」的策略到底嚴不嚴謹
  • 怎麼用 Claude Code 做出來(我幾乎沒自己寫 code)
  • 老實話:它不會幫你下單,也不保證賺錢
關於作者:我是工程師阿穆,寫程式十多年,這幾年在做 AI Agent 與電商系統開發。台股我自己用 Google Sheet、FinMind 追蹤多年,這隻 bot 是我用 Claude Code 一路長出來、天天在跑的,本文是第一手實作紀錄。

利益揭露 & 免責:本文沒有業配、沒有聯盟連結。文中的回測數字是研究參考,回測績效不代表未來表現,更不是投資建議。我自己掏錢、自己踩坑,分享的是工程做法,不是叫你買哪檔。

為什麼要從「抓股價」升級成「自己盯盤」

前一篇那套已經很好用了:FinMind 抓台股資料、本地存 CSV、想看什麼跟 Claude Code 講一聲就好。

但用久了我發現一件事:它還是「我不開它,它就不動」。 我得自己想到「欸今天來掃一下有沒有機會」,它才會掃。盤中我在工作,根本不可能盯著螢幕看哪檔突破。

我要的其實是一個會「主動」的東西:

  • 盤前幫我把今天值得盯的股票挑出來(選股)
  • 盤中幫我盯著這些股票,到點了主動通知我(盯盤 + 訊號)
  • 收盤後自己把當天資料補好,不用我管(資料維護)

換句話說,我想把它從工具變成員工。這正是我在 自架 AI Agent 實戰系列 講的那四層——Context(它知道什麼)、能力(它能做什麼)、溝通(它怎麼通知我)、自動化(它什麼時候自己動)——全部用在這一隻上。

這隻 agent 的一天

升級後最大的差別,是我用 crontab 給了它一張作息表。它一天會自己醒來四次:

08:00 盤前 → 掃全市場、選出今天要盯的股票,算好每檔的觸發條件
09:00–13:30 盤中 → 每 10 分鐘檢查一次,條件到齊就發 Telegram
18:00 收盤後 → 補當天全市場股價
22:00 盤後 → 補三大法人、融資融券籌碼資料

對應到 crontab 大概長這樣:

# 盤前 08:00 選股,產生今天的觀察清單
0 8 * * 1-5 python3 scan.py --no-update >
data/morning_watchlist.txt

# 盤中 09–13 每 10 分鐘盯盤
*/10 9-13 * * 1-5 python3 monitor.py >>
data/monitor.log

# 收盤 18:00 補股價
0 18 * * 1-5 python3 stock_cache.py
today

# 盤後 22:00 補籌碼
0 22 * * 1-5 python3 broker_cache.py
today

這四隻腳本串起來,就是一隻完整、會自己幹活的 agent。下面拆開講。

盤前 08:00:自己選股

每天台股開盤前,scan.py 會用三個策略掃過全市場有流動性的個股,挑出今天值得盯的,存成一份「觀察清單」。三個策略分別是:

  • 波動率擠壓:股價被壓在一個很窄的區間(布林通道收斂),準備變盤的順勢策略
  • 超跌反彈:跌深之後出現止穩跡象的逆勢策略
  • AD 背離:價跌但量價背離,賣壓在減弱的量價策略

選股的同時,它還會把每檔股票「盤中要看的觸發條件」一起算好——例如擠壓股的突破價位、要配合的量能——寫進一個 watchlist_conditions.json,等盤中那隻來用。

盤中 09:00–13:30:每 10 分鐘盯盤

這是整套的核心。monitor.py 每 10 分鐘醒來一次(crontab 排的),做這幾件事:

  1. 讀早上選好的觀察清單
  2. 跟 FinMind 抓清單裡每檔的盤中即時快照(約 15 分鐘延遲,免費資料夠用)
  3. 比對每檔「早上算好的條件」現在到齊了沒

判斷邏輯依策略不同。以波動率擠壓為例,它要同時滿足:突破上軌、量能達標、5 日動量轉正——全部成立才算數。超跌反彈則要看紅K、量縮、KD 超賣;AD 背離要看創 20 日新低加上 RSI 動能轉弱。

只有「該滿足的條件全部滿足」的那檔,才會發 Telegram 給我(就是開頭那則)。接近但還沒到齊的,只默默寫進 log,不吵我。 這個設計很重要——通知如果太吵,最後你就會把它靜音,等於沒做。

收盤後 18:00 與盤後 22:00:自己補資料

收盤後 stock_cache.py 用一個 API call 把當天全市場股價補進本地 CSV;晚上 broker_cache.py 再把三大法人買賣超、融資融券這些籌碼資料補上。隔天盤前選股要用的資料,前一晚就準備好了。

整個循環就這樣咬合起來:補資料 → 盤前選股 → 盤中盯盤發訊號,天天自己跑,我不用碰。

它選的股票,憑什麼?

講到這裡你可能會想:選股策略誰都會喊,問題是準不準。

這也是我覺得這套跟「隨便接個指標」最不一樣的地方——每一個策略,都是先通過全市場回測才被放進去的。 我給這套系統定了幾條鐵則:

  • 全市場驗證:每個策略都對全部約 2,369 檔個股回測,不能只挑幾檔漂亮的來說嘴
  • 算進成本:回測一定計入手續費(0.1425%)和交易稅(賣出 0.3%),不然都是假的
  • 參數穩健性優先:如果一個策略把參數從 10 改成 20 結果就天差地別,代表它只是擬合歷史,直接捨棄
  • 群組驗證:把股票依波動率和趨勢分成 6 群,策略要在某一群「整段期間平均每筆交易有正期望值」才算數,避免「在某一檔賺很多」這種巧合

通過這套標準活下來的策略目前有 14 個。把其中三個拿來組成投資組合做回測模擬,結果是年化約 +34%、最大回撤 9.1%、Sharpe 2.58

但我得很誠實地說:這是回測數字,不是我的對帳單,更不是未來保證。 回測最大的價值不是那個漂亮的年化,而是逼我用一套有紀律的方法去篩掉「聽起來很厲害但其實沒用」的策略。我把它當研究工具,不是印鈔機。

我幾乎沒自己寫 code

跟前一篇一樣,這整套不是我一行一行刻出來的。我的角色比較像「出一張嘴」的產品經理,把需求講清楚,讓 Claude Code 去實作。

例如盤中監控那隻,我大概是這樣跟它說的:

「幫我寫一個 monitor.py,每 10 分鐘讀 watchlist_conditions.json,抓 FinMind 盤中即時報價,比對每檔的觸發條件,全部滿足就發 Telegram 通知我,接近的只寫 log。」

它就把抓資料、判斷條件、串 Telegram Bot API 這些都生出來了。我要做的是看懂它的邏輯、測一輪、告訴它哪裡要改。

如果用 自架 AI Agent 實戰系列 那四層來對照,這隻 agent 是這樣組起來的:

老實話:它不會幫你下單,也不保證賺錢

最後講清楚,免得有人期待錯方向。

這隻 agent 不會自動下單。 它做的事情到「發訊號通知我」為止——要不要進場、買多少,是我自己看了再決定。我刻意不讓它碰下單,一來是風險,二來是我也還沒那麼信任任何全自動的東西。

它真正幫我省下的,是「盯盤」這件最耗注意力的事。我不用整個早上開著看盤軟體,也不會因為在忙就錯過早上選好的那幾檔。它把我從『一直盯著螢幕』裡解放出來,但最後那個決定還是我的。

這也呼應我在系列總論講的:自架 agent 的價值不是科幻式的「它好聰明會自己賺錢」,而是它可靠、不會累、時間到了就上工,把你教它的紀律一絲不苟地執行

結語

從「抓股價的腳本」到「會自己選股、盯盤、發 Telegram 的 agent」,中間加的東西其實就是系列講的那四層:給它規則、給它記憶、接上通知、排好作息。

如果你也有「每天固定要看一輪、又很耗時間」的事——不一定是股票,可能是抓某個網站的資料、整理報表、監控某個數字——其實都能用同一套思路,養一隻 agent 幫你盯著。完整的觀念與做法,我都整理在 自架 AI Agent 實戰系列 裡。

要是你想做、但卡在「自己兜不起來」或「沒空慢慢試」,這正是我在做的事——我有提供 AI Agent 的諮詢與代建服務,幫你看怎麼設計、或直接幫你做出來。


喜歡這篇文章嗎?

📧 訂閱 Newsletter — 新文章直接寄到你信箱
🎬 追蹤我的 YouTube — 看 AI / 工具實作影片
💬 加我的 LINE — 聊聊你想做的 agent,或有問題隨時問我
🧵 追蹤 Threads — 平常的工程隨筆

掰掰~👋

想學更多?

訂閱電子報,每週收到最新的 AI 實戰教學。