호기심 많은 분석가

구글 스프레드시트로 실시간 주식 데이터 관리하기 (4) - 미장/국장 개별 종목 본문

정책/재테크

구글 스프레드시트로 실시간 주식 데이터 관리하기 (4) - 미장/국장 개별 종목

DA Hun 2023. 11. 25. 14:42

 

 원달러환율, 미국채 10년물 금리, 국제유가(WTI)를 불러오는 방법에 대해 소개드렸는데요. 마지막으로 이번 포스팅에서는 미장과 국장의 실시간 개별 종목 데이터를 불러오는 방법에 대해 알아보겠습니다.

 

 앞선 3개의 글에서 사용한 문법들로 구글 파이낸스, 야후 파이낸스, 네이버 증권의 실시간 데이터를 불러오겠습니다.

 

 

구글 스프레드시트로 실시간 주식 데이터 관리하기 (3) - 국제유가(WTI)

원달러환율, 미국채 10년물 금리 불러오는 방법에 대해 소개드린 지난번 포스팅에 이어 이번 포스팅에서는 국제유가(WTI)를 불러오는 방법에 대해 알아보겠습니다. Google Finance에서는 상품 거래를

herjh0405.tistory.com

 

구글스프레드 시트로 개별 종목 데이터 관리

 

 

자본관리_예시

종목분석 원달러 환율,1,308,▼12.1,▼0.9% 미국채 10년 금리,4.459%,▼0.173%,▼0.1% 국제 유가(WTI),78.79,▲0.53$,▲0.7% 종목,카테고리,직전 12개월,2023년 3분기,2023년 2분기 Category,Ticker,실시간,직전분기,대비,

docs.google.com



목차

    미국 주식 데이터 관리 - 애플 

     미국 시가총액 1위 기업 애플의 실시간 데이터를 불러와보겠습니다. 

     

    주가와 시가총액, PER 데이터는 구글 파이낸스에서, 배당수익률은 야후 파이낸스에서 확인할 수 있습니다.

     

    애플 실시간 데이터

    • 주가
      • GOOGLEFINANCE를 활용해서 불러올 수 있고, 애플의 티커는 NASDAQ:AAPL입니다.
    =GOOGLEFINANCE("NASDAQ:AAPL")
    • 시가총액, PER
      • 마찬가지로 GOOGLEFINANCE를 활용해서 불러오며 속성 값을 바꿔서 호출합니다.
      • 시가총액의 경우 달러 형태로 나오기 때문에 실시간 원달러 환율을 곱해 원화로 바꾸면 보다 직관적으로 확인할 수 있습니다.
      • PER은 아직 영업이익이 흑자가 아닌 기업도 있기 때문에 오류가 발생할 경우 -로 표시해 줬습니다.
    # 시가총액
    =GOOGLEFINANCE("NASDAQ:AAPL","marketcap")*GOOGLEFINANCE("CURRENCY:USDKRW")/1000000000000
    
    # PER
    =IFERROR(GOOGLEFINANCE("NASDAQ:AAPL","pe"),"-")
     

    GOOGLEFINANCE - Google Docs 편집기 고객센터

    Google Finance에서 현재 또는 기존 유가증권 정보를 가져옵니다. 사용 예 GOOGLEFINANCE("NASDAQ:GOOG", "price", DATE(2014,1,1), DATE(2014,12,31), "DAILY") GOOGLEFINANCE("NASDAQ:GOOG","price",TODAY()-30,TODAY()) GOOGLEFINANCE(A2,A3) 구

    support.google.com

    • 배당수익률, 배당금
      • 구글 파이낸스에서는 배당 데이터를 제공하지 않기 때문에 IMPORTHTML을 활용해서 야후 파이낸스에서 배당수익률 정보를 가져옵니다. 야후 파이낸스의 애플 티커는 AAPL입니다.
      • 야후 파이낸스 애플 페이지의 2번째 테이블에서 6행 2열의 배당수익률을 가져온 뒤, 해당 데이터는 음수이기 때문에 ABS 함수를 사용하여 양수로 변환해 줍니다.
      • 배당수익률에 주가를 곱한 뒤 4로 나누어주면 분기당 배당금액을 유추할 수 있습니다.
    # 배당수익률
    =IFERROR(ABS(INDEX(SPLIT(INDEX(IMPORTHTML("https://finance.yahoo.com/quote/AAPL"),"table",2),6,2)," "), 2))
    ,"-")
    
    # 분기당 배당금액
    =IFERROR(ABS(INDEX(SPLIT(INDEX(IMPORTHTML("https://finance.yahoo.com/quote/AAPL"),"table",2),6,2)," "), 2))
    ,"-")*GOOGLEFINANCE("NASDAQ:AAPL")/4
     

    IMPORTHTML - Google Docs 편집기 고객센터

    HTML 페이지에서 표 또는 목록에 있는 데이터를 가져옵니다. 사용 예 IMPORTHTML("http://en.wikipedia.org/wiki/Demographics_of_India","table",4) IMPORTHTML(A2,B2,C2) 구문 ImportHtml(URL, 쿼리, 색인) url - 검토할 페이지의 UR

    support.google.com

     


    국내 주식 데이터 관리 - 삼성전자

     국내 시가총액 1위 기업 삼성전자의 실시간 데이터를 불러와보겠습니다. 

     

    미국 주식보다 편하게 네이버 증권 한 곳에서 주가, 시가총액, 매출액, 영업이익, PER, 동일업종 PER, 외국인소진율, 배당금 등 굉장히 많은 정보를 확인할 수 있습니다.

     

    삼성전자 실시간 데이터

    • 주가, 시가총액, 매출액, 영업이익, PER
      • 삼성전자의 티커는 005930입니다.
      • 네이버 증권 삼성전자 페이지의 5번째 테이블의 2행 2열에서 주가를 불러오고, 동일 테이블에서 시가총액, 매출액, 영업이익, PER 데이터 모두 확인할 수 있습니다.
      • 각자 테이블 순서나 행, 열 값을 변화시켜 원하는 데이터 추출하시면 될 것 같습니다.
    # 주가
    =INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code=005930","table",5), 2, 2)
    
    # 시가총액
    =INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code=005930","table",5), 5, 2)/10000
    
    # 매출액
    =INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code=005930","table",5), 7, 2)/10000
    
    # 영업이익
    =INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code=005930","table",5), 8, 2)/10000
    
    # 영업이익율
    =INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code=005930","table",5), 8, 2)/INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code="&$D16,"table",5), 7, 2)
    
    # PER
    =INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code=005930","table",5), 14, 2)
    • 동일업종 PER, 외국인소진율, 배당수익률
      • 이 데이터들은 불러온 숫자를 바로 사용할 수 있는 위 데이터들과 달리 문자가 섞여있기 때문에 SUBSTITUTE 함수를 활용하여 숫자만 추출한 뒤, ROUND 함수를 통해 소수점 첫 번째 자리까지만 불러줍니다.
    # 동일업종 PER
    =IF(SUBSTITUTE(SUBSTITUTE(INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code=005930","table",10),1,2),"*",""),"배","")="N/A","-",round(SUBSTITUTE(SUBSTITUTE(INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code=005930","table",10),1,2),"*",""),"배",""),1))
    
    # 외국인소진율
    =IF(SUBSTITUTE(INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code=005930","table",7), 3, 2),"*","")="N/A","-",round(SUBSTITUTE(INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code=005930","table",7), 3, 2),"*",""),3))
    
    # 배당수익률
    =IF(SUBSTITUTE(INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code=005930","table",9),4,2),"*","")="N/A","-",round(SUBSTITUTE(INDEX(IMPORTHTML("https://finance.naver.com/item/main.naver?code=005930","table",9),4,2),"*",""), 3))

     


     이렇게 제가 원하는 기업의 주식 평가를 위한 다양한 데이터를 야후 파이낸스, 구글 파이낸스, 네이버 증권 등의 홈페이지에서 실시간으로  데이터를 불러와서 구글 스프레드시트에서 확인하고 비교하고 있습니다.

     

     비슷한 방법으로 각자 원하시는 기업의 데이터를 편하게 확인하시길 바랍니다!