fbprophet으로 파이썬에서 비트코인 ​​가격의 시계열 분석?!

fbprophet을 사용하여 Python에서 Bitcoin의 가격을 분석합니까?

경고: 이 간행물은 비트코인 ​​투자 또는 투자하지 않는 것에 대한 권장 사항이 아닙니다. 이에 대해 더 알고 싶다면 해당 주제에 대한 경험이 있는 정식 인증 전문가를 찾으십시오!

동기: 저는 시계열을 연구하고 있었고 시계열 분석을 위한 Python 라이브러리인 fbprophet을 사용하는 것이 쉬운 것을 보고 데이터 세트에 적용하기로 결정했습니다. LinkedIn을 통해 가상 비트코인 ​​통화의 가치가 100이라는 소식을 받았습니다. 그리고 이것은 fbprophet을 사용하여 생각하게 했습니다. 1년에 해당 통화의 가치는 얼마일까요?

https://www.seudinheiro.com/2020/bolsa-dolar/dolar-bitcoin-criptomeda-100-mil-reais/

https://www.moneytimes.com.br/bitcoin-a-r-100-mil-entenda-o-sucesso-da-corretora-brasileira-mercado-bitcoin/

비트코인?

분산형 가상 통화이며 중앙 은행이 통제하지 않고 전 세계 수천 대의 컴퓨터에서 생산되며 1비트코인은 R$ 98,278.07 레알(2020년 12월 5일)의 가치가 있습니다.

https://exame.com/mercados/entenda-o-que-e-bitcoin/

시계열 형식으로 비트코인 ​​값을 얻는 방법은 무엇입니까?

fbprophet을 사용하려면 시계열이 필요하고 조사를 시작했고 coinbase API(암호화폐 거래 플랫폼)를 찾았고 날짜 매개변수와 함께 HTTP 요청을 사용하면 해당 날짜의 실제 비트코인 ​​가격을 알 수 있습니다. .
더 쉽게 만들기 위해 Python에서 coinbase API를 사용하는 데 도움이 되는 라이브러리가 있습니다.

GPU(Video Card)가 활성화된 구글 Colab 환경을 사용했는데...

PIP를 통해 Coinbase 라이브러리 설치:
!pip install coinbase
코인베이스에서 API 액세스 키를 생성한 다음 'xpto123'을 제공된 값으로 바꿉니다.

api_key =  'xpto123'
api_secret = 'xpto123'


라이브러리를 Python으로 가져옵니다.

from coinbase.wallet.client import Client
client = Client(api_key, api_secret)


날짜를 사용할 것이므로 Datetime 라이브러리를 가져왔습니다.
import datetime
특정 날짜에 비트코인의 실제 가치를 얻는 함수를 만들었습니다.

def price_bitcoin_in_day(date_search):
    return float((client.get_spot_price(currency_pair='BTC-BRL', 
      date=date_search)).amount)


일정 범위의 비트코인 ​​값을 가져오는 함수를 만들었습니다.

import pandas as pd
#days = number of days searcheddef
data_bitcoin_price_in_days(days):
  # The first surveyed date is today (December 5, 2020)  date_search = datetime.date.today() 

  #price is the price in reais found.  
price = price_bitcoin_in_day(date_search)  
  #creating the list with the first values
  data = [{'day': date_search, 'price': price}]  
  # informing the number of days to be searched
  for i in range(1, days):    
      print(i)       
      # Previous day's date
      date_search = date_search - datetime.timedelta(days=1)    
      #Researching the price...
      price = price_bitcoin_in_day(date_search)      
      #Added the new values searched and their dates to the list
      data = data + [{'day' : date_search, 'price' : price}]  

#returned the complete list
return data


지난 10년(4015일) 검색:
dados = data_bitcoin_price_in_days(4015)
저는 데이터 프레임(Pandas 라이브러리의 데이터 구조)을 사용하는 것을 좋아해서 목록을 데이터 프레임으로 바꿨습니다.
df_dados = pd.DataFrame(dados)
FB예언?

“Prophet is a procedure for forecasting time series data based on an additive model in which non-linear trends are adjusted with annual, weekly, and daily seasonality, in addition to the effects of holidays. Works best with time series with strong seasonal effects and multiple seasons of historical data. The prophet is robust for missing data and changes in trend, and usually handles outliers well. ”



FBprophet은 Facebook 개발자 팀에서 관리하는 시계열 분석을 위한 오픈 소스 Python 라이브러리입니다.

https://facebook.github.io/prophet/

라이브러리 설치:
!pip install fbprophet
라이브러리 가져오기:
import Prophet
열 이름을 바꾸면 fbprophet은 다음 형식의 데이터 프레임만 허용합니다.
df_dados.rename(columns = {'day':'ds', 'price':'y'}, inplace = True)
모델 훈련:

m = Prophet(changepoint_prior_scale=0.15, daily_seasonality=True)
m.fit(df_dados)


다음 365일 동안의 날짜 만들기:

future = m.make_future_dataframe(periods=365)
future.tail()


향후 365일 동안 비트코인 ​​가치 예측:

forecast = m.predict(future)
forecast[['ds', 'yhat', 'yhat_lower', 'yhat_upper']].tail()




그래프 형식으로 표시:

from fbprophet.plot import plot_plotly, plot_components_plotly
plot_plotly(m, forecast)




여기서 목표는 비트코인이 흥미로운 데이터 세트를 제공할 것이라고 생각하면서 FBProphet을 사용하는 것입니다.

FBProphet 라이브러리를 사용하여 2021년 12월 5일 R$ 82,239.37 레알, 즉 1년에 R$ 16,030.70 레알의 평가절하를 예측할 수 있었습니다.

하지만,

이 모델은 비트코인의 최근 최고치를 예측할 수 없었고 예측 연도 말에 값의 불확실성이 표시되어 이 예측을 신뢰할 수 없게 만듭니다.
개인적으로 저는 이 가격 예측이 간섭할 가능성이 있는 시장을 살펴보는 데 유용하지 않다고 생각하지만, 이를 따라가면서 Facebook의 알고리즘이 어떤 것을 예측할 수 있는지, 그리고 어떻게 하는지 보는 것은 흥미로울 것입니다.

참고: Facebook은 최근 PyTorch를 사용하는 FBProphet 및 AR-Net에서 영감을 받은 신경망을 사용하여 시계열을 분석하기 위한 라이브러리인 NeuralProphet을 출시했습니다.

https://github.com/ourownstory/neural_prophet

나는 그것이 매우 최근에 사용되는 변화와 진화의 대상이라고 생각합니다 …

참조:

https://towardsdatascience.com/bitcoin-predictive-price-modeling-with-facebooks-prophet-b66efd0169a0

https://towardsdatascience.com/apple-stock-and-bitcoin-price-predictions-using-fbs-prophet-for-beginners-python-96d5ec404b77



Medium에서 저를 팔로우하세요 :)

좋은 웹페이지 즐겨찾기