在進行股市分析時,取得數據往往是投資者的一大挑戰。為了降低資料收集的門檻,我們可以利用 FinMind API 來快速取得所需的台股資料。FinMind 是一個專為台股市場設計的數據平台,提供超過 50 種金融開源數據,當然也包含了我們需要的技術面與籌碼面這兩大面向的資料。在本篇文章中,我將介紹如何使用 FinMind API 來獲取台股的歷史收盤價數據。
在開始使用 FinMind API 前,我們首先需要安裝相關套件並取得 API Key。這個過程相當簡單,只需以下幾個步驟:
pip install FinMind
我們將以台積電(2330)為例,來示範如何使用 FinMind API 取得台股的歷史收盤資訊。
透過以下範例代碼,我們可以輕鬆取得台積電自 2020 年以來的歷史價量數據:
from FinMind.data import DataLoader
api = DataLoader()
api.login_by_token(api_token="Your_API_Key")
stock_data = api.taiwan_stock_daily(
stock_id="2330",
start_date="2020-01-01",
end_date="2024-09-18"
)
print(stock_data)
透過以上程式碼,我們可以取得包含台積電開盤價、最高價、最低價、收盤價、成交量等的完整歷史數據。這些資料對於技術分析十分重要,例如之後我們需要計算的移動平均線(MA)以及趨勢判斷等。
籌碼面數據則讓我們了解市場中法人(投信、外資、自營商)對於特定股票的買賣狀況。以下是如何取得台積電法人買賣資料的範例代碼:
from FinMind.data import DataLoader
api = DataLoader()
api.login_by_token(api_token="Your_API_Key")
df = api.taiwan_stock_institutional_investors(
stock_id="2330",
start_date='2020-04-01',
end_date='2024-09-18'
)
print(df)
以上程式碼能夠下載台積電在指定時間段內的法人買賣情況,進一步幫助我們分析籌碼面的變動,尤其是投信的買賣行為。
下載完數據後,我們可以進行一些基礎的數據處理,例如去除空值、整理格式,或者進一步計算技術指標。以下是如何將下載的數據儲存為 CSV 檔案的範例:
stock_data.to_csv("TSMC_stock_data.csv", index=False)
我們也可以在此基礎上,進一步計算常用的技術指標,例如移動平均線(MA)、相對強弱指標(RSI)等,來輔助判斷市場走勢。
透過 FinMind API,我們能夠輕鬆取得台股的歷史數據,無論是技術面還是籌碼面,這些數據都對於我們進行市場分析具有相當大的幫助。接下來,我會在後續的文章中,深入探討投信買賣動向與股價變動之間的關聯,並進一步分析如何運用這些資訊來預測股價走勢。