Skip to content

Release Note 0.9.110

FinanceData.KR edited this page Mar 11, 2026 · 5 revisions

KRX Authentication Change 대응

최근 한국거래소(KRX)가 인증(로그인) 후에만 데이터를 조회할 수 있는 방식으로 변경되었습니다.

기존에는 FinanceDataReader에서 KRX 데이터를 직접 조회할 수 있었지만, 이제는 일부 데이터에 대해 로그인 없이 접근할 수 없는 상황이 되었습니다.

배경

이 문제에 대응하기 위해, 처음에는 사용자의 ID/PW를 코드에 전달하여 로그인한 뒤 데이터를 가져오는 방식을 검토했습니다.

하지만 이 방식은 다음과 같은 불편이 있습니다.

  • 사용자가 FinanceDataReader 사용 코드를 수정해야 함
  • 각 사용자가 KRX ID/PW를 별도로 준비해야 함
  • 인증 절차가 추가되어 사용성이 크게 저하됨
  • 다수 사용자 환경에서 적용하기에 관리 부담이 큼

해결 방법

이 문제를 해결하기 위해, GitHub를 KRX 데이터 캐시 저장소로 사용하는 방식으로 변경했습니다.

  • KRX에서 수집한 데이터를 GitHub에 캐시
  • FinanceDataReader는 해당 캐시 데이터를 활용
  • 사용자는 로그인(ID/PW) 없이 기존 방식 그대로 사용 가능

데이터 캐시 저장소:

결과

이제 사용자는 기존 코드를 수정하지 않고 그대로 사용할 수 있습니다. 또한 KRX 계정(ID/PW)을 별도로 입력할 필요도 없습니다.

Available Updates

KRX 인증이 필요해 더 이상 조회되지 않던 항목 중, 아래 기능들은 다시 사용할 수 있도록 업데이트되었습니다.

기존 사용자들은 별도 코드 수정이 필요하지 않습니다.

1) KOSPI / KRX 지수 데이터

# KOSPI Index 코스피 지수 데이터
df = fdr.DataReader('KS11', '2020')                    # 2020-01-01 ~ 현재
df = fdr.DataReader('KS11', '2022-01-01', '2022-12-31')  # 2022-01-01 ~ 2022-12-31
df = fdr.DataReader('KS200')                          # KOSPI 200 (KRX)

2) KRX 상장회사 목록 (가격 중심)

# KRX 상장회사(발행회사) 목록 (가격 중심, 주식 종목) - 시가총액순
stocks = fdr.StockListing('KRX')      # KRX 종목 (= 코스피 + 코스닥 + 코넥스)
stocks = fdr.StockListing('KOSPI')    # KOSPI 종목
stocks = fdr.StockListing('KOSDAQ')   # KOSDAQ 종목
stocks = fdr.StockListing('KONEX')    # KONEX 종목

3) KRX 전종목 목록 (설명 중심)

# KRX 전종목 목록 (설명 중심, 주식 + 펀드 등 전종목)
stocks = fdr.StockListing('KRX-DESC')     # 한국거래소 종목
stocks = fdr.StockListing('KOSPI-DESC')   # KOSPI 종목
stocks = fdr.StockListing('KOSDAQ-DESC')  # KOSDAQ 종목
stocks = fdr.StockListing('KONEX-DESC')   # KONEX 종목

4) 상장폐지 종목 목록

# 상장폐지 종목
stocks = fdr.StockListing('KRX-DELISTING')   # 상장폐지 종목 전체

5) KRX 전체 지수 목록

# KRX 전체 지수 목록
df = fdr.SnapDataReader('KRX/INDEX/LIST')

Not Yet Supported

현재 기준으로, 아래 항목들은 아직 지원되지 않습니다.

1) 개별 지수 구성 종목 조회

df = fdr.SnapDataReader('KRX/INDEX/STOCK/1001')  # KOSPI 지수 구성 종목
df = fdr.SnapDataReader('KRX/INDEX/STOCK/1028')  # 코스피200
df = fdr.SnapDataReader('KRX/INDEX/STOCK/5106')  # KRX ESG Leaders 150 테마 지수 구성 종목

2) KRX 개별 종목 가격 데이터 조회

df = fdr.DataReader('KRX:005930')  # KRX 개별 종목 가격

Priority Note

KRX 개별 종목 가격 데이터는 아래와 같이 다른 방식으로 이미 조회가 가능합니다.

df = fdr.DataReader('005930')
df = fdr.DataReader('NAVER:005930')

따라서 이 항목은 현재 지원 우선순위를 낮게 두고 검토 중입니다.


Summary

  • KRX가 로그인 기반 조회 방식으로 변경됨
  • ID/PW 기반 로그인 방식은 사용자 불편이 큼
  • 이를 해결하기 위해 GitHub 기반 데이터 캐시를 도입함
  • 기존 FinanceDataReader 코드는 대부분 수정 없이 그대로 사용 가능
  • 일부 기능은 복구되었고, 일부 항목은 추후 지원 검토 중

Clone this wiki locally