iT邦幫忙

2026 iThome 鐵人賽

DAY 4
0
Software Development

30 天打造專屬盯盤機器人:資料爬取、策略指標到 Telegram/LINE 推播系列 第 4

Day 4 數據視覺化 — 用 mplfinance 繪製你的第一張台股 K 線圖!

  • 分享至 

  • xImage
  •  

今天是第四天,我們要將數據視覺化。在第三天的時候我們已經成功用 yfinance 取得了台積電(2330.TW)原始股價數據,不過光看一堆數字表格,真的很難快速判斷走勢,所以今天的目標是把數據變成方便觀看的K線圖!接下來一樣會一步一步地進行。
步驟一:安裝繪圖套件 (mplfinance)
老樣子,一樣開啟 VS Code 終端機,確認前面一樣有 ( venv ),再輸入以下指令。

pip install mplfinance
  • mplfinance:基於 Python 經典繪圖庫 matplotlib 所開發的金融模組,能用極簡的程式碼畫出包含 K 線、成交量與移動平均線(MA)的圖表。
    好了會長下面這樣~

https://ithelp.ithome.com.tw/upload/images/20260918/20184215PoNfK73sRK.png
步驟二:撰寫 K 線圖繪製腳本
這邊可以把昨天寫的程式碼刪掉,因為我們今天不是只要數據!所以一定會做更改~

import yfinance as yf
import mplfinance as mpf

# 1. 抓取台積電最近 3 個月的歷史數據
ticker = "2330.TW"
df = yf.Ticker(ticker).history(period="3m")

# 2. 設定台灣習慣的 K 線顏色(紅漲綠跌)
mc = mpf.make_marketcolors(
    up='red',          # 上漲為紅色
    down='green',      # 下跌為綠色
    edge='inherit',    # 蠟燭邊框顏色跟隨漲跌
    wick='inherit',    # 影線顏色跟隨漲跌
    volume='inherit'   # 成交量顏色跟隨漲跌
)

# 3. 將顏色套用至圖表主題風格(style)
s = mpf.make_mpf_style(marketcolors=mc, gridstyle="--")

# 4. 繪製 K 線圖並顯示成交量與移動平均線
mpf.plot(
    df,
    type='candle',        # 指定圖表類型為 K 線圖 (Candlestick)
    style=s,              # 套用剛才設定的紅漲綠跌風格
    title="2330.TW Candlestick Chart", # 圖表標題
    volume=True,          # 顯示下方成交量圖表
    mav=(5, 20),          # 加入 5 日均線 (週線) 與 20 日均線 (月線)
    savefig="kline.png"   # 自動將結果儲存為圖片檔
)

print("K 線圖已成功繪製並儲存為 kline.png!")

這邊個人覺得import跟df的地方可以不用再說明了!前一篇有提到,然後mc = mpf.make_marketcolors(這個地方是因為美股跟台股不一樣,美股是綠漲紅跌,台股恰恰相反,所以要再另外設置!這樣視覺風格會比較符合大多數人的習慣!
然後 savefig="kline.png"這個是方便我們後面要和 LINE Bot 結合的準備。
步驟三:執行與成果驗證
接下來,就在終端機內打上下面的程式碼就可以了!

python main.py

然後就要稍等一段時間,等待結果。
https://ithelp.ithome.com.tw/upload/images/20260918/20184215qk0Edj9AKO.png
我在做的時候這裡報錯,好在是終端機有說問題出在3個月不能寫3m ,要寫成3mo。
3m是三分鐘的意思
最後終端機會長這樣!
https://ithelp.ithome.com.tw/upload/images/20260918/20184215XJlcVg2NEH.png
然後你就會發現左邊多出了一個.png的檔案,點下去可以看到圖片了!
https://ithelp.ithome.com.tw/upload/images/20260918/201842155wXFJ1csfP.png
小結一下,雖然有報錯,但很快就解決了,而且真的看到圖片的時候也覺得很有趣,明天,我們將寫一個程式來自動幫我們看盤。


上一篇
Day 03:使用 pip 安裝套件與抓取台積電股價
下一篇
Day 05:寫出第一個自動看盤策略 — 5日/20日均線黃金交叉!
系列文
30 天打造專屬盯盤機器人:資料爬取、策略指標到 Telegram/LINE 推播6
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言