5 min read

[Google sheet]我如何製作股票損益表,自動抓取最新股價

此篇文章將分享我是如何製作我持有股票的未實現損益表,看起來的成果如下:

google sheet: stock income statement

主要功能

  • 自動更新股價
  • 根據最新股價,計算損益,並以顏色區分損或益
  • 近一年的股價折線圖

Step by Step

製作表格

首先填入表頭欄位,在這裡我們會有:

股票代號名稱近一年股價現價漲跌
成交量持有張數市值持有成本損益損益百分比

google sheet: blank data table

每新增一檔股票,需要我們自己填入的有股票代號名稱持有張數持有成本

  • 股票代號: 爲後續GOOGLEFINANCE函式的參數,這裡以台北股市台積電為例爲TPE:2330
  • 名稱: 就你自己開心如何稱這黨股票就好~
  • 持有張數: 就是你的持有張數...
  • 持有成本: 每次買股票時,就將成本加上去吧

取得最新股價資訊(現價、成交量),計算市值

  • 現價:

使用GOOGLEFINANCE函式來取得股價資訊!

在D2儲存格中輸入公式: =GOOGLEFINANCE(A2, "price"),之後下來套用至整個D欄

google sheet: GOOGLEFINANCE price
  • 成交量:

=GOOGLEFINANCE(A2, "volume")

  • 市值:

持有張數現價相乘即可~ =D2*G2

計算當日漲跌損益

  • 漲跌:

有了現價,可以跟昨日收盤價做比較計算出今日漲跌: =D2 - GOOGLEFINANCE(A2, "closeyest")

google sheet: GOOGLEFINANCE closeyest
  • 損益:

即為持有成本市值相減: =H2-I2

  • 損益百分比:

即為損益除以持有成本: =IF(ISBLANK(I2), 0, J2/I2)

google sheet: GOOGLEFINANCE


IFISBLANK的用途爲如果你尚未實有該檔股票,持有成本爲0或空白,卻又寫列入表中觀察,
損益百分比顯示為0,否則將出現錯誤.

股價折線圖

公式為: =sparkline(GOOGLEFINANCE(A2, "price",today()-365,today(),1))

google sheet: GOOGLEFINANCE sparkline
  • GOOGLEFINACE:
    總共四個參數,第一為股票代號、再來是起始日期跟結束日期,此範例使用一年前today()-365到今天today()、最後爲資料的interval,
    1代表每天,也可以是7代表每週
  • sparkline:
    可以再一個儲存格裡畫圖的函式,詳細的用法可以看我先前寫的文章:[Google Sheet]Sparkline,在儲存格裡插入迷你圖表

替漲跌及損益百分比上色

最後!股市就是要紅紅綠綠才比較好看,將賺錢的部分標上紅色,虧錢的弄上綠色吧!

首先點選漲跌那一欄(E),接著點選工具欄格式 -> 條件格式設定

google sheet: format

將格式規則設為大於0,格式設定樣式改為字體紅色,綠色及損益率的部分也是一樣!

google sheet: format

如此一來就大功告成囉🎉

後記:GOOGLEFINANCE 對台股不太穩怎麼辦?

這篇寫了之後,最常被讀者問到的就是「為什麼我的台股價格常常跑出 #N/A、或是更新延遲?」確實,GOOGLEFINANCE 對台股的支援一直比美股差很多——資料來源不穩、上櫃股或小型股常抓不到。

如果你受夠了 GOOGLEFINANCE 的不穩定,現在有一個更好的選擇:用 FinMind 的免費台股 API 自己抓資料、存本機。而且不需要會寫 Python——讓 Claude Code 幫你串接 API、建增量更新機制、甚至用對話的方式記錄持倉。

詳細做法寫在這篇:用 Claude Code 建台股追蹤系統 — AI 幫你接 API、管持倉

延伸閱讀:

希望以上的內容對你有一丁點兒的幫助,掰掰~👋