Facebook社は時系列予測ライブラリ『Prophet』をオープンしています.
今回は,「Prophetによる株価予測は当たるのか?」を軽く検証(バックテスト)してみたいと思います.
本記事は以下の記事を参考に書かれているので,分からない箇所,コードは以下の記事をご覧ください.
なお,Prophetの基本的な使い方は以下の記事をご覧ください.
この記事↑では,2015/1/1~2021/1/1のKO(コカ・コーラ)の株価データを使ってProphetで予測してみたところ,2021/1/1以降の250日間の予測結果は以下のようになりました.
#予測に実際のデータを重ねてみる(バックテスト)
現在はすでに2021/4なので,どれくらいこの予測と合っているのかを見ることができます.
というわけで,実際のデータを重ねてみます.
めちゃくちゃずれていますね.ちなみに,このデータを重ねることによる検証コードはこちらの記事をご覧ください.
まあ,そんなに簡単に未来が予測できるならPythonを使えるだけで億万長者ですからね.現実は甘くないというわけです.
ただし,コロナショック付近(2020/1~2020/3)でも予測範囲から外れていますから,決めつけはよくありません.たまたま外れているだけかもしれませんからね.実際,よく見てみると予測の直後の1か月ほどは当たっています.
また,時系列予測が急激な株価の変化についていけるわけがないので,Prophetによる予測は穏やかなトレンドにしか効果がないことが伺えます.
結論としては,「株価が荒波のように動いているときは時系列予測によるテクニカル分析は役に立たない」ということですね.
コロナ後の予測は,世界情勢などからするべきで,テクニカル分析で行うのは無理がありました.
ちなみに,このProphetのモデル精度に関しては以下の記事をご覧ください.
というわけで,コロナショック前でバックテストしましょう.
2018/1/1までのデータでモデル調整を行い,それ以降の250日間で予測と実際の株価を比較してみます.
微妙ですが,いったん下がって上がるという『形』はあっているので,シフトすればほぼピッタリ合いそうではありますね.上昇トレンドはとらえているという見方もできなくはなさそうです.
#Prophetによる予測について
やる前から分かってはいましたが,パターン認識から未来予測をするというのはなかなか難しいですね.そのため,個人的には今回のようなProphetによる予測はほとんどあてにしていません.
ただし,これはテクニカル分析が意味ないというわけではなく,トレンドを分析したりパターンを認識することはデータ分析の範囲内で統計的には十分な意味を持つことは間違いないです.
「得られた分析結果をどう使うのか」が株価予測のカギを握ると思います.
例えば,個人的にはテクニカル分析指標であるMACDやボリンジャーバンドは統計的な意味を持つので,株価の売買をするときに参考にしています.一方で,未来予測,パターン認識の部分は自分の感覚に頼っています.
MACDやボリンジャーバンドを用いた売買手法をバックテストした記事もぜひご覧ください ↓