관심 종목 트렌드 관측을 자동화 해놓기(컴알못 이지만, 구글시프레드 시트의 힘으로. 자동 수집 후. 메일링까지).

2020. 11. 11. 11:52자동화

올해 들어 업무량이 늘어나면서 덕질의 시간이 줄었다.
정보 수집 노가다에 익숙한 탓인지 나만의 대시보드의 필요성을 느끼지 못했는데. 자원의 부족이 필요성을 만들었다.
컴알못이지만, 생존을 위해 도전.

주식 거래를 자주하는 편은 아니어서 종목별 추세를 주기적으로 관측하는 걸로 매수 기회를 찾는다.
숫자의 변화라는 게 참 재미있는게. 관측 주기 그리고 정렬 주기에 따라 다른 의견을 제시하게 된다.
그래서 그런지 회사에서도 루틴은 지키되 각자의 인사이트를 존중하는 편. 

일단 해보자 하는 것은 몇 개 종목의 일간 종가와 거래량을 기간 별로 적어두고. 내가 열어볼 때마다 데이터를 갱신하여 그래프를 그릴 수 있도록 하는 것.

- 구글 파이낸스의 함수 사용법 및 위키 찾아두기. 
- 종목의 티커 찾아두기
- 일간 갱신 방법 찾기

구글의 기능을 정의한 블로그는 수도 없이 많지만, 역시 원본의 정보가 최고,
support.google.com/docs/answer/3093281?hl=ko

 

일단 구글 스프레드 시트를 하나 만들어 두고.

 

여기까지 오면 일단 절반 정도(?)는 해낸 거니까 내가 보고 싶은 종목의 정보를 찾아보기.
해외 주식, 국내 주식 관계 없이. 해당. 유가 증권의 거래 시장(코스닥,나스닥 같은)과 해당 종목의 티커(종목구분자. 국내 시장은 숫자로 되어있지만 해외의 경우 알파벳 약자로 되어있는 경우도 있다). 

예를 들어 코스닥의 웹젠이라하면.

- 코스닥의 영문 표기는 -> KOSDAQ
- 웹젠의 티커는 -> 069080
종목 번호가 궁금할 땐 네이버 증권이나 구글에서 해당 종목을. 검색하면 손쉽게,.

 

 

일단 필요한 정보는 모두 찾았으니. 잘 작동(?) 하는지 구글스프레드시트에서. 테스트.

위의 예제를. 보면 

엑셀의 그것과 거의 같다.
미리 현재가격 조회만 써보기. 위의 예시에서. 티커 + 불러올 컬럼(예를 들면, 가격, 거래량 같은)명만 입력하면 현재가를 불러온다. 
=GOOGLEFINANCE("KOSDAQ:069080", "PRICE")

얘를 복붙해보면...

영롱하다...성공.

좀더 심화해서... 시계열로 볼 수 있게. 가긴 별 데이터를 불러와 보자.
위에서 적은 함수에서 시작일과 종료일을 적어주면 된다(?). 다만..위의 숫자 형식을 따르면 이 친구가 텍스트로 인지를 하니 꼭 "/"를 사용해서 적어주자.

=GOOGLEFINANCE("KOSDAQ:069080", "PRICE", "1/1/2020", "9/11/2020")

얘를 다시 복붙해보면...

 

속성의 종류는 아래 있는 것들을 잘 골라서 쓰면 된다. 

  • 실시간 데이터의 경우 다음 중 하나를 속성으로 사용할 수 있습니다.

    • "price" - 실시간 가격 정보로 최대 20분까지 지연됩니다.

    • "priceopen" - 개장 시점의 가격입니다.

    • "high" - 현재 날짜의 최고가입니다.

    • "low" - 현재 날짜의 최저가입니다.

    • "volume" - 현재 날짜의 거래량입니다.

    • "marketcap" - 주식의 시가 총액입니다.

    • "tradetime" - 마지막 거래 시간입니다.

    • "datadelay" - 실시간 데이터의 지연 정도입니다.

    • "volumeavg" - 일일 평균 거래량입니다.

    • "pe" - 가격 대 수익률입니다.

    • "eps" - 주당 순이익입니다.

    • "high52" - 52주 최고가입니다.

    • "low52" - 52주 최저가입니다.

    • "change" - 전 거래일 마감 이후의 가격 변동입니다.

    • "beta" - 베타 값입니다.

    • "changepct" - 전 거래일 마감 이후 주식 가격의 백분율 변동입니다.

    • "closeyest" - 전일 종가입니다.

    • "shares" - 발행 주식 수입니다.

    • "통화" - 유가증권이 거래되는 통화입니다. 통화에는 거래 기간이 없으므로 이 인수에 대해 open, low, high 또는 volume을 사용하면 결과가 반환되지 않습니다.

  • 이전 데이터의 경우 다음 중 하나를 속성으로 사용할 수 있습니다.

    • "open" - 지정한 날짜의 개장가입니다.

    • "close" - 지정한 날짜의 종가입니다.

    • "high" - 지정한 날짜의 최고가입니다.

    • "low" - 지정한 날짜의 최저가입니다.

    • "volume" - 지정한 날짜의 거래량입니다.

    • "all" - 위의 모든 속성입니다.

  • 뮤추얼 펀드 데이터의 경우 다음 중 하나를 attribute로 사용할 수 있습니다.

    • "closeyest" - 전일 종가입니다.

    • "date" - 순 자산 가치가 보고된 날짜입니다.

    • "returnytd" - YTD(연간) 총 수익입니다.

    • "netassets" - 순 자산입니다.

    • "change" - 가장 최근에 기록한 순 자산 가치와 그 직전에 기록한 순 자산 가치 간의 값 변동입니다.

    • "changepct" - 순 자산 가치의 백분율 변동입니다.

    • "yieldpct" - 지난 12개월 동안 배분된 수입을 모두 합한 금액(주식 배당금과 고정 수입 이자 지급액)에 순 자산 가치 증가분을 더한 다음 전월 순 자산 가치로 나눈 배분율입니다.

    • "returnday" - 1일 총 수익입니다.

    • "return1" - 1주 총 수익입니다.

    • "return4" - 4주 총 수익입니다.

    • "return13" - 13주 총 수익입니다.

    • "return52" - 52주(연간) 총 수익입니다.

    • "return156" - 156주(3년) 총 수익입니다.

    • "return260" - 260주(5년) 총 수익입니다.

    • "incomedividend" - 최근 현금 배분액입니다.

    • "incomedividenddate" - 최근 현금 배분 날짜입니다.

    • "capitalgain" - 최근 자본 이득 배분액입니다.

    • "morningstarrating" - Morningstar의 'star' 등급입니다.

    • "expenseratio" - 펀드의 비용 비율입니다.

 

복수 개의 속성을 한 번에 긁어오면 데이터 정리가 용이할 것 같은데... 
일단, 과거 데이터는 속성을 all로 지정하면 기본 정보를 한 번에 긁어오게 되어 있으니 그것을 사용. 

 

그래프 그리기와 최대값 등을 정리해 놓고 싶은데 오늘은 시간을 다 썼고. 아마도 금주 내 진행.
- 다음 일감은, 일자 별 자동화,. 그래프 그리게 하기.
- 위 내용으로 일간, 주간 트렌드 만들고.  
- 스프레드 시트 데이터 메일 날리게 하기


 

 


안녕하세요, 머니그루브입니다.

 

 

많은 분들처럼 뒤늦게 자본주의 세상에 적응하며 살기 위해 그나마 제가 이해할 수 있는 시장(IT, 게임, 바이오)을 중심으로 리서치하고 시장의 미래와 개별 종목을 기록하고 있습니다.

머니그루브 페이스북

https://www.facebook.com/moneygrooveplus

머니그루브 트위터

https://twitter.com/moneygroove_twt