[데이터 분석] 2. 주식 데이터 분석 #1. 삼성전자 주식 예측

  • 주식 : SMA5 이평선과 SMA30 등 이동평균선을 기준으로 크로스가 되었을 때 풀매수, 풀매도하면 됨

    단순 이동 평균(SMA, Simple Moving Average)

    • 20일 동안의 평균 이동선 : rolling(20)으로 구간 설정하고 mean()으로 평균을 냄
    • 20일 이동평균선 : 과거 20일 동안의 주가를 평균 낸 값을 계속 이어서 표시함 ➡️ 현재 주가의 괴리 차이를 추세 매매로 결정함
    • 노이즈 제거하는데 도움을 주어 가격 변동성을 낮춤
import pandas as pd
from pandas_datareader import get_data_yahoo

sam = pd.DataFrame(get_data_yahoo('005930.ks', '2020-01-01'))
import plotly.express as px
px.line(sam, x=sam.index, y='Close')

  • x : Date, 날짜
  • y : Close값
sam['sma20'] = sam['Close'].rolling(20).mean()
sam['sma100'] = sam['Close'].rolling(100).mean()

import plotly.graph_objects as go

fig = go.Figure()
fig.add_trace(go.Scatter(x=sam.index, y=sam['Close'], mode='markers'))
fig.add_trace(go.Scatter(x=sam.index, y=sam['sma20'], mode='lines'))
fig.add_trace(go.Scatter(x=sam.index, y=sam['sma100'], mode='lines'))

  • 실제 값은 scatter로 표현되었음
  • sma를 통해 실제 주가와 비교 예측.

좋은 웹페이지 즐겨찾기