미국 주식 Ticker(종목) 데이터 리스트업 #핀비즈 #자동화

개요

해외 주식을 하다보면 네이버 증권의 시가총액 목록 처럼 목록화 하는 페이지를 보고 싶어하는 분들이 많지만 미국 주식이 그렇게 호락호락 하지않음을 잘 알것이다.

돌고돌다 보면 finviz.com(이하 핀비즈)의 Screener(이하 스크리너) 페이지를 통해서 목록화를 시도 하는게 가장 깔끔하다.

pandas 모듈을 활용하는 Python 패키지 pyfinviz 를 소개 해본다.

from pyfinviz.screener import Screener

# 매개변수 없음(기본 스크리너 테이블)
screener = Screener()
# with params (Analyst가 강력 매수 추천하는 "STOCKS ONLY"의 처음 3페이지)
options = [Screener.IndustryOption.STOCKS_ONLY_EX_FUNDS, Screener.AnalystRecomOption.STRONG_BUY_1]
screener = Screener(filter_options=options, view_option=Screener.ViewOption.VALUATION,
                    pages=[x for x in range(1, 4)])

# available variables:
print(screener.main_url)  # 스크랩 URL
print(screener.soups)  # beautiful soup 페이지 단위 오브젝트 {1: soup, 2: soup, ...}
print(screener.data_frames[0]['Ticker'])  # 페이지 단위 pd.DataFrame 오브젝트 테이블 정보 {1: table_df, 2, table_df, ...}

크게 레인지를 주면 뻗어 버릴 가능성이 농후하니 머리를 많이 써야 한다 한다. ㅎㅎ

댓글

이 블로그의 인기 게시물

북궐도 2.0

Python Strawberry GraphQL 예제 (feat. #sqlmodel, #mysql)

Arch 계열 리눅스 구글 크롬 설치