[Python] 간단한 딥러닝 코인 예측 프로그램 만들기 (기존에 올렸던 코드의 timezone 오류 수정)

저번에 파이썬을 사용한 딥러닝 코인 예측 코드를 포스팅한 적이 있다.

그런데 최근들어 해당 코드를 그냥 실행하면 timezone 오류가 발생하게되어 코드를 수정했고 기존의 글도 수정하긴 했지만 그래도 새글로도 다시한번 포스팅하겠다.

https://colab.research.google.com/drive/1mnsqaE1AowwlQ9456kpBAOL7ranBVP0J?usp=sharing

위 링크를 통해 구글 colab으로 접속해 코드를 바로 사용해도 좋고 아래의 코드를 직접 복붙해도 된다.

1.

1
2
!pip install pyupbit
!pip install pykrx
cs

2.

1
2
3
4
import pyupbit
from pykrx import stock
from fbprophet import Prophet
from fbprophet.plot import add_changepoints_to_plot
cs

3.

1
2
3
4
# BTC 최근 200시간의 데이터 불러옴
 
dd = pyupbit.get_ohlcv(“KRW-BTC”, interval=“minute60”)
df = dd.tz_localize(None)
cs

이부분에서 원하는 코인과 시간봉 수정을 하면 된다.

이더리움을 확인하고 싶으면 KRW-ETH로 그리고 4시간봉으로 확인하고 싶으면 minute240으로.

4.

1
2
3
4
5
# 시간(ds)와 종가(y)값만 남김
df = df.reset_index()
df[‘ds’= df[‘index’]
df[‘y’= df[‘close’]
data = df[[‘ds’‘y’]]
cs

5.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#학습
#튜닝 전
# model = Prophet()
# model.fit(data)
 
 
#학습
#튜닝 후
model = Prophet(
    seasonality_mode=‘multiplicative’,
    changepoint_prior_scale=0.5,
    changepoint_range=0.9,
)
model.fit(data)
cs

6.

1
2
3
4
#24시간 예측
future = model.make_future_dataframe(periods=24, freq=‘H’)
 
forecast = model.predict(future)
cs

24시간 이상을 예측하고 싶다면 값을 조정하면 된다.

하지만 당연히 예측 시간이 늘어나면 늘어날 수록 정확도는 보장할 수 없게 된다.

7.

1
2
3
# 그래프1
fig1 = model.plot(forecast)
#a = add_changepoints_to_plot(fig1.gca(), model, forecast)
cs

8.

1
2
# 그래프2
fig2 = model.plot_components(forecast)
cs

9.

1
2
3
4
5
6
7
#가격 조회
nowValue = pyupbit.get_current_price(“KRW-BTC”)
closeValue = forecast[‘yhat’].values[1]
 
print(“현재가 : “ , nowValue)
print(“24시간뒤의 가격: “, closeValue)
 
cs

10.

1
forecast
cs

이 코드를 사용해서 얻은 값을 절대적으로 신뢰하면 당연히 안된다.

그냥 참고용도로만 사용하시길..