안녕하세요. 투자의 확률을 분석하는 투자자 인천고래입니다.
오늘은 파이썬을 이용한 엔벨로프를 차트로 만들어보는 시간을 가져보도록 하겠습니다.
주가는 이전과 같이 엑셀파일을 로드하는 방식이 아닌 FinanceDataReader를 사용하도록 하겠습니다.
엔벨로프 차트 만들기
오늘 만들고자 하는 프로그램의 기본적인 틀은 아래와 같습니다.
- LG전자 주식 정보 가져오기 - FinaceDataReader
- 차트 그리기 - matplotlib
- 엔벨로프 계산하기 - pandas
import FinanceDataReader as fdr
import matplotlib.pyplot as plt
import pandas as pd
# 한글 폰트 설정
plt.rcParams['font.family'] = 'Malgun Gothic'
# LG전자 주식 정보 가져오기
lg_stock = fdr.DataReader('066570', '2021-01-01') # 기간 설정에 따라 날짜를 변경하십시오.
# 엔벨로프 계산
lg_stock['MA'] = lg_stock['Close'].rolling(window=135).mean()
lg_stock['Upper_3'] = lg_stock['MA'] * (1 + 0.03)
lg_stock['Lower_3'] = lg_stock['MA'] * (1 - 0.03)
lg_stock['Upper_7'] = lg_stock['MA'] * (1 + 0.07)
lg_stock['Lower_7'] = lg_stock['MA'] * (1 - 0.07)
# 차트 그리기
fig, ax = plt.subplots(figsize=(12, 8))
ax.plot(lg_stock.index, lg_stock['Close'], label='LG전자')
ax.plot(lg_stock.index, lg_stock['MA'], label='MA (135)')
ax.plot(lg_stock.index, lg_stock['Upper_3'], linestyle='--', label='Upper 3%')
ax.plot(lg_stock.index, lg_stock['Lower_3'], linestyle='--', label='Lower 3%')
ax.plot(lg_stock.index, lg_stock['Upper_7'], linestyle='--', label='Upper 7%')
ax.plot(lg_stock.index, lg_stock['Lower_7'], linestyle='--', label='Lower 7%')
ax.set_title('LG전자 주식 차트 및 엔벨로프')
ax.set_xlabel('Date')
ax.set_ylabel('Price')
ax.legend()
plt.show()
코드 내용을 살펴보면 60일선이나 120일선이 아닌 135일선을 사용하였고 (주봉에 특화된 일봉에서의 수치)
상한선과 하한선 2개의 선을 만드는 것이 아닌 3%, 7%에 해당하는 각각의 상한선 하한선을 만들었습니다.
30% 상한가룰에서도 이전의 15% 상한가 룰이 있을 때와 마찬가지로
3%에서 저항을 맞는 경우와 7%에서 저항을 맞는 경우가 많기 때문에
2가지 모두 다 상한선과 하한선을 표시하여 주가의 흐름을 파악하기 위함입니다.
엔벨로프 차트 결과물
위의 코드를 실행하면 아래와 같은 결과물을 얻을 수 있습니다.
오늘은 간단한 파이썬 코드를 이용해서 데이터를 불러오고 엔벨로프가 적용된 차트를 만들어보았습니다.
오늘도 제 글을 읽어주신 모든 분들께 감사의 말씀을 드립니다. 감사합니다.
'Quant Stock' 카테고리의 다른 글
파이썬 - 스토캐스틱(Stochastic Oscillator)이해와 차트 만들기 (0) | 2023.03.20 |
---|---|
파이썬 - RSI(Relative Strength Index, 상대강도지수) 차트 만들기 (0) | 2023.03.19 |
파이썬 - 이동평균선 차트 만들기 (plt.axes에 대한 설명 포함) (0) | 2023.03.19 |
파이썬 - rolling 함수, 주가분석, 이동표준편차, 표준편차에 대한 이해 (0) | 2023.03.16 |
볼린져밴드의 이해 - 파이썬 코드 (비트나인.xlsx 데이터) (0) | 2023.03.14 |
댓글