ETF Data
The ETF Class
The ETF class is the main entry point. It lazily fetches data on first access.
ETF Info
Access metadata via the info property. Names are Japanese by default:
e.info.code # "1306"
e.info.name # "TOPIX連動型上場投資信託"
e.info.cash_component # Fund cash component
e.info.shares_outstanding # Shares outstanding
e.info.date # Fund date as datetime.date
# Convert to dict
dict_info = e.info.to_dict()
Holdings
Access constituent holdings:
for h in e.holdings[:3]:
print(f"{h.code} {h.name}: {h.weight:.2%}")
# 7203 トヨタ自動車: 3.80%
# 8306 三菱UFJフィナンシャル・グループ: 2.50%
# 6758 ソニーグループ: 2.30%
Each Holding has: code, name, isin, exchange, currency, shares, price, weight.
NAV
Total fund net asset value (cash + holdings market value) in yen:
Fee (信託報酬)
Trust fee (信託報酬), sourced from JPX with Rakuten Securities as fallback. Independent of PCF data:
Returns None if the fee is unavailable from both sources.
DataFrame Output
Language
Set config.lang before creating an ETF instance:
import pyjpx_etf as etf
# Japanese (default)
e = etf.ETF("1306")
e.info.name # "TOPIX連動型上場投資信託"
# English
etf.config.lang = "en"
e = etf.ETF("1306")
e.info.name # "TOPIX ETF"