【NumPy】移動平均線・単回帰分析による株価予測の正答率

この記事では、Python言語とNumPyを用いて、移動平均線(MA)と単回帰分析で株価予測した結果の正答率を求める方法をソースコード付きで解説します。

単回帰分析で株価分析

前回の記事では、前日の移動平均線(5日線、25日線、75日線、200日線)を説明変数として、重回帰分析で株価を予測してみました。
【参考】【NumPy】移動平均線と重回帰分析で株価予測

今回は、説明変数を5日線のみの単回帰分析でモデル式を作成しました。
そして、日経平均株価(終値)が上昇・不変・下落のいずれの動きを示すかを1日ずつ予測して正答率を求めました。

ソースコード

サンプルプログラムのソースコードは下記の通りです。

■使用したデータ(日経平均株価のデータ)
2014年分:nikkei15.csv
2015年分:nikkei15.csv
2016年分:nikkei16.csv

※株価データの入手は下記サイトを参考に行いました。
【日経平均株価】過去データ(CSV)をダウンロード

実行結果

サンプルプログラムの実行結果は以下の通りです。

正答率:70.082 [%]

重回帰分析の時よりも2%程正答率が上昇しました。
今回は1日毎の上昇・下落の予測なので、短期投資に向いている5日線のみを説明編として使ったのが良かったのかもしれません。

【関連記事】
Pythonで株価予測・分析(システムトレード)
NumPy入門 サンプル集
Python入門 サンプル集

シェア&フォローお願いします!