開盤前要看哪些股票?這一篇記錄 Claude 做出的四個盤前工具、用真實資料跑出的早報
跟著 Claude 把美股當沖 skill 改成台股版・第 6 篇
盤前準備:用掃描、新聞、月營收與籌碼,做一份自己的早報
第一階段做完了「怎麼停損、買幾張、能不能做」。第二階段往前一步:開盤前要看哪些股票?這一篇記錄 Claude 做出的四個盤前工具、用真實資料跑出的早報,以及兩個只有實際連線才抓得到的錯誤。
1. 這一篇會做什麼
原版 day-trader-skill 在交易前有三個步驟:掃描找標的、看新聞、讀財報,另外還有一個追蹤美國國會議員交易的工具。台股版第二階段把它們全部改寫,串成一份「開盤前的早報」:
- 掃描tw-scanner
- 新聞tw-news
- 基本面tw-analyst
- 籌碼tw-chips
- 停損停利第 4 篇
- 風控第 5 篇
小辭典
- 日 K
- 一天一根的 K 線,有開盤、最高、最低、收盤價和成交量。盤前掃描用的是前一天收盤後的日 K。
- 成交值
- 成交金額。台股當沖重視成交值:成交值太小,進出容易滑價。
- RSI
- 相對強弱指標,0~100。低於 30 通常稱為「超賣」,代表近期跌得多。
- 月營收
- 台灣上市櫃公司每月 10 日前公布上個月營收,比季報即時得多,美股沒有這種資料。
- 三大法人
- 外資、投信、自營商。每天盤後公布各股的買賣超。
- 當沖比例
- 當沖成交量占總成交量的比例。越高,代表盤中短線資金越多、來回越大。
2. 開發指令與兩個決定
我對 Claude 說的話很簡短:
開始開發第二階段(盤前準備):掃描、新聞、財報,以及取代議員交易追蹤的籌碼工具。
資料一律用 FinMind。每個工具都要有用真實資料片段做的自動測試,做完再實際連線跑一次。
開發前,Claude 先查了每個 FinMind 資料集的實際格式與限制,過程中做了兩個決定:
決定 1
議員交易追蹤 → 籌碼
美國國會議員的交易申報在台股沒有對應資料。但台股每天盤後都公布三大法人、融資融券、當沖量,這些「誰在買賣」的紀錄對當沖更有參考價值。
決定 2
財報 → 加上月營收
原版只讀美國的季報。台股有每月公布的營收,是最即時的基本面數字,一定要放進來。
最後一句「做完再實際連線跑一次」後來證明很重要,第 7 節會說明。
3. 掃描:從 1,950 檔到 121 檔
先決定「掃哪些股票」
FinMind 的股票清單有 4,000 多筆,包含 ETF、興櫃、存託憑證,還有同一檔股票列在好幾個產業。Claude 整理的規則:
| 條件 | 理由 |
|---|---|
| 只收上市、上櫃的 4 位數普通股 | 興櫃沒有漲跌幅限制、不能當沖 |
| 排除 ETF(可另外開啟)、存託憑證、創新板 | 型態和流動性跟一般股票不同;創新板有投資人資格限制 |
| 只用最新日期的資料 | 舊日期的資料多半是已下市或改過類別 |
| 一檔多個產業時用細類 | 例如友達顯示「光電業」,而不是籠統的「電子工業」 |
結果是 1,950 檔(上市 1,055、上櫃 895)。
掃什麼型態
| 型態 | 規則 |
|---|---|
| 突破 20 日高點 | 收盤高於前 20 個交易日的最高價 |
| 多頭旗形 | 先漲超過 10%,最近 5 天在 5% 區間內整理 |
| 站回 20 日均線 | 前一天在月線下,今天收在月線上 |
| 超賣/超賣反彈 | RSI 低於 30/前一天超賣、今天收漲 |
| 量增(台股版新增) | 成交量達前 20 日平均的 2 倍以上 |
另外兩個台股版的處理:流動性看 20 日平均成交值(預設至少 1 億元、股價至少 10 元);收漲停會特別標出來,因為隔天常跳空開高,開盤區間會很寬甚至直接鎖住。處置股則預設排除。
資料量的問題
FinMind 有兩種抓法:逐檔查(免費),或一次抓一天的全市場(Backer 方案)。一天的全市場資料有 56,354 筆、約 9 MB,因為連權證都在裡面。Claude 的做法是只留下普通股與 ETF,並把每一天的資料存起來,過去的日子不再重抓:
| 情況 | 耗時 |
|---|---|
| 第一次掃描(下載 40 個交易日) | 136 秒,存下約 18 MB |
| 之後每次掃描 | 約 1 秒(每天只補抓新的一天) |
實際結果(資料日 2026-11-13)
掃描 1950 檔:當日無資料或停牌 6、資料不足 0、流動性不足 1445(股價 < 10 或 20 日均成交值 < 100,000,000 元)。
121 檔符合至少一個型態(依 20 日均成交值排序):
2330 台積電 2350(+0.43%) 均成交值 928.1 億 站回 20 日均線(RSI 49.6)
2454 聯發科 4120(+7.01%) 均成交值 482.3 億 站回 20 日均線(RSI 51.7)
3443 創意 8610(+9.54%) 均成交值 194.0 億 突破 20 日高點(RSI 62.6)
1802 台玻 85.1(+4.16%) 均成交值 133.4 億 突破 20 日高點、量增(2 倍以上)(RSI 72.6)
3374 精材 519(+9.96%) 均成交值 68.2 億 突破 20 日高點(收漲停,RSI 61.3)
2382 廣達 276.5(-0.72%) 均成交值 45.2 億 超賣(RSI < 30)(RSI 25.2)
……
這是「符合規則的清單」,不是買進建議。
1,950 檔裡有 1,445 檔因為流動性不足被排除,這就是當沖只能挑「有量」股票的現實。接下來,我拿清單裡的 3374 精材(突破+收漲停)示範後面三個工具。這只是示範,不是推薦。
4. 新聞:時間是 UTC,而且混了很多論壇
寫新聞工具時,Claude 有兩個發現。
發現 1:新聞的時間不是台北時間
Claude 的回報
FinMind 新聞的時間應該是 UTC(世界標準時間)。證據:「外資 13 日賣超前十大」這種盤後才會有的新聞,原始時間是 08:21;「台股收漲 583 點」的收盤快訊,原始時間是 05:36。只有加 8 小時(台北 16:21、13:36)才合理。工具會自動換算成台北時間。
如果沒發現這件事,所有新聞都會差 8 小時,「盤前的新聞」會被當成「昨天半夜的新聞」。
發現 2:一大半是論壇貼文
FinMind 的新聞裡混了大量 CMoney「股市爆料同學會」的論壇貼文,以及「個股概覽」這類資訊頁。以友達、台積電兩檔為例,30 小時內有 123 則是論壇或資訊頁,真正的新聞只有 21 則。工具預設把它們隱藏,並告訴你藏了幾則。
3374 的新聞
3374 前一交易日(2026-11-13)收 519,+9.96% 波動大
!11-14 06:12 3374 【即時新聞】精材簽台積電產能外包協議,擬發百億可轉債建置產線
11-14 05:30 3374 飆股幕後》台積電擴大委外 精材股價本週狂飆38%(自由財經)
11-14 03:00 3374 台積擴大委外 精材搶進CoWoS(工商時報)
11-14 01:52 3374 精材牽緊台積簽產能外包協議 衝先進封裝(UDN)
「!」代表可能影響股價的消息類型:財報、營收、除權息、增資減資(這則是可轉債)、處置、併購。工具也提醒:標題只是線索,判斷前要點開原文或公司公告確認。
5. 基本面:台股才有的月營收
基本面工具把三種資料排在一起:最新月營收、最近 5 季財報、近期除權息。
【3374】
月營收 2026 年 10 月:9.9 億,月增 +6.1%、年增 +39.0%;今年累計 77.9 億,年增 +32.4%(創 12 個月新高)
季別 營收 毛利率 營益率 淨利率 EPS (去年同季 EPS/營收年增)
2026Q1 19.1 億 29.7% 23.6% 20.1% 1.42 (1.26/+23.8%)
2026Q2 21.8 億 27.7% 22.3% 18.1% 1.46 (0.24/+42.1%)
2026Q3 27.0 億 32.9% 28.0% 22.6% 2.25 (1.59/+29.3%)
近四季 EPS 合計 7.03
最近一次除息:2026-06-24(2.5 元)
對當沖來說,最需要注意的是除權息:除權息當天參考價會調整,技術型態會失真,前後幾天也常被暫停先賣後買。工具會把 60 天內的除權息日標成「!」提醒。
一個實際連線才發現的小問題
第一次跑精材時,淨利率那欄是空白。原因是精材沒有子公司,財報裡沒有「歸屬母公司淨利」這一項。Claude 改成:沒有這一項時,改用「本期淨利」計算,並補上測試。
6. 籌碼:取代美國議員交易追蹤
【3374】籌碼(2026-11-02 ~ 2026-11-13,單位:張)
外資 近 10 日合計 1,121,最新一天 1,120,連買 2 天
投信 近 10 日合計 5,最新一天 0,最新一天持平
自營商 近 10 日合計 -128,最新一天 87,連買 1 天
融資餘額 21,147 張(期間 -9079,最新一天 -639);融券餘額 558 張(期間 -838);券資比 2.6%
當沖比例 最新 37.0%(2026-11-13),近 3 日平均 49.5%
新聞和籌碼可以互相驗證
友達(2409)11 月 13 日有一則新聞「外資 13 日賣超前十大……友達再賣萬張」。籌碼工具算出的外資最新一天是 −14,666 張,兩邊對得上。同一天友達的當沖比例是 65.9%,工具標成「偏高:盤中波動大,突破容易被洗」。
單位差 1,000 倍的陷阱
FinMind 的三大法人資料單位是「股」,融資融券的單位卻已經是「張」。兩者混用,數字會差 1,000 倍。工具統一換算成張,測試裡也用真實數字核對:83,771,719 股買進 − 98,437,805 股賣出 = −14,666 張。
籌碼是盤後公布的歷史紀錄,不代表明天的走勢。工具不會說「外資買超所以會漲」,只告訴你最近是誰在買賣。
7. 離線測試全過,連線才發現的錯
這一階段 Claude 寫了 21 個新測試,用 FinMind 的真實資料片段,全部通過。但我要求的最後一步「實際連線跑一次」,第一次就失敗了:
股票清單 0 檔(上市 0、上櫃 0),資料日 None,已寫入 trader/universe.json。
Claude 的回報
FinMind 的股票清單裡,有些資料的日期是空的。程式用「最新日期」挑資料時,空值被轉成文字 “None”,而 “N” 在排序上比 “2” 大,所以 “None” 被當成最新的日期,結果一檔都沒選到。測試用的資料片段剛好沒有這種空值,所以測不出來。已修正:只採用格式正確的日期,並把這個情況加進測試。
修正後重跑,股票清單是 1,950 檔,一切正常。這個經驗很值得記下來:
- 測試資料再真實,也只是片段。它涵蓋不了所有怪資料。
- 做完一定要用真的資料、真的連線跑一次。這次一共抓到兩個問題(日期空值、精材淨利率空白)。
- 每修一個錯,就補一個測試。同樣的錯以後不會再發生。
8. 把四份資料放在一起讀
以 3374 為例,四個工具給的資訊整理如下(這是讀資料的方式,不是買賣建議):
| 來源 | 事實 | 對當沖的意義 |
|---|---|---|
| 掃描 | 突破 20 日高點、收漲停、20 日均成交值 68 億 | 流動性夠;但隔天可能跳空開高,開盤區間會很寬 |
| 新聞 | 與台積電簽產能外包協議,擬發百億可轉債 | 有明確消息;要讀原文確認,消息面可能放大波動 |
| 基本面 | 10 月營收年增 39%、創 12 個月新高;近期無除權息 | 沒有除權息造成的參考價調整 |
| 籌碼 | 外資連買 2 天;融資減少;當沖比例 37%(近 3 日平均 49.5%) | 短線資金不少,盤中可能來回大 |
早報的目的不是告訴你「買哪一檔」,而是讓你在開盤前就知道:這檔股票明天可能面對什麼。決定要不要做、怎麼停損、買幾張,交給第 4、5 篇的工具和你自己的規則。
9. 這一步學到的事
01
先懂資料,再寫程式
時間是 UTC、論壇混在新聞裡、單位差 1,000 倍,都是先查清楚資料格式才發現的。
02
移植要換成在地資料
議員交易換成籌碼、季報加上月營收,工具才真正適合台股。
03
一定要真的連線跑一次
離線測試全過,連線還是抓到兩個錯。
04
資料可以互相驗證
新聞說外資賣萬張,籌碼算出 −14,666 張,對得上才放心。
你可以照著說的話
不需要台股版程式,也能請 Claude 幫你做早報(記得在問題裡講明「用 FinMind 資料」):
用 FinMind 資料幫我做盤前早報:2409、3374 這兩檔前一交易日的漲跌幅、過去 24 小時的新聞(換成台北時間,排除論壇貼文)、最新月營收的年增率,以及近 10 日三大法人買賣超(換算成張)。
用 FinMind 的日 K,幫我檢查這幾檔有沒有「收盤突破前 20 日最高價」或「成交量達 20 日均量 2 倍」,並列出 20 日平均成交值。
查一下 3374 未來 60 天內有沒有除權息?如果有,對當沖有什麼影響?
FinMind 新聞的時間是 UTC 還是台北時間?請找證據判斷,不要直接假設。
這則新聞說外資賣超某檔股票,請用 FinMind 的三大法人資料核對數字對不對得上。
常見問題
沒有 Backer 方案可以掃描嗎?
可以,但只能逐檔查(例如給它你自己的觀察清單),不能一次掃全市場。新聞、月營收、財報、除權息、三大法人、融資融券、當沖量都是免費資料。處置股的排除需要 Backer,沒有時只會警告。
掃描出來的股票可以直接買嗎?
不行。掃描只是「符合規則的清單」,型態也不是預測。還要看新聞、基本面、籌碼,再經過停損停利、張數計算和風控。
為什麼要排除流動性不足的股票?
成交值太小的股票,掛單少、價差大,當沖進出容易滑價,停損也可能賣不到想要的價格。
新聞工具會幫我判斷利多利空嗎?
不會。它只做整理和標籤,判斷要點開原文自己看。標題常常誇大,論壇貼文更不能當成事實。
台股版的程式可以下載嗎?
台股版還在開發中,暫不提供下載。等整個系列完成後,我會整理好放上 GitHub,並詳細說明安裝與使用方式。在那之前,可以用上面「照著說的話」請 Claude 用 FinMind 資料幫你整理。
進階:給習慣終端機的讀者
四個工具的主要指令:
python "$R/tw-scanner/scan.py" universe # -> trader/universe.json
python "$R/tw-scanner/scan.py" daily # 全市場(Backer)-> trader/watchlist.json
python "$R/tw-scanner/scan.py" daily --symbols 2409,3374 # 逐檔(免費)
python "$R/tw-news/news.py" --tickers 3374 --hours 24
python "$R/tw-analyst/facts.py" 3374 --write # -> trader/metrics.json
python "$R/tw-chips/chips.py" 3374 --days 10 --write # -> trader/chips.json
資料集:TaiwanStockInfo、TaiwanStockPrice、TaiwanStockNews(一次一檔一天)、TaiwanStockMonthRevenue、TaiwanStockFinancialStatements、TaiwanStockDividend、TaiwanStockInstitutionalInvestorsBuySell(股)、TaiwanStockMarginPurchaseShortSale(張)、TaiwanStockDayTrading、TaiwanStockDispositionSecuritiesPeriod(Backer)。全市場日 K 快取在 trader/state/tw_cache/market/。
下一篇預告
盤前知道要看哪些股票之後,下一步是盤中:開盤後 15 分鐘的區間怎麼算、什麼時候才算真正突破、台股 09:00 的集合競價對第一根 K 棒有什麼影響。這一段需要分鐘 K 線(FinMind Sponsor 方案),開發完成後再繼續寫。
本文僅為軟體工具教學與開發經驗分享,不構成任何投資建議。文中個股僅用於示範工具輸出,不代表買賣建議。當沖風險極高,請自行評估並為自己的交易決策負責。資料與方案以撰文時為準,請以 FinMind 與各官方最新資訊為依據。









