日々ブログ

当サイトは、アフィリエイトプログラムにより商品をご紹介しています

【プログラミング】bitcoinの価格を機械学習で予測してみた

暗号資産の価格予測はとても難しい。 多くの人が暗号資産に投資して損をしていていることからも分かります。 一方で、一部の人は暗号資産で儲けています。 勘やセンスに基づいて価格を予測できないなら、機械に予測してもらえばいいじゃない。 早速やってみました。 結構同じこと考えるは多い気がする。

fbprophetで予測

fbprophetは時系列データを与えば予測してくれるライブラリです。 とにかく、結果が早く欲しいので今回はこちらを使いました。(この根性が行けない気がする)

fbprophetのインストール

pipを使えばインストールできます。condaの人は、conda使ってください。

pip install fbprophet

conda の人用

conda install -c conda-forge fbprophet

結構インストールでコケる人がいるようですが、 エラー文を読んで対処してください。 自分はpystanのバージョンエラーが出ていたので下記を事前にすれば、無事完了しました。

pip install pystan==2.19.1.1

fbprophetの適用結果

fbprophetを適用するためには、予め決まった形式のDataFrameを作成しておく必要があります。 'ds'に時刻情報を、'y'に予測したい情報(今回は売買価格)を入れればあとは定形文で動きます。 DataFrame構造

定形文は下記です。 中身は私も詳しく知りません。

from fbprophet import Prophet

forecast_machine=Prophet()
forecast_machine.fit(df_bitcoin_prophet)
future_price = forecast_machine.make_future_dataframe(periods=1)
future_price.tail()

result = forecast_machine.predict(future_price)
result[['ds', 'yhat', 'yhat_lower', 'yhat_upper']].tail()

今回は2年分のデータをそのまま入れました。 データの取得方法は下記の過去記事を参照ください。

xinformation.hatenadiary.com

実測データが黒点で青い線とその幅が予測結果です。 手早く試せる反面、信頼性はまゆつばなので、これを信じて売買する気にはならない。 もう少し勉強かな。 しばらく、予測させてみて、誤差が少ないかどうかも継続的に評価して行こうかな (データ数が多いと、やっぱり単純平均に近づくような予測をするのかな。) 予測結果