KRX API
Korea Exchange provides official Korean market data. Use the official KRX OPEN API portal to request a key and approval for each service. The request URL is specific to the approved API specification.
Key functions (via pykrx community library)
| Function | Description |
|---|---|
stock.get_market_ticker_list() |
All tickers by market |
stock.get_market_ohlcv() |
OHLCV for date range |
stock.get_market_cap() |
Market cap data |
stock.get_market_fundamental() |
PER/PBR/dividend yield |
stock.get_etf_ticker_list() |
ETF tickers |
stock.get_etf_ohlcv() |
ETF OHLCV |
stock.get_index_ticker_list() |
Index tickers |
bond.get_otc_ticker_list() |
Bond tickers |
Python example: KRX stock data via pykrx
# pykrx is a community wrapper (not official) for KRX data
# pip install pykrx
from pykrx import stock
# KOSPI tickers
tickers = stock.get_market_ticker_list(market="KOSPI")
print(f"KOSPI tickers: {len(tickers)}")
# Samsung Electronics (005930) OHLCV
df = stock.get_market_ohlcv("20240101", "20241231", "005930")
print(df.tail(3))
# ETF tickers
etf_tickers = stock.get_etf_ticker_list()
print(f"ETF count: {len(etf_tickers)}")
Notes:
pykrxscrapes KRX web endpoints; not an official API client- The OPEN API terms limit use to noncommercial purposes, prohibit third-party redistribution, and cap each key at 10,000 requests per day. Review the official terms before integrating
- Korean market holidays differ from US — use
pykrx’s calendar or KRX holiday data
Integration surface
- Versioning
- Product-specific
- Resource groups
- Stock prices, ETF/ETN, Derivatives, Bond, Market statistics
- Pagination
- Date-range based queries
- Errors
- Korean-language error messages
- Webhooks
- Not supported
- Official SDKs
- Community Python wrappers