Member-only story

Python 解鎖 : 如何計算 ETF 的PE Ratio? (以00878為例) Part 1

DigNo Ape
1 min readSep 27, 2024

--

ETF (exchange-traded funds) 近年已逐漸成為投資人青睞的投資工具,透過指數證券化,投資人可以以相對低廉的門檻參與追蹤的指數,在一些被動型的股票ETF,投資人更能透過買進一籃子股票做到某種程度的避險。與此同時,儘管長期以被動型的股票ETF追蹤大盤指數既省心又能獲取不錯的報酬,我們要如何評估現在的ETF價格是否在上緣或是有被低估的可能呢?

本益比

本益比 (PE Ratio) 經常用來評估一檔股票是便宜或是昂貴常用的工具,公式是 股價 ÷ 每股盈餘 (或市值÷總盈餘)。

我們可以使用相同原理對一檔股票型ETF進行PE估值:

1. 撈取一檔ETF所有的持倉股票清單。

2. 每檔股票持有股數

3. 每檔股票的EPS

4. 計算每檔股票的總盈餘

5. ETF的總市值: 可以使用ETF股價乘上其流通股數或每檔持倉股票的股價乘上持有股數

6. ETF的總市值 / ETF的總盈餘 得到此ETF的本益比。

在此篇我們會以國泰永續高股息ETF (代號00878)為例,在Google Colab使用Python計算其PE比例。

持倉股票清單

國泰提供ETF相關持倉和股數的下載連結。將下載檔案預存成data.xlsx。

  • 導入所需的模組
import urllib from openpyxl 
import load_workbook
import pandas as pd
  1. urllib 用於處理 URL 的請求,這裡用來下載檔案。
  2. openpyxl 用於操作 Excel 檔案,支援 .xlsx 格式。
  3. pandas 用於資料分析,將資料存入 DataFrame。
  • 下載 Excel 檔案
dls = "https://cwapi.cathaysite.com.tw/api/ETF/DownloadETFWeightExcel?FundCode=CN&SearchDate=2024/10/01"
urllib.request.urlretrieve(dls, "data.xlsx")
  1. 這裡 dls 是 Excel 檔案的下載連結。

--

--

DigNo Ape
DigNo Ape

Written by DigNo Ape

我們秉持著從原人進化的精神,不斷追求智慧的累積和工具的運用來提升生產力。我們相信,每一個成員都擁有無限的潛力,透過學習和實踐,不斷成長和進步。

No responses yet