파이썬 이동 평균선 그리는 예제입니다. colab에서 소스코드를 복사하여 붙여넣고 실행하시면 아래 결과가 보입니다. 빨간 포인트 시점에서 매입하고 파란 포인트에서는 매도하는 방법입니다.
파이썬 이동 평균선, 골든/데드 크로스 그리기
5일 60일 평균선을 그리고 교차하는 지점을 표시합니다.
코랩에서 구글 계정으로 로그인하시고 “+코드”를 클릭하시고 아래 코드를 붙여넣습니다. 왼쪽의 동그라미안 삼각형을 클릭하면 실행되고 그래프가 표시됩니다.
‘005930’(삼성전자) 가 아닌 원하시는 종목 코드, 기간을 넣고 실행하시면 해당 종목의 그래프를 확인하실 수 있습니다.
종목 코드 확인하기
!pip install finance-datareader import pandas as pd import FinanceDataReader as fdr import matplotlib.pyplot as plt # 데이터 수집 df = fdr.DataReader('005930', '2023-03-15', '2024-03-14') # 이동 평균선 계산 df['MA5'] = df['Close'].rolling(window=5).mean() df['MA60'] = df['Close'].rolling(window=60).mean() # 골든 크로스와 데드 크로스 식별 df['Golden Cross'] = ((df['MA5'] > df['MA60']) & (df['MA5'].shift(1) <= df['MA60'].shift(1))) df['Dead Cross'] = ((df['MA5'] < df['MA60']) & (df['MA5'].shift(1) >= df['MA60'].shift(1))) # 시각화 plt.figure(figsize=(14, 7)) plt.plot(df.index, df['Close'], label='Close Price', color='black', alpha=0.6) plt.plot(df.index, df['MA5'], label='5-Day MA', color='green', alpha=0.7) plt.plot(df.index, df['MA60'], label='60-Day MA', color='red', alpha=0.7) # 골든 크로스 포인트 표시 plt.scatter(df[df['Golden Cross']].index, df['MA5'][df['Golden Cross']], color='red', label='Golden Cross', marker='^', alpha=1) # 데드 크로스 포인트 표시 plt.scatter(df[df['Dead Cross']].index, df['MA5'][df['Dead Cross']], color='blue', label='Dead Cross', marker='v', alpha=1) plt.title('Samsung Electronics (005930) - Moving Averages with Golden/Dead Crosses') plt.legend() plt.show()
오늘자 골든크로스/데드크로스 종목 추출 파이썬 코드
퀀트를 위한 파이썬FinanceDataReader
퀀트를 이용한 파이썬 이동 평균선
차트 기반 퀀트 투자
퀀트의 전설들과 실패한 유명인