파이썬 pyplot 캔들스틱 차트, 스토캐스틱 RSI 차트

캔들스틱 차트를 파이썬 matplotlib의 pyplot으로 그릴 수 있다면 다른 기술적 분석 지표들과 함께 시장 상황을 복합적으로 분석할 수 있습니다. 이번 포스팅에서는 캔들스틱 차트와 스토캐스틱 RSI를 함께 그리는 방법을 알아보겠습니다. 핵심은 두 차트의 시간을 맞춰줘야 한다는 것입니다.

 

 


글의 순서

캔들스틱 차트와 스토캐스틱 RSI 간의 날짜 맞추기
캔들스틱 차트의 몸통 두께
두 차트의 간격을 조절하는 plt.subplots_adjust
파이썬 코드 : 캔들스틱 차트와 스토캐스틱 RSI 비교


캔들스틱 차트와 스토캐스틱 RSI 간의 날짜 맞추기

두 그래프의 x축을 동일한 날짜 간격으로 설정해야만 헷갈리지 않고 시장 상황을 분석할 수 있습니다. 캔들스틱 차트의 x축 레이블을 날짜로 설정하고, fig, axs = plt.subplots(2, 1, figsize=(12, 10), sharex=True)이라는 구문으로 두 그래프의 x축을 공유할 수 있도록 설정했습니다. 이렇게 하면 두 그래프의 날짜 간격이 일치하게 됩니다.

또한, df[‘Date’]를 사용하여 x축 레이블을 날짜로 설정하고, 각 날짜의 캔들스틱 차트를 그릴 수 있도록 하였습니다. 이때, 그래프에서 보여주는 날짜의 시작점과 끝점을 axs[1].set_xlim([tstt_KST, tend_KST])로 설정하여 날짜 간격이 맞출 수 있도록 하였습니다.


캔들스틱 차트의 몸통 두께

지난 포스팅에서 알아봤던 것처럼 candle_width = max(0.1, 0.5 * (axs[1].get_window_extent().width / len(df)))라는 구문을 사용하였습니다. 이는 그래프의 너비를 가져와 len(df)로 나누어서 그래프의 넓이에 맞게 캔들스틱의 몸통 두께를 설정합니다. 당연히 그래프의 너비가 달라지고, 캔들의 개수가 달라지면 캔들스틱의 두께가 그에 맞게 동적으로 설정됩니다.


두 차트의 간격을 조절하는 plt.subplots_adjust

plt.subplots_adjust(hspace=0.05)를 추가하여 subplot 간의 수직 간격을 설정했습니다. hspace 값은 두 그래프 사이의 간격을 제어하며, 이 값을 줄이면 그래프 간의 간격이 좁아집니다. hspace의 기본값이 0.2이니까, 이 구분을 생략하면 0.05로 설정했을 때보다 간격이 4배로 커집니다.


파이썬 코드 : pyplot으로 그리는 캔들스틱, 스토캐스틱 RSI 차트

지금까지 캔들스틱 차트와 스토캐스틱 RSI와 같은 기술적 지표를 동시에 그리는데 중요한 사항을 짚어봤습니다. 이를 종합한 파이썬 코드를 아래의 실습코드에 나타내었습니다.

pyplot 캔들스틱 차트, 스토캐스틱 RSI 차트


마치며 …

이번 포스팅에서는 캔들스틱 차트와 스토캐스틱 RSI를 함께 그리는 방법을 알아보았습니다. 이처럼 캔들스틱 차트를 파이썬 matplotlib의 pyplot으로 그릴 수 있다면 다른 기술적 분석 지표들과 함께 시장 상황을 복합적으로 분석할 수 있습니다. 핵심은 두 차트의 시간을 맞춰줘야 한다는 것입니다. 이 밖에도 보다 눈으로 확인하기 편하도록 캔들스틱의 두께를 동적으로 조절하는 방법, 각 그래프간 간격을 조절하는 방법도 적용해보시기 바랍니다.

 

 

함께 참고하면 좋은 글
캔들 차트의 의미와 파이썬 pyplot으로 그리는 캔들스틱 차트
스토캐스틱 RSI, 파이썬 바이낸스 API로 시계열 데이터 분석
하이킨 아시 차트, 파이썬 바이낸스 API로 시계열 데이터 분석
파이썬 바이낸스 API로 시계열 데이터를 가져오는 파이썬 프로그래밍
파이썬 바이낸스 API와 판다스 캔들 스틱 차트로 시계열 데이터 분석
mplfinance 캔들 차트 스타일
캔들 차트 스타일 변경 (mplfinance, customization)
파이썬 바이낸스 API, mplfinance로 캔들 차트 파라미터 연습
시계열 데이터 분석 : 추세분석 지표 6가지


참고자료

▶ Wikipedia, Candlestick chart

Leave a Comment