파이썬으로 미국 주식 티커 가져오기

반응형
    반응형

    미국주식 티커 가져오기

    미국주식은 우리나라와 달리 티커라는 개념이 있습니다. 우리나라에서는 숫자로 주식종목을 식별할 수 있는 고유코드를 부여하지만. 미국은 약자로서 고유코드를 부여합니다.아래와 같이 영문 1~5자로 티커가 구성되어 있습니다

     

    • AAPL: Apple Inc.
    • MSFT: Microsoft Corporation
    • AMZN: Amazon.com Inc.
    • TSLA: Tesla Inc.

     

    FinanceDataReader로 미국 주식 티커 가져오기

    주식 투자나 데이터 분석을 할 때 미국 주식 티커(ticker)를 얻는 것은 매우 중요한 과정입니다. 티커는 주식 종목을 식별하는 고유한 코드로, 데이터를 수집하거나 특정 종목을 분석할 때 필수적으로 사용됩니다.

    FinanceDataReader 설치

    FinanceDataReader는 파이썬 패키지 관리 도구인 pip를 통해 설치할 수 있습니다.

    pip install finance-datareader

     

    FinanceDataReader에 대한 자세한 내용은 아래 포스팅을 참고하시기 바랍니다.

     

     

    [Python] FinanceDataReader로 주식데이터 가져오기

    FinanceDataReader라는 라이브러리가 있어서 소개겸 포스팅하려 합니다. 이 라이브러리를 쓰면 국내 주식, 미국 주식, 지수, 환율, 주요 암호화폐 가격 데이터를 가져올 수 있습니다. 제가 이 포스팅

    seong6496.tistory.com

     

    미국 주식 티커 가져오기

    이제 NASDAQ과 S&P 500에 상장된 주식 티커를 가져오는 방법을 살펴보겠습니다.

    1. NASDAQ 주식 티커 가져오기

    아래 코드는 NASDAQ 시장에 상장된 모든 주식의 티커를 가져오는 예제입니다.

    import FinanceDataReader as fdr
    
    # NASDAQ 주식 리스트 가져오기
    nasdaq_stocks = fdr.StockListing('NASDAQ')
    
    # 데이터 확인
    print(nasdaq_stocks.head())

    출력 결과는 아래와 같이 NASDAQ에 상장된 종목 리스트를 보여줍니다.

         Symbol               Name             Industry
    0      AAPL             Apple Inc.    Consumer Electronics
    1      MSFT        Microsoft Corp.          Software—Infrastructure
    2      GOOG          Alphabet Inc.               Internet Content & Information
    3      AMZN      Amazon.com Inc.               Internet Retail
    4      TSLA           Tesla Inc.                 Auto Manufacturers

    2. S&P 500 주식 티커 가져오기

    다음으로, S&P 500에 포함된 주식 티커를 가져오는 방법입니다.

    # S&P 500 주식 리스트 가져오기
    sp500_stocks = fdr.StockListing('S&P500')
    
    # 데이터 확인
    print(sp500_stocks.head())

    출력 결과는 S&P 500에 포함된 종목 리스트를 보여줍니다.

         Symbol               Name               Industry
    0      AAPL             Apple Inc.          Technology Hardware
    1      MSFT        Microsoft Corp.          Software—Infrastructure
    2      AMZN      Amazon.com Inc.            Consumer Discretionary
    3      NVDA    NVIDIA Corporation           Semiconductors
    4      GOOG          Alphabet Inc.          Communication Services

    FinanceDataReader의 장점

    • 다양한 시장 지원: 국내(KRX), 미국(NASDAQ, NYSE, AMEX), 유럽, 아시아 등 다수의 시장 데이터를 제공합니다.
    • 손쉬운 사용법: 복잡한 설정 없이 몇 줄의 코드로 데이터를 가져올 수 있습니다.
    • 무료 사용 가능: 유료 API 없이도 활용할 수 있어 초보자에게 적합합니다.

    다른 방법들

    개인적으로는 FinanceDataReader를 이용하는 방법이 가장 간단했는데요. 이 방법 말고 다른 방법도 있습니다. 간단하게 소개만 하겠습니다. 대표적으로 yfinance, pandas-datareader, Yahoo Finance API 또는 Alpha Vantage API 등을 활용하는 방식이 있습니다.

    1. yfinance를 활용하는 방법

    yfinance는 Yahoo Finance에서 데이터를 가져오는 라이브러리입니다. 미국 주식 티커 목록을 포함한 다양한 데이터를 손쉽게 얻을 수 있습니다.

    설치

    pip install yfinance

    사용 예제

    yfinance를 활용해 S&P 500 티커를 가져올 수 있는 방법은 아래와 같습니다.

    import yfinance as yf
    
    # S&P 500 종목 가져오기
    sp500 = yf.Ticker("^GSPC")  # S&P 500 지수의 티커
    sp500_stocks = sp500.history(period="1d")  # 관련 데이터를 가져옴
    print(sp500_stocks)

    그러나 S&P 500 구성 종목 전체를 바로 가져오는 기능은 기본적으로 없기 때문에, S&P 500 티커 리스트를 별도로 저장해두거나 아래와 같은 추가적인 데이터를 활용해야 합니다.

    2. Pandas 데이터로 직접 S&P 500 구성 종목 가져오기

    S&P 500의 구성 종목 데이터는 웹에 공개된 소스가 많습니다. 위키백과(Wikipedia)에 있는 S&P 500 리스트를 가져올 수 있습니다.

    사용 예제

    import pandas as pd
    
    # S&P 500 리스트가 포함된 Wikipedia 페이지 읽기
    url = "https://en.wikipedia.org/wiki/List_of_S%26P_500_companies"
    sp500_table = pd.read_html(url)[0]  # 첫 번째 테이블 가져오기
    
    # 결과 확인
    print(sp500_table.head())

    출력 결과

       Symbol                 Security      GICS Sector                GICS Sub-Industry
    0    AAPL               Apple Inc.         Information Technology   Technology Hardware
    1    MSFT        Microsoft Corporation      Information Technology   Software
    2    AMZN              Amazon.com Inc.    Consumer Discretionary   Internet & Direct Marketing Retail
    3    TSLA                 Tesla Inc.       Consumer Discretionary   Automobiles
    4    GOOG             Alphabet Inc. C     Communication Services  Interactive Media & Services

    3. Alpha Vantage API 활용

    Alpha Vantage는 무료로 금융 데이터를 제공하는 API입니다. 무료 플랜으로도 충분히 데이터를 가져올 수 있지만, API 키가 필요합니다.

    설치

    pip install alpha_vantage

    API 키 발급

    Alpha Vantage 홈페이지에서 무료로 API 키를 발급받으세요.

    사용 예제

    from alpha_vantage.timeseries import TimeSeries
    
    # Alpha Vantage API 키
    api_key = "YOUR_API_KEY"
    
    # Alpha Vantage를 사용해 데이터 가져오기
    ts = TimeSeries(key=api_key, output_format="pandas")
    data, meta_data = ts.get_symbol_search("Apple")  # 특정 기업 검색
    print(data)

    단점

    Alpha Vantage는 특정 종목 검색이나 데이터를 가져오는 데 적합하지만, 전체 티커 리스트를 제공하지는 않습니다. NASDAQ 또는 S&P 500 리스트를 별도로 가져와야 합니다.

    4. Quandl API 활용

    Quandl은 다양한 금융 데이터를 제공하는 또 다른 플랫폼입니다. S&P 500 데이터는 유료 데이터셋으로 제공되지만, 다른 티커 데이터를 무료로 사용할 수 있습니다.

    설치

    pip install quandl

    사용 예제

    import quandl
    
    # Quandl API 키 설정
    quandl.ApiConfig.api_key = "YOUR_API_KEY"
    
    # 데이터 가져오기
    data = quandl.get("WIKI/AAPL")  # Apple 주식 데이터
    print(data.head())

    5. Yahoo Finance 웹 크롤링

    Yahoo Finance 웹사이트에서 미국 주식 데이터를 직접 크롤링하는 방법도 있습니다. 이를 위해 BeautifulSoup 같은 라이브러리를 사용할 수 있습니다.

    설치

    pip install requests beautifulsoup4

    사용 예제

    import requests
    from bs4 import BeautifulSoup
    
    # Yahoo Finance에서 데이터 가져오기
    url = "https://finance.yahoo.com/screener/predefined/ms_technology"
    response = requests.get(url)
    soup = BeautifulSoup(response.text, "html.parser")
    
    # 주식 티커 추출
    tickers = [item.text for item in soup.select(".simpTblRow td:first-child")]
    print(tickers)

     

    마치며 어떤 방법이 적합할까?

    • 단순히 티커만 필요하다면: Wikipedia 크롤링이나 FinanceDataReader가 가장 쉽습니다.
    • 티커와 함께 추가 데이터를 분석하려면: yfinance 또는 Alpha Vantage를 추천합니다.
    • 상세한 실시간 데이터를 원한다면: Alpha Vantage, Quandl 등 API 기반 솔루션을 사용하세요.

     

    함께보면 좋은글

     

     

    [웹크롤링] 네이버증권에서 재무제표 가져오기

    네이버 증권에서 재무제표를 가져오는 방법입니다.  삼성전자를 예로 하겠습니다.네이버증권에서 삼성전자 검색해서 들어가면 사이트 이름이 다음과 같이 나옵니다.  여기서 '005930' 이 종목

    seong6496.tistory.com

     

     

    [Python] FinanceDataReader로 주식데이터 가져오기

    FinanceDataReader라는 라이브러리가 있어서 소개겸 포스팅하려 합니다. 이 라이브러리를 쓰면 국내 주식, 미국 주식, 지수, 환율, 주요 암호화폐 가격 데이터를 가져올 수 있습니다. 제가 이 포스팅

    seong6496.tistory.com

     

     

    초보자도 하는 주식 기술적 분석 파이썬 라이브러리

    주식 기술적 분석 계산에 유용한 파이썬 라이브러리 소개주식 시장에서 기술적 분석은 투자 의사 결정을 내리는 데 중요한 도구로 사용됩니다. 하지만 방대한 데이터를 수동으로 분석하기에는

    seong6496.tistory.com

     

    댓글

    Designed by JB FACTORY

    ....