1️⃣ yfinance 基本下載資料
-
用途:取得日線或其他週期股價資料
-
常用參數:
-
period:資料時間範圍,例如"1mo","3mo","1y" -
interval:時間頻率,例如"1d","1h","1wk" -
auto_adjust:是否自動調整股價(拆股 / 股息)
-
2️⃣ 原生欄位說明
| 欄位 | 說明 |
|---|---|
| Open | 開盤價 |
| High | 最高價 |
| Low | 最低價 |
| Close | 收盤價 |
| Adj Close | 調整後收盤價(考慮拆股 / 股息) |
| Volume | 成交量 |
這些是 API 下載回來就有的,不需要自己計算。
3️⃣ 衍生欄位/計算
-
說明:
-
rolling(n).mean()→ 計算 n 日移動平均 -
pct_change()→ 計算報酬率 -
loc[...]→ 條件篩選賦值
-
4️⃣ 其他底層 API 函數
| Function / 屬性 | 用途 | 範例 |
|---|---|---|
yf.Ticker("2330.TW") | 建立股票物件 | ticker = yf.Ticker("2330.TW") |
ticker.info | 取得股票基本資料 | info = ticker.info |
ticker.dividends | 歷年股利資料 | divs = ticker.dividends |
ticker.financials | 歷年損益表 | fin = ticker.financials |
ticker.balance_sheet | 歷年資產負債表 | bs = ticker.balance_sheet |
ticker.cashflow | 歷年現金流量表 | cf = ticker.cashflow |
ticker.splits | 拆股歷史 | splits = ticker.splits |
5️⃣ 資料檢查與轉換(pandas 基礎用法)
-
用途:避免型態不一致造成計算錯誤
-
說明:
-
isinstance()→ 判斷型態 -
squeeze()→ 把 DataFrame 轉成 Series補充
-
時間索引 (
data.index)-
每一列的日期或時間點(DateTimeIndex)
-
可以做 x 軸圖表、時間篩選
-
-
自訂欄位
-
你可以在原始 DataFrame 上加自己的欄位,例如:
-
這些都是你自己計算的,但基礎數據來源還是 yfinance API 下載的欄位
-
-

沒有留言:
張貼留言