커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
2주차 숙제를 했습니다.
[왕초보] ChatGPT 300% 활용하기 v0
2주차
북마크
방*민
댓글
3
추천
0
조회수
10
조회수
10
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.



https://colab.research.google.com/drive/11mN_-M26LmQD93kWL73OmmUlVEU1TU_c?usp=sharing



스파르타 즉문즉답스파르타 즉문즉답



작성한 코드 및 에러 메세지

오류 발생 시, 작성한 코드 전체와 에러 메시지를 첨부해 주세요.

Tip 1) </> 아이콘을 눌러 코드박스를 만들어 보세요.

!pip install finance-datareader

import FinanceDataReader as fdr
import datetime
import pandas as pd
import matplotlib.pyplot as plt

# Define the start and end dates for data retrieval
end_date = datetime.datetime.now()
start_date = end_date - datetime.timedelta(days=365)

# Define the target stock (e.g., Kakao's stock code is 035720)
타겟주식 = '035720'

# Retrieve stock data
stock_data = fdr.DataReader(타겟주식, start_date, end_date)

# Calculate moving averages
stock_data['MA20'] = stock_data['Close'].rolling(window=20).mean()
stock_data['MA60'] = stock_data['Close'].rolling(window=60).mean()

# Identify Golden Cross points
stock_data['GoldenCross'] = (stock_data['MA20'] > stock_data['MA60']) & (stock_data['MA20'].shift(1) <= stock_data['MA60'].shift(1))

# Calculate MACD and Signal lines
stock_data['EMA12'] = stock_data['Close'].ewm(span=12, adjust=False).mean()
stock_data['EMA26'] = stock_data['Close'].ewm(span=26, adjust=False).mean()
stock_data['MACD'] = stock_data['EMA12'] - stock_data['EMA26']
stock_data['Signal'] = stock_data['MACD'].ewm(span=9, adjust=False).mean()

# Plot the stock data
plt.figure(figsize=(12, 8))

# Plot Closing Price and Moving Averages
plt.subplot(2, 1, 1)
plt.plot(stock_data.index, stock_data['Close'], label='Close', color='blue')
plt.plot(stock_data.index, stock_data['MA20'], label='20-day MA', color='red')
plt.plot(stock_data.index, stock_data['MA60'], label='60-day MA', color='green')
plt.scatter(stock_data.index[stock_data['GoldenCross']], stock_data['MA20'][stock_data['GoldenCross']], color='red', marker='^', label='Golden Cross')
plt.title('Stock Price and Moving Averages')
plt.legend(loc='best')
plt.grid()

# Plot MACD and Signal lines
plt.subplot(2, 1, 2)
plt.plot(stock_data.index, stock_data['MACD'], label='MACD', color='red')
plt.plot(stock_data.index, stock_data['Signal'], label='Signal', color='green')
plt.title('MACD and Signal Line')
plt.legend(loc='best')
plt.grid()

plt.tight_layout()
plt.show()



추가적으로 코드를 삽입해서 숙제를 수정해 보았습니다.

이렇게 화면에 나타나면 충분한가요? 아님 수정이 더 필요할까요?



취소
 공유
취소
댓글 0
댓글 알림
나의얼굴