[Python!] 지옥으로 가는(?) 비트코인 가격을 예측해보자.
Prophet를 이용한 비트코인 가격 예측
이번 시간에는 지옥으로(?) 가고 있는 비트코인의 가격을 예측해 볼 계획입니다. 저는 예언 능력이 눈꼽만치도 없으니, 지난번처럼 예언자라 이름 붙은 페이스북의 Prophet을 이용해 보겠습니다.
비트코인 데이터는 여러 곳에서 제공하는데 야후 파이낸스에서 비트코인 가격 데이터를 제공하기 때문에 여기에서 가져오겠습니다. BTC-USD 가격입니다.
파이썬에서 가져오는 명령어는 다음과 같습니다.
BTC = web.DataReader('BTC-USD','yahoo',start,end)
입력
import warnings
warnings.filterwarnings("ignore")
import pandas as pd
import pandas_datareader.data as web
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
from datetime import datetime
from fbprophet import Prophet
start = datetime(2010, 1, 1)
end = datetime(2018, 11, 19)
BTC = web.DataReader('BTC-USD','yahoo',start,end)
BTC.head()
입력/출력 화면
2010년 7월 16일부터 가격이 있네요. 비트코인 시세 0.05달러. 1 BTC가 55원 정도 했나 봅니다.
그래프를 그려보겠습니다.
입력
BTC['Close'].plot(figsize=(12,6), grid=True);
입력/출력 화면
급등했다가 급격하게 장렬하게 추락하고 있습니다. 시계열 ds와 종가 y만 정리합니다.
입력
df = pd.DataFrame({'ds':BTC.index, 'y':BTC['Close']})
df.reset_index(inplace=True)
del df['Date']
df.head()
m = Prophet(daily_seasonality=True)
m.fit(df);
future = m.make_future_dataframe(periods=365)
future.tail()
forecast = m.predict(future)
forecast[['ds','yhat','yhat_lower','yhat_upper']].tail()
m.plot(forecast);
입력/출력 화면
이렇게 떨어지고 있는데, 올라간다고 나오는군요. 그동안 계속 오르는 추세였으니까 그런 것 같습니다. 이것만 보고 희망회로를 돌리면 안되기 때문에 입력 기간을 바꾸어 보겠습니다.
전망2
비트코인 가격 데이터를 2013년 1월 1일부터 입력한 결과입니다. 추세가 길지 않으니 더이상 상승하는 걸로만 나오지는 않는군요. 2015년 1월 1일부터 입력하면 또 다르게 나오겠죠?
전망3
2015년부터의 데이터를 이용하면 하락하는 추세로 나옵니다. 심지어 제로를 넘어 마이너스로 향하는... (이것이 진정한 지옥?)
입력 데이터를 어떻게 사용하느냐에 따라 저마다 다른 결과가 나오는데, 예측이란 게 얼마나 쉽지 않은 일인지 조금이나마 느껴집니다.
prophet한테 이런 예측을 맡겨도 되는 건가 싶습니다.
@yoon님 넘치는 사랑 감사합니다. 곰도뤼~
[곰돌이 명성도 55기념 이벤트] 너의 보팅을 두배로 돌려줄께~ / 스팀잇에 빛을 비춰줘~ lightsteem alpha
과거 데이터를 바탕으로 임의의 패턴을 만들어내는것 뿐이니까요. 큰의미를 부여할 필요는 없다고 봅니다~
ㄷㄷ마이너스라니....
현실이 되지는 않겠죠? 아마...
Congratulations @yoon! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :
Click here to view your Board of Honor
If you no longer want to receive notifications, reply to this comment with the word
STOP
To support your work, I also upvoted your post!
Do not miss the last post from @steemitboard:
짱짱맨 호출에 응답하여 보팅하였습니다. 꾸준한 활동을 응원합니다.
북이오(@bukio)는 창작자와 함께 하는 첫번째 프로그램을 만들었습니다. 이를 위해 첫번째 길드(Guild) 구성을 위한 공지글을 게시하였습니다. 영문 문학작품의 한글 번역에 관심이 있는 분들의 많은 참여를 바랍니다. 고맙습니다.
Hi @yoon!
Your post was upvoted by @steem-ua, new Steem dApp, using UserAuthority for algorithmic post curation!
Your UA account score is currently 4.667 which ranks you at #1629 across all Steem accounts.
Your rank has dropped 58 places in the last three days (old rank 1571).
In our last Algorithmic Curation Round, consisting of 286 contributions, your post is ranked at #52.
Evaluation of your UA score:
Feel free to join our @steem-ua Discord server
prophet한테 스팀잇도 전망도 물어봐주세요~~ㅎㅎ
넘 재미있습니다.ㅋㅋ
알겠습니다 ^^
감사합니다.ㅋ