Amazon Forecastを使ってむこう1年のビットコインの相場を予想してみた

2019.09.03

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Amazon Forecastが一般公開されまして機械学習界隈では様々な高尚なPoCが行われているようですが、非エンジニアとしてはもっと下世話な未来予測をしたいものです。

やってみた

2015年6月25日から時系列データがあるBitflyerのビットコイン現物価格の終値日足(1,531レコード)を使用します。

Metricsという単純な時系列を扱う予測ドメインを作ります。 デフォルトのスキーマに合わせてCSVのカラムを加工します。

データスキーマの属性は実質2つで、時系列とその値があるのみです。ちなみに、入力データを俯瞰すると下図のようになかなかエキサイティングな相場です。9月2日時点のビットコイン価格は1,103,801円です。

次にS3にCSVを置いてデータをインポートし、モデルと頻度、期間をセットする予測子を作ります。

IAMロールは自動で作ってくれます。 予測の範囲は500がMaxなので、日足の予測は1年半まで。

アルゴリズムは

が利用できますが、なんのことかわからないのでAutoを選択してForecastによしなに選んでもらいます。今回のデータではETSが採用されました。

予測子の学習と実際の予測計算・出力にそれぞれ小一時間ほどかかり、出た結果がこちらです。

なんかマイナス出てるし、コレジャナイ感満載ですが、50パーセンタイルで、年末に1,314,784円、一年後に1,754,087円になるようです。

全部やってみた

消化不良なので、全部のアルゴリズムを試してみます。

ARIMA: 年末 1,101,261円 / 一年後 1,103,802円
NPTS: 年末 671,481円 / 一年後 485,001円
 
 Prophet: 年末 1,405,379円 / 一年後 1,859,680円
 
 DeepAR+: 年末 532,765円 / 一年後 447,637円

一番相場っぽい値動きを描けるのはProphetのようですが、いかんせん時系列データのみの学習では錬金術的な予想はできず、関連データとメタデータをセットして学習させるなど、使いこなすにはそれなりのスキルが必要です。