機械学習手法を使って値上りしそうな日本株を見つける!!〜t-SNE&DBSCANによる日本株クラスタリング〜

株式投資
この記事は約15分で読めます。

歴史的な下落相場が続いていおりますが、皆さん大丈夫でしょうか。いつコロナが収束に向かうのか、いつ相場が回復に向かうのかは誰もわかりませんが、回復したときにはいの一番に乗っかれるように、今のうちに良い銘柄を探すなど準備をしておくのが良いかと思います。

ということで、今回は前からやってみたかった機械学習手法の一つであるt-SNEとDBSCANという手法を使って東京証券取引所に上場している日本株をクラスタリングし、値上がりしやすい銘柄群を見つけてやろうという内容です。

かなり長い文章かつ途中は読んでいてもよくわからない可能性が高いので、結論である最後の方だけ読んでもらってもOKです。

スポンサーリンク

値上がりしやすい日本株を見つけるまでの流れ

以下が今回行う分析の流れになります。2、3は意味がわからない可能性が高いと思いますので、さっと読み飛ばしていただいて、大事なのは7番なのでそこだけ注目していただいてもOKです。

  1. 日本株式の四季報データの準備
  2. 四季報データをt-SNEという次元圧縮方法を用いて2次元空間にプロットする
  3. DBSCANというクラスタリング手法を用いて2次元空間上のデータをクラスタリングする
  4. 株価の値上がり率を色付けする
  5. クラスタに含まれているか銘柄を確認する
  6. クラスタの特徴を確認する
  7. 良い銘柄が埋もれていないかの参考にする

1.日本株式の四季報データの準備

まず今回使用する日本株のデータですが、以下に示すような株価の値上がりに重要そうな四季報情報を四季報HPから、市場区分、業種区分、規模区分等の情報をJPXの東証上場銘柄株式一覧エクセルから取得しました。

会社基本情報

  • 銘柄コード、銘柄名称
  • 発行株式数
  • 株主数
  • 浮動株割合、外国株主保有割合、投資信託保有割合、特定株主保有割合
  • 上場年月、設立年月
  • 従業員数、従業員平均年齢、従業員平均年収
  • 本社住所

財務情報

  • 総資産
  • 自己資本
  • 自己資本比率
  • 資本金
  • 利益剰余金
  • 有利子負債

財務指標等

  • ROE、予想ROE
  • ROA、予想ROA
  • 過去最高純益
  • 設備投資費、予想設備投資費
  • 減価償却費、予想減価償却費
  • 研究開発費、予想研究開発費

キャッシュフロー

  • 営業CF、前期営業CF
  • 投資CF、前期投資CF
  • 財務CF、前期財務CF
  • 現金、前期現金

会社業績

  • 前々期売上、前々期営業利益、前々期経常利益、前々期純利益、前々期EPS
  • 前期売上、前期営業利益、前期経常利益、前期純利益、前期EPS
  • 今期売上、今期営業利益、今期経常利益、今期純利益、今期EPS
  • 来期予想売上、来期予想営業利益、来期予想経常利益、来期予想純利益、来期予想EPS

市場、業種、規模区分等

  • 市場、商品区分
  • 33業種区分
  • 17業種区分
  • 規模区分

2.四季報データをt-SNEという次元圧縮方法を用いて2次元空間にプロットする

今回は個別銘柄を対象とするので市場を以下のものに絞りましたので、対象の銘柄は3500銘柄近くになっています。

  • 市場第一部(内国株)
  • 市場第二部(内国株)
  • マザーズ(内国株)
  • JASDAQ(グロース・内国株)
  • ‘JASDAQ(スタンダード・内国株)

したがって、準備したデータの次元は約3500銘柄✕約100項目という非常に大きなデータとなります。
※項目が100個あるので100次元のデータと呼びます
※業種区分などをワンホットベクトル化しているので項目数が大きくなっています。

このままでは大変なので次元圧縮ということをします。
次元圧縮の詳細な説明は割愛しますが、簡単に言うとたくさん項目があると考えるのが大変なので、複数の項目の内容を考慮しながら項目数を減らすということをします。
詳細な説明はこちらのページを御覧ください。
30分でわかる機械学習用語「次元削減(Dimensionality Reduction)」

次元削減の方法は様々あるのですが今回はその中でもかなり優秀な次元圧縮手法であるt-SNEという手法を使います。早速ですが、t-SNEという方法を用いて100次元のデータを2次元に圧縮してプロットした図が以下になります。

この1つ1つの点が各銘柄だと思ってください。何やら塊ができていて、グループ化できそうに見えますよね。この散布図の中の近いものは似ていて、遠いものは別のものというように考えてもらって大体OKです。ただ、厳密に言うと違っていて、距離が離れているから全然違うのかというわけではありません。我々が普段扱っているものさし(いわゆるユークリッド距離)とは違ったものさしを使っているためです。
理解する必要もないと思いますので、そうゆうもんなんだなぁくらいで大丈夫です。

真面目にt-SNEを理解したい方は、昨年AI関連銘柄でアゲアゲだった3906 Albertさんのブログがわかりやすいです。
t-SNE を用いた次元圧縮方法のご紹介

3.DBSCANというクラスタリング手法を用いて2次元空間上のデータをクラスタリングする

さて、先程の図を元に今度はクラスタリングをしていきます。クラスタリングは簡単にいうと似ている者同士をグループ分けする感じです。

このグループ分けをする方法にもたくさんの手法があるのですが、今回はDBSCANという方法を使いたいと思います。
DBSCANの詳細な説明は割愛しますが、簡単にゆうと密度が高いところを同じグループにするという感じです。似ている者同士は群れがちですよねという発想です。

真面目にDBSCANを理解したい方はこちらのサイトを御覧ください。
DBSCANクラスタリングの解説と実験

DBSCANによるクラスタリングの結果が以下になります。

なんとなく近いもの同士がちゃんと同じ色に色分けされているかと思います。同じ色のところは同じグループ(クラスタ)だということになります。このクラスタは全部で90種類あります。
※クラスタ番号は-1〜88まで。-1は未分類のクラスタです。class10というような表記をしたいと思います。

4.株価の値上がり率を色付けする

最終的には株価の値上がり率が高い銘柄を見つけたいので、銘柄の値上がり率をこの図に色付けシていきたいと思います。値上がり率は、データの都合とコロナの影響を一旦無視したいので、2018年3月1日〜2019年12月31日で計算しています。

値上がり率を色付けした図が以下になります。

色が赤く濃いところが値上がり率が高く、色が青く濃い値下がり率が大きいことを意味します。
クラスタによって赤が多いクラスタと青が多いクラスタがあることがわかります。

オレンジの丸で囲っているところは値上がり率の高い銘柄が多そうなので、気になるクラスタだということになります。

ついでに2018年3月1日〜2019年12月31日までの値上がり率の変化をGIFにしたので、それも参考までに。

5.クラスタに含まれている銘柄を確認する

それでは先程オレンジの丸で囲ったクラスタにどんな銘柄が含まれているか見てみましょう。
このあたりでクラスタを形成しているのはクラスタ番号23(Class23)でした。
銘柄は以下の68銘柄です。クラスタの平均値上がり率は36%とかなり高いです。そしてぱっと見自分の好きそうな銘柄がたくさんあるように見えます。

コード名称市場区分業種33区分業種17区分規模区分値上がり率(%)
2130メンバーズ市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 2112.01
2148アイティメディア市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 212.57
2301学情市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 243.32
2471エスプール市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 1323.77
2477手間いらずマザーズ(内国株)サービス業情報通信・サービスその他81.27
2491バリューコマース市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 270.85
3150グリムスJASDAQ(スタンダード・内国株)卸売業商社・卸売78.64
3179シュッピン市場第一部(内国株)小売業小売TOPIX Small 2-3.78
3415TOKYO BASE市場第一部(内国株)小売業小売TOPIX Small 2-55.47
3447信和市場第一部(内国株)金属製品建設・資材TOPIX Small 2-3.26
3484テンポイノベーション市場第一部(内国株)不動産業不動産TOPIX Small 258.16
3633GMOペパボ市場第二部(内国株)情報・通信業情報通信・サービスその他62.72
3641パピレスJASDAQ(スタンダード・内国株)情報・通信業情報通信・サービスその他20.31
3681ブイキューブ市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 229.45
3682エンカレッジ・テクノロジ市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 2-12.97
3687フィックスターズ市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 1-14.72
3741セック市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 212.41
3788GMOクラウド市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 26.75
3834朝日ネット市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 222.05
3901マークラインズ市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 2-2.56
3902メディカル・
データ・ビジョン
市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 2-43.58
3916

デジタル・
インフォメーション・
テクノロジー

市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 26.27
3922PR TIMES市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 240.47
3923ラクスマザーズ(内国株)情報・通信業情報通信・サービスその他145.9
3930はてなマザーズ(内国株)情報・通信業情報通信・サービスその他19.0
3963シンクロ・フード市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 2-65.35
3983オロ市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 2206.98
3998すららネットマザーズ(内国株)情報・通信業情報通信・サービスその他-7.21
4345シーティーエス市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 2-3.36
4346ネクシィーズグループ市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 25.53
4391ロジザードマザーズ(内国株)情報・通信業情報通信・サービスその他-17.63
4420イーソル市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 297.31
4424Amaziaマザーズ(内国株)情報・通信業情報通信・サービスその他206.91
4429リックソフトマザーズ(内国株)情報・通信業情報通信・サービスその他20.22
4436ミンカブ・ジ
・インフォノイド
マザーズ(内国株)情報・通信業情報通信・サービスその他-7.69
4763

クリーク・アンド・
リバー社

市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 212.35
4767テー・オー・ダブリュー市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 24.21
6027弁護士ドットコムマザーズ(内国株)サービス業情報通信・サービスその他169.45
6032インターワークス市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 2-53.3
6036KeePer技研市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 26.15
6047Gunosy市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 2-41.8
6069トレンダーズマザーズ(内国株)サービス業情報通信・サービスその他-47.81
6071IBJ市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 28.19
6082ライドオンエクスプレス
ホールディングス
市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 291.45
6086シンメンテ
ホールディングス
マザーズ(内国株)サービス業情報通信・サービスその他114.66
6095メドピアマザーズ(内国株)サービス業情報通信・サービスその他151.84
6099エラン市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 2101.0
6184鎌倉新書市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 1198.01
6185SMN市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 2-36.67
6187LITALICO市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 237.63
6194アトラエ市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 2-6.36
6255エヌ・ピー・シーマザーズ(内国株)機械機械79.17
6538キャリアインデックス市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 2-63.31
6539MS-Japan市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 2-5.22
6553ソウルドアウト市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 2-47.64
6555MS&Consulting市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 2-8.72
6569日総工産市場第一部(内国株)サービス業情報通信・サービスその他TOPIX Small 212.0
6574コンヴァノマザーズ(内国株)サービス業情報通信・サービスその他-30.04
6580ライトアップマザーズ(内国株)サービス業情報通信・サービスその他-50.78
6698ヴィスコ・
テクノロジーズ
市場第二部(内国株)電気機器電機・精密-65.6
7035and factoryマザーズ(内国株)サービス業情報通信・サービスその他18.64
7039ブリッジ
インターナショナル
マザーズ(内国株)サービス業情報通信・サービスその他-31.78
7060ギークスマザーズ(内国株)サービス業情報通信・サービスその他-0.71
9262シルバーライフ市場第一部(内国株)小売業小売99.55
9270SOUマザーズ(内国株)卸売業商社・卸売41.95
9416ビジョン市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 185.28
9450ファイバーゲート市場第一部(内国株)情報・通信業情報通信・サービスその他TOPIX Small 2163.85
9467アルファポリスマザーズ(内国株)情報・通信業情報通信・サービスその他98.53

6.クラスタの特徴を確認する

市場、業種、規模区分

まずはどんな市場、業種、規模区分の銘柄なのか分布を見てみましょう。

市場区分
33業種区分

東証一部の銘柄が多く、ついでマザーズが多く含まれていますね。業種はサービス業が多く、ついで情報通信業が多いです。規模区分はTOPIX Small2と規模区分なしが多いですが、おおよそ市場区分と対応していると思われます。

会社基本情報

会社基本情報の平均値がどのようになっているか見ていきましょう。

発行株式数(千株)18,944,264
株主数(名)3557
外国株主保有割合(%)9.6
浮動株割合(%)11.5
投資信託保有割合(%)13.7
特定株主保有割合(%)71.3
上場年月2013/9/5
設立年月2000/6/10
従業員数(名)339
従業員平均年齢(歳)34.7
従業員平均年収(百万円)516

上場年月がかなり最近で、従業員の平均年齢も若めとなっています。あと特定株主保有割合が非常に高いです。これは私が普段から10倍株検索で注目しているところと似ています。

業績

業績の推移も見ていきましょう。平均値ですのでご注意ください。

売上高、営業利益、経常利益、純利益とすべて順調に伸びてきている会社ということがわかります。

財務

財務指標関係も見ていきましょう。
自己資本比率やROE、ROAがかなり高いかと思います。現時点では財務は健全だと思いますが投資が増えて、財務CFが悪化してるので、先行投資をしているのでしょうか。現金もやや下がっております。営業CFがやや減少予想となっているのが気になります。

総資産93,500
自己資本58,063
自己資本比率63.1
資本金8,669
利益剰余金43,465
有利子負債10,507
過去最高純益6,453

7.良い銘柄が埋もれていないかの参考にする

クラスタ23に含まれる銘柄には自分がよく取引する銘柄もあれば、初めてみる銘柄が多数ありました。機械学習的に自分が好きな銘柄と似ている銘柄だと言っているので、このクラスタの銘柄に注目していこうと思います。
ただ、このクラスタを盲目に信じるのではなく1つ1つ適時開示などを調べていくところからですかね。個人的には以下の銘柄あたりがコロナの影響も少なそうですので、調べて行こうと思っています。

  • 2148 アイティメディア
  • 3902 メディカル・データ・ビジョン
  • 3922 PR TIMES
  • 6082 ライドオンエクスプレスホールディングス
  • 6095 メドピア
  • 6580 ライトアップ
  • 9262 シルバーライフ
  • 9418 USEN NEXT

このクラスタは業績予想が変われば変わるので決算発表毎に更新していく予定です。
よろしくお願いします。また、こうゆう項目を入れるとよりうまくクラスタリングできるかもというアドバイスがあればご連絡ください。

【参考】他の値上がり率の高いクラスタ

最後にどのクラスタが値上がり率が高いのかを見ていきます。各クラスタの2018年3月1日からの平均値上がり率を表したグラフ(縦軸:値上がり率(%)、横軸:クラスタ番号)が以下になります。

先程のclass23の他にclass12、19、41、46、83が非常に高い値上がり率であることがわかります。どんな銘柄が含まれているかはまたの機会に。

コメント

タイトルとURLをコピーしました