# 今年我買了一套很貴的美股資料,然後找到這份公開的 > 介紹一份公開的美股歷史資料:日線股價、法說會逐字稿、財務三表、公司新聞,而且下市公司的歷史都留著。一個付費用戶的實測心得,附開始使用的方法與一個該注意的地方。教育與方法論用途。 Published: 2026-09-04 Locale: zh-TW Tags: data, backtest, education, methodology TL;DR: 公開取得、每天更新、下市公司都留著。用之前先知道它的假設是什麼。 ![今年我買了一套很貴的美股資料,然後找到這份公開的](/covers/free-us-stock-data-dividend-trap.png) > *事莫明於有效,論莫定於有證。*
> —— 王充《論衡・薄葬》(東漢,約 1 世紀) 想自己做點美股研究的人,第一關通常卡在資料。 公開的來源大多只給最近幾年、只給還在交易的公司,或者查個幾十次就被擋。想要完整的,一年好幾百美元起跳。 我今年就付了這筆錢,買的是 Norgate,一個月 40 美元,一年將近五百。那是一套口碑很好的美股歷史資料庫。買的時候心裡是踏實的——資料乾淨、含下市公司、有專人維護,做研究就是需要這種東西。錢花得心甘情願。 上週我在找別的東西時,撞見一份公開的資料集。點進去看了一下,愣住了。 它有的,跟我付錢買的那套重疊得很多。 ## 這份資料有什麼 網址:[defeatbeta/yahoo-finance-data](https://huggingface.co/datasets/defeatbeta/yahoo-finance-data) 整包下載,不用申請帳號,沒有次數限制,每天更新。 我連上去查了一遍(as-of 2026-09-04): - 日線股價:3,654 萬列、12,227 檔股票、1994 年 11 月至今 - 法說會逐字稿:238,638 場、6,511 檔股票、2005 年至今 - 財務三表、公司新聞全文、SEC 申報索引、營收拆解、配息與分割紀錄 我付費那套是 12,259 檔,這份是 12,227 檔。兩個數字放在一起的時候,我看了兩次。 ## 兩個讓我意外的地方 第一個是下市的公司還在。 這比聽起來重要。很多資料只收現在還在交易的公司,倒閉的、被併購的、下市的都拿掉了。你用剩下的公司算績效,數字會很漂亮,因為輸家不在樣本裡。這叫生存者偏差,而它不會報錯——程式跑得好好的,結論卻是偏的。 我抽了 12 檔早就停止交易的代號去查,12 檔全部找得到,歷史保留到最後一天。AMED 停在 2025 年 8 月 15 日,MDRX 停在 2026 年 2 月 20 日。 第二個是法說會逐字稿已經按發言人拆好了。 不是一整塊文字要自己切,而是每一段都標好第幾段、誰講的。你可以直接查「哪家公司在哪一季講過某個詞」,也可以只看問答段落——分析師追問最兇的那一題,通常就是市場最不放心的地方。 ## 一個要注意的地方 股價還原了分割,沒有還原配息。 分割那部分它做對了。一家公司做一比四分割,一股變四股,股價當天從四百變一百。資料如果沒處理,你的程式會以為它一天跌了七成五。我拿蘋果跟輝達的分割日去驗,兩個都對。 配息就沒處理。這代表拿它直接算長期報酬率會低估,高配息的股票低估得最多。這件事修得回來,但要先知道有這回事。 我不覺得這是缺點,只是它的假設。付費資料附一份文件告訴你每一欄怎麼算,公開資料通常只給你檔案。檔案不會說謊,但也不會主動告訴你它省略了什麼。 ## 怎麼開始用 檔案是 parquet 格式,瀏覽器打不開,要用程式讀。好處是不下載也能查,直接對網址下指令: ```python import duckdb c = duckdb.connect() c.execute("INSTALL httpfs; LOAD httpfs;") u = "https://huggingface.co/datasets/defeatbeta/yahoo-finance-data/resolve/main/data/stock_prices.parquet" print(c.execute(f"SELECT * FROM read_parquet('{u}') WHERE symbol='AAPL' LIMIT 5").fetchall()) ``` 想整包放本機也可以。大小參考:股價 462 MB、逐字稿 2.26 GB、新聞 1.1 GB,其餘都是幾 MB。 也有現成的套件:`pip install defeatbeta-api`。 ## 拿到新資料的三個問題 這次的經驗讓我整理出三個問題,以後拿到任何一份新資料都先問一次。 第一,輸家還在不在。這份資料收不收已經失敗的樣本。只收活著的,算出來的平均值就會偏高。這不只適用於股票——健身課程的成效統計、創業成功率、投資達人的績效,都是同一個問題。 第二,它跟我已知的東西對不對得上。找一個你已經知道答案的例子去查。蘋果分割前一天該是多少、去年某天大盤收在哪裡,隨便什麼都行。對不上,先別急著用。 第三,也是我這次差點漏掉的——我的檢查有沒有能力分辨。 我第一次驗配息時抽到的股票不配息,所以怎麼驗都是「沒問題」。那個「沒問題」不是資料乾淨,是我的尺量不出來。換一批高配息股才看見差別。 一把永遠不會失敗的尺,量不出任何東西。 ## 帶得走的一件事 當一個檢查「通過了」,先問一句:如果它有問題,這個檢查抓不抓得到? 抓不到,那個「通過」就不是好消息,只是沒有消息。 今天可以做的練習:想一件你最近確認過沒問題的事——體檢報告正常、專案進度沒落後、孩子在學校還好。挑一件,然後問自己:我當時是怎麼確認的?如果事情不對,我那個確認方式,會讓我發現嗎? 大部分時候答案是會。但總有一兩件,你會發現自己只是問了一個永遠會得到「沒事」的問題。