自動株取引AIってどうやって作られているの?

機械学習が話題になって来て久しい昨今、株の取引を機械学習を使って自動化したいという話をよく聞きます。株の値動きは非常に複雑な要因が折り重なって決まります。たとえ深層学習でも簡単には予測できませんが、試みている人たちはたくさんいるみたいです。

そこでこの記事では

  • 自動株取引システムで使われる機械学習アルゴリズム
  • 自動株取引システムの先行研究

などについて解説しますよ!

【こんな方に向けて書きました】

  • 機械学習の実用事例を知りたい
  • 機械学習を用いた株取引について詳しく知りたい
  • AIの進歩について詳しく知りたい

株価の値動きを予測する機械学習モデル

株価の値動きを予測する機械学習モデルはたくさんありますが、ニューラルネットワークをメインで解説します。さて、時系列データの未来の値を予測するとき、過去のデータを元に予測を行います。今までの値動きを参考にして、次の瞬間のデータ点がどんな値になるかを予測します。

RNN

[画像:Understanding LSTM Networks Posted on August 27, 2015]

RNN(Recurrent Neural Network)はループ構造を持つニューラルネットワークです。

時系列データの予測をニューラルネットワークで行う場合、RNNはもっともベーシックな選択肢になります。

RNNの派生として、

  • LSTM(Long short-term memory)
  • GRU(Gated Recurrent Unit)

などのアルゴリズムもあります。

■ 参考例
KerasでDeep Learning:LSTMで日経平均株価を予測してみる

CNN

[画像:畳み込みニューラルネットワークとは 知っておくべき 3 つの事柄 -- MathWorks]

CNN(Convolutional Neural Network)については以下の記事で解説しています。

【深層学習入門】ディープラーニングで画像認識!CNNで簡単入門!
更新日:2023年3月21日

CNNは画像に対して使われることが多いですが、例えば一次元畳み込みを行うことで時系列データを扱うこともできます。

■ 参考例
[ディープラーニング] 時系列データ入力を想定したCNN多クラス分類モデル

その他の回帰モデル

xgboost

kaggleなどのデータ解析コンペで人気の手法

■ 参考例
仮想通貨の価格変動予測

random forest

以下の記事でrandom forestを使った回帰分析にチャレンジしました。

機械学習手法「ランダムフォレスト」で回帰分析にチャレンジ
更新日:2023年3月21日

株価予測を研究している論文

株価予測を行っている論文はたくさんありますが、その中でも日本語のものをピックアップします。

CNNを使った株価予測

深層学習を用いた株価予測の分析 Stock Prediction Analysis using Deep Learning Technique,
宮崎邦洋, 松尾豊

※人工知能学会 2017

CNNを使ってほぼランダムウォークで動く金融時系列データの予測を解析を行っている研究。

Twitterデータを使った株価の予測

Twitterの多軸的感情情報を利用した株価の予測
増井佑亮, 藤野巖

※言語処理学会 第24回年次大会 発表論文集 (2018年3月)
ツイッターの感情情報から特定銘柄の株価を予測している研究。

もっと勉強するには

機械学習を使った株価予測とは、株価の値動きという時系列のデータの未来の値を予測する作業です。金融時系列データ(株価値動き)はほとんどランダムウォークのような形になるので単純な予測は難しいのですが、例えば

  • 今までの値動きのグラフの中で、近い形をしているところを参考に値動きを予測する
  • Twitterのムードのような、特定の銘柄などと関係のありそうなデータを元にして予測する

などいろんな方法が考えられます。これらを使って株価を予測するシステムを自力で作るとき、まずは

  • 時系列データの予測モデル
  • 時系列データのクラスタリング手法
  • 時系列データの距離尺度

を勉強する必要があります。このような勉強を独学でやるのが大変だと感じたら、是非侍エンジニアのマン・ツー・マンレッスンを試してみてください。

侍エンジニア
無料カウンセリングの詳細はこちら

エンジニアがマン・ツー・マンであなたの勉強をサポートします。きっと勉強がはかどりますよ!

まとめ

この記事では、AI技術を使った株価の予測などの自動株取引AIの中で動いている手法について解説しました。株価の予測は非常に難しい問題ですが、だからこそ勉強のしがいがある面白いものだと思います。

機械学習を勉強して是非チャレンジしてみてください!

挫折せず目的を達成するなら
専属マンツーマンレッスンの侍エンジニア

SAMURAI ENGINEER

プログラミング学習の挫折率は約90%と言われています。学習を成功させるには、モチベーションを維持して成長を実感できる環境が必要です。

侍エンジニアなら「現役エンジニア講師」、「学習コーチ」、「Q&A掲示板」トリプルサポート体制であなたの学習をサポートするほか、オーダーメイドカリキュラムで必要なことだけを学べるため、さまざまなランキングでNo1という実績を挙げています。

挫折せず最短でプログラミングを習得したいなら侍エンジニアがおすすめです!

→侍エンジニアの詳細をみる

第一言語はPythonです。
皆さんRustやりましょう。

あなたの目的に合わせた
SAMURAI ENGINEERの運営サービス

SAMURAI ENGINEER Pro

未経験でも挫折しないプログラミングスクール

詳細はこちら

SAMURAI TERAKOYA

日本最大級のサブスク型オンラインITスクール

詳細はこちら

SAMURAI ENGINEER Freelance

「一人で稼げる」スキルを身につける

詳細はこちら
ページ上部へ戻る
Close