반응형

파이썬 Matplotlib을 이용한 데이터 시각화 프로그래밍12 - 주가 캔들 그리기




이왕 Matplotlib을 응용하는 예로 주식 가격을 예로 들었으므로, 주가 캔들을 그리는 방법에 대해 알아겠습니다. 주식에 전혀 관심 없는 분들도 있겠지만 주식을 조금이라도 해본 분들은 주가 캔들에 대해 많이 알고 있을거라 생각합니다.


흔히 주가 캔들을 양봉, 음봉으로 부르기도 하는데, 우리나라 주식 시장에서 빨간색은 좋은 것이고, 파란색은 별로 안좋은 것이죠. 무슨 말인고 하면 빨간색은 주가가 전날에 비해 올라갔다는 말이고, 파란색은 전날에 비해 내려갔다는 의미입니다.


먼저, 11편에서 다루었던 코드를 약간 수정하여 삼성전자 주가의 1달치를 가져와서 주가 캔들을 그려보는 코드를 작성합니다.




코드의 주요 부분만 살펴봅니다.


>>> import matplotlib.finance import candlestick_ohlc


주가 캔들을 그려주기 위해 matplotlib의 필요한 모듈을 import 합니다.



>>>  ohlc = []

     for i in range(len(date)):

         stock_data = date[i], openp[i], high[i], low[i], closep[i], volume[i]

         ohlc.append(stock_data)


주가를 뽑아낸 기간 동안 날짜, 시작가, 고가, 저가, 종가, 거래량 순으로 묶어 ohlc의 요소로 추가합니다.



>>> candlestick_ohlc(ax, ohlc, width=0.5, colorup='r', colordown='b')


주가 캔들을 그립니다. 그릴 공간은 서브플롯 ax, 데이터는 ohlc, 주가 캔들의 폭은 0.5, 양봉은 빨간색으로, 음봉은 파란색으로 그려라는 의미입니다.



>>> ax.xaxis.set_major_formatter(mdates,DateFormatter(%Y-%m-$d))

>>> ax.xaxis.set_major_locator(mticker.MaxNLocator(10))


그래프 좌표의 x축을 설정합니다. 눈금에 표시할 라벨을 날짜 형식으로 지정하고, 눈금의 개수를 10개 정도로 합니다.

이 값을 변경해보면 그래프의 모양이 바뀌는 것을 알 수 있습니다.


코드 실행 결과는 아래와 같습니다.




반응형

+ Recent posts