
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
결과값이 부족하지만 제출을 하긴 했는데요
"완벽한 코드를 생성하는 것이 아니라,
"ChatGPT에 원하는 결과가 나오도록 질문을 하는 것이 주 목적이다"라는 강사님 말씀에!!
갑자기 반짝 떠오르는 추가질문을 해봤더니
골든, 데드크로스까지 코드생성이 잘 되어 그래프가 생성되기는 했습니다
그런데
실행결과 하단에 ERROR라는 문구가 나옵니다
그래프도 잘 나온 것 같은데 어디 부분이 오류인가요?
====== ChatGPT 질문은 다음 순서로 진행하였습니다
1) finance data reader를 사용해서 최근 1년간의 녹십자의 주식 데이터를 가져오는 파이썬 코드를 만들어줘
2) 이 데이터로 20일 이동평균선과 60일 이동평균선을 그려주는 파이썬 코드를 만들어줘
3) 그 이동평균선에 골든크로스와 데드크로스를 표시하는 파이썬 코드를 만들어줘
작성한 코드 및 에러 메세지
!pip inimport FinanceDataReader as fdr
import matplotlib.pyplot as plt
# 주식 코드 및 시작일, 종료일 설정
stock_code = '005250' # 녹십자 주식 코드
start_date = '2022-01-01'
end_date = '2023-01-01'
# FinanceDataReader를 사용하여 주식 데이터 가져오기
stock_data = fdr.DataReader(stock_code, start_date, end_date)
# 이동평균 계산
stock_data['MA20'] = stock_data['Close'].rolling(window=20).mean()
stock_data['MA60'] = stock_data['Close'].rolling(window=60).mean()
# 골든크로스와 데드크로스 신호 계산
stock_data['GoldenCross'] = (stock_data['MA20'] > stock_data['MA60']) & (stock_data['MA20'].shift(1) <= stock_data['MA60'].shift(1))
stock_data['DeadCross'] = (stock_data['MA20'] < stock_data['MA60']) & (stock_data['MA20'].shift(1) >= stock_data['MA60'].shift(1))
# 그래프 그리기
plt.figure(figsize=(12, 6))
plt.plot(stock_data['Close'], label='주가', alpha=0.7)
plt.plot(stock_data['MA20'], label='20일 이동평균선', linestyle='--')
plt.plot(stock_data['MA60'], label='60일 이동평균선', linestyle='--')
# 골든크로스와 데드크로스 표시
plt.scatter(stock_data.index[stock_data['GoldenCross']], stock_data['MA20'][stock_data['GoldenCross']], marker='^', color='g', label='Golden Cross')
plt.scatter(stock_data.index[stock_data['DeadCross']], stock_data['MA20'][stock_data['DeadCross']], marker='v', color='r', label='Dead Cross')
# 그래프 스타일 및 범례 설정
plt.title('녹십자 주식가격 및 이동평균선 (1년간) with Golden Cross and Dead Cross')
plt.xlabel('날짜')
plt.ylabel('가격 (원)')
plt.legend()
plt.grid(True)
plt.show()

