Step 1:準備環境
安裝必備套件(如果還沒裝):
pip install yfinance matplotlib mplfinance pandas
-
yfinance:抓股票歷史資料 -
matplotlib:繪圖 -
mplfinance:專門畫 K 線圖 -
pandas:資料處理
Step 2:抓股票資料
import yfinance as yf
import pandas as pd
# 選擇股票代號,例如台積電(TSM)或 Nvidia
symbol = "NVDA"
# 下載資料
df = yf.download(symbol, start="2023-01-01", end="2025-09-01")
# 看前幾筆
print(df.head())
==================================================================================
你電腦還沒安裝 mplfinance 套件。你可以用 pip 安裝:
pip install mplfinance
如果你在 Jupyter Notebook 或 IPython 裡面,也可以直接執行:
!pip install mplfinance
安裝完成後,再重新執行你的程式就可以畫 K 線圖了。
==============================================================================
import yfinance as yf
import pandas as pd
import mplfinance as mpf
symbol = "NVDA"
df = yf.download(symbol, start="2023-01-01", end="2025-09-01")
# 確保欄位為 float,並去掉可能的 NaN
for col in ['Open', 'High', 'Low', 'Close', 'Volume']:
df[col] = pd.to_numeric(df[col], errors='coerce')
df.dropna(subset=['Open', 'High', 'Low', 'Close', 'Volume'], inplace=True)
# 畫 K 線圖
mpf.plot(
df,
type='candle',
style='yahoo',
title=f"{symbol} K 線圖",
volume=True
)
====================================================================================
✅ 關鍵點:
pd.to_numeric(..., errors='coerce'):把非數字轉成 NaN
dropna(...):刪掉含 NaN 的列
確保索引是日期(yfinance 下載的資料默認就對了)
完整範例執行

沒有留言:
張貼留言