Pythonで機械学習をおこない株価予測をしよう!



Pythonで株価を予測したいよ!

この記事では、Pythonや投資初心者でもできるように、機械学習をつかって株価予測をおこなう流れをレクチャーしていきます!

今回の記事は日本ディープラーニング協会(JDLA)様のG検定公式テキスト参考に作成しています!

(記事にでてくるコードは配布しております。まとめにあるリンクからダウンロードください。)

この記事を読むとわかること

  • 今回使用する機械学習の手法をざっくり理解する
  • Pythonで機械学習をおこない株価予測をする
                                                                

本記事では、Pythonで機械学習をおこない、株価予測をするまでの流れをレクチャーしていきます!

これを学ぶことで、機械学習というアプローチから投資戦略を立てることができるようになります!

実際に多くの投資ファンドがアルゴリズムによる投資(トレード)を始めているのも事実ですので、プログラミングによる投資戦略を増やすことは長期的にメリットであると考えられます!

このレクチャーを通し、投資やプログラミングスキルを高めていきましょう!

それでは一緒にまなんでいきましょう!

今回つかう機械学習の手法をざっくり理解しよう!

株価予測をするにあたって理解を深めるために、今回つかう機械学習の手法をざっくりみていきます!

今回使われる手法は「決定木分析」と呼ばれるもので、Yes/Noなどの条件に属するかどうかで確率を算出する分析方法です。

手法をみることで、株価予測以外の分野にも応用させることができ、今後の学びにも活きると思います!

ではみていきましょう!

why
機械学習について知りたい方はこちら!

Pythonで機械学習入門①教師あり学習編

決定木分析とは

今回は、機械学習の手法のひとつである、決定木分析をつかい予測をしていきます!

決定木分析とは

Yes/Noなどの条件に属するかどうかで確率を算出する分析方法。

イメージとして、以下の画像を見てください。

分岐図

「引用:決定木分析とランダムフォレスト

画像のとおり、条件を複数作成することによって、最終的に生存するかどうかを予測するものが決定木分析です!

ビジネスにおける活用事例

決定木分析は、機械学習以外にも、ビジネスにおけるマーケティングや意思決定などさまざまな分野で活用することができます!

たとえば、顧客の購入履歴から、自社製品やサービスを購入/購入見込みが高い顧客層の特徴分析や、製品の要素が顧客満足度やロイヤリティに与えている影響度分析も可能です!

またEC企業では、商品やサービスの購入/離脱原因や選択基準の把握などのマーケティングに活用できます!

そのため、マーケターやコンサルといった職種でも、決定木分析はマスターしたほうが色々お得です!

 

そんな決定木分析をもちいて、株価予測をおこなっていきましょう!



    Pythonで機械学習をおこない株価予測をしよう!

    決定木分析についてなんとなく理解したところで、実際にPythonをもちいて学んでいきましょう!

    今回は、GAFAのひとつであるアマゾンを決定木分析をもちいて株価予測をしていきます!

    分析するデータを読みこむ

    まずは、下記のLINE@から「株価予測_決定木分析」のファイルをダウンロードします。

    メッセージにて、「株価予測」とお送りいただければダウンロードができます。

    友だち追加

    その後、ジュピターノートブックを使いファイルを読み込みます!

    その後、ファイルを開き、以下のコードを実行します。

    そして、今回求めたいデータを読み込ませます!(データの詳細は次の見出しにて説明します)

    データを読み込むことができました!

    株価データを確認する

    株価データを取得したところで、実際に描画して確認していきましょう!

    これを見る限り、直近1年間の株価を描画させることができました!

    決定木分析のモデルを作成するための準備をおこなう

    続いて、今回つかう決定木分析のモデル作成の準備をします!

    その際、今回は取得した日にちから25日前までの株価データをもちいて、そこから25日後まで(25日前~取得日)の株価を予測することを目標にデータを加工していきます!

    その後、予測のために学習するデータを作成します。

    加えて、予測の対象であるデータを作成します。

    モデルを作成し学習する

    準備ができたところで、モデルを作成し学習していきます!

    まずは、データを75%のトレーニングと25%のテストデータセットに分割します!

    その後、決定木分析のモデルを作成します!

    そして、モデルを学習させ、予測結果を表示させます!

    これだとよくわからないですが、予測値を出力させることができました!

    予測結果を確認する

    先ほど求めた予測結果のままではよくわからないので、描画をし確認していきます!

    これをみるに、訓練データ(Train)をもとに、予測データ(Prediction)を出力していることがわかります!

    加えて、予測データ(Prediction)と実際のデータ(Actual)を比較していることもわかります!

    ここで出力されたものは、25日前までの株価データをもとに、25日前~取得日までの予測データがですが、これをみるに、大まかながら予測ができていることがわかります!!



    まとめ

    今回は、

    • 今回使用する機械学習の手法をざっくり理解する
    • Pythonで機械学習をおこない株価予測をする

    といったことをおこなっていきました!

    ここまで読んでくださりありがとうございました!

    株価予測はまだまだ沢山の方法があるので、自分なりの予測をみつけていきましょう!

    記事にでてくるコードはLINE@にて配布をしております!

    ラインのメッセージ欄に「株価予測」とお送りいただければ、ダウンロードリンクを送付いたします!

    友だち追加

    コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

    CAPTCHA