AIを使ってIPOの初値を予測する

 IPO初値を予想するには、事業の内容やIPOの規模、価格設定などから予想していくことになりますが、必ずしも適正な初値水準というのがあるわけではありません。過去に上場した類似のIPOの初値は参考値として有用ではありますが、それでも全く同じ条件のIPOは存在しません。

 ここでは、過去のIPOの初値データをもとに、「AI(機械学習)」を利用して、初値の予測モデルを構築していきます

1AIと機械学習

 AIを使って予測モデルを構築する前に、簡単にAIについて確認しておきましょう。

AIとは 

 AIは「Artificial Intelligence(アーティフィシャル・インテリジェンス)」の略で、日本語では「人工知能」と訳されます。一般的に、人間と同じように学習や認識、判断するようなコンピューターのことを指す場合が多いですが、明確な定義があるわけではありません

 また、AIを語る上でよく使われる言葉に「機械学習(Machine Learning)」があります。機械学習は、データから一定の規則(パターン)や法則(ルール)を、コンピュータ自身が抽出する技術のことをいいます。つまり、AIは広義の概念であり、機械学習はAIが稼働するための必要な要素の1つといえます

機械学習の種類 

 機械学習では、データから規則性や判断基準を学習し、それに基づき未知のものを予測、判断していくことになります。また、機械学習には、「教師あり学習」「教師なし学習」「強化学習」の3種類の方法があります。

 IPOの初値を予測するモデルでは、特に「教師あり学習」で分析を進めていくことになります。

2予測モデルの構築

 今回は機械学習のオープンソースライブラリである「scikit-learn」を使用してモデルを構築していきます。scikit-learnは、Pythonの機械学習ライブラリで、誰でも無料で利用することができます。また、プログラムを実行するツールとして、機械学習ではおなじみの「Jupyter Notebook」を利用します。

 データ解析と予測については、大きく5つのステップに分けて進めていきます。

データの取得 

 今回使用するデータは、2008年1月から2021年6月の間に上場した企業の初値データ890件のうち、初値騰落率が全体の平均から(標準偏差の2倍)以上離れた45件を除く、845件のデータとしました。また、データの中身は、以下の構成としています

データ 説明
OP 公開価格(円)※上場時の単元数は100株に統一
MS IPO規模(投資家の資金供給額(億円)
POR 募集株数における公募株数の割合(%)
EPS 1株あたり利益(円)
BPS 1株あたり純資産(円)
SGR 直近の売上高成長率(%)
ROE 直近の自己資本利益率(%)
GA 類似グループの平均初値騰落率(%)
RA 直近(上場承認日時点)の平均初値騰落率(%)
PD 想定価格と公開価格の乖離率(%)
OSP 初値(円)

 これらのデータをJupyter Notebookにインポートします。

  1. # データをインポート
  2. import pandas as pd
  3. import io
  4. df = pd.read_csv(io.StringIO(uploaded[‘ipo-data(2008-2021.6).csv’].decode(‘utf-8’)))

データの分割 

 インポートしたデータについて、目的変数特徴量を定義します。今回予測したいデータは初値になるので「OSP」が目的変数、それ以外が特徴量となります。また、845件のデータを訓練用テスト用のデータに分割します。今回は、それぞれ8:2の割合で分割しています。

  1. # 変数の組み合わせ
  2. X_train = train[[“OP”,”MS”,”POR”,”EPS”,”BPS”,”SGR”,”ROE”,”GA”,”RA”]]
  3. Y_train = train[“OSP”]
  4. X_test = test[[“OP”,”MS”,”POR”,”EPS”,”BPS”,”SGR”,”ROE”,”GA”,”RA”]]
  5. Y_test = test[“OSP”]
  6.  
  7. # 訓練用とテスト用に分割
  8. from sklearn.model_selection import train_test_split
  9. train, test = train_test_split(df,test_size=0.2,random_state=100)

モデルの作成 

 機械学習のモデルには、重回帰ランダムフォレストなど、いろいろな学習モデルがありますが、ここでは、複数のモデルを融合させて1つの学習モデルを生成する「アンサンブル学習」で予測モデルを作成していきます。今回は、XGboostランダムフォレスト重回帰の3つのモデルのアンサンブルで学習を行います。なお、学習で使うデータは訓練用のデータになります。

  1. # モデルの作成
  2. reg1 = xgb.XGBRegressor(colsample_bytree=1.0,eta=0.01,gamma=1,max_depth=7,min_child_weight=1,subsample=0.8)
  3. reg2 = RandomForestRegressor(random_state=1,n_estimators=100)
  4. reg3 = LinearRegression(normalize=True)
  5. ereg = VotingRegressor(estimators=[(‘xgb’,reg1),(‘rf’,reg2), (‘lr’,reg3)])
  6.  
  7. ereg = ereg.fit(X_train, Y_train)

モデルの評価 

 作成したモデルについて、テスト用のデータを使って予測精度を評価していきます。ここでは、決定係数(R2)平均誤差率を計算します。なお、決定係数は、0〜1の範囲の値をとり、値が1に近いほど予測精度が高いモデルということになります。結果を見ると、訓練用データの決定係数は93.7%、テスト用データでは84.5%と乖離は小さく、予測モデルとしてはまずまずの精度といえます。また、この予測モデルの誤差率は18.6%となっています。

  1. # 評価指標
  2. yhat_test = model.predict(X_test)
  3. return
  4. “adjusted_r2(test):” + str(adjusted_r2(X_test,Y_test,model)),
  5. “平均誤差率(test):” + str(np.mean(abs(Y_test / yhat_test – 1)))

 また、テスト用データを使って、実際の初値とモデルが予測した初値がどれほど一致しているかグラフでも確認してみます。(横軸:実際の初値縦軸:モデルが予測した初値

  1. # グラフ描画
  2. plt.figure()
  3. ax = sns.regplot(x=Y_test, y=ereg.predict(X_test), fit_reg=False,color=’#4F81BD’)
  4. ax.set_xlabel(u”opening share price”)
  5. ax.set_ylabel(u”(Predicted) opening share price”)
  6. ax.get_xaxis().set_major_formatter(ticker.FuncFormatter(lambda x, p: format(int(x), ‘,’)))
  7. ax.get_yaxis().set_major_formatter(ticker.FuncFormatter(lambda y, p: format(int(y), ‘,’)))
  8. ax.plot([0,10,20,30,40,50],[0,10,20,30,40,50], linewidth=2, color=”#C0504D”,ls=”–“)

モデルの利用 

 最後に、構築したモデルをもとに2021年7月に上場予定のデリバリーコンサルティングの初値を予測してみます。なお、予測時点では公開価格が決定していないため、想定価格を公開価格とみなして予測しています。

  1. # 初値予測の実行
  2. submission = pd.DataFrame({
  3. ‘Prediction(OSP)’: ereg.predict(X_df2)})

 今回構築したモデルによると、デリバリーコンサルティングの初値は2,265円と予測されました。

関連記事

最新情報

  1. 2021/9/21アップデート NEW!

    初値予想の変更:セーフィー 他1件

  2. 2021/9/17アップデート

    初値予想の変更:リベロ 他2件

  3. 2021/9/16アップデート

    初値予想の変更:デジタリフト

  4. 2021/9/15アップデート

    初値予想の変更:レナサイエンス 他1件

  5. 2021/9/14アップデート

    初値予想の変更:コアコンセプト 他1件

  6. 2021/9/13アップデート

    初値予想の変更:ユミルリンク

  7. 2021/9/6アップデート

    初値予想の変更:Geolocation Tec

  8. 2021/8/26アップデート

    初値予想の変更:メディア総研 他1件

  9. 2021/8/20アップデート

    初値予想の変更:ジェイフロンティア

  10. 2021/8/16アップデート

    初値予想の変更:シイエヌエス 他1件

  11. 2021/8/10アップデート

    初値予想の変更:フューチャーリンクN

  12. 2021/7/20アップデート

    初値予想の変更:AIメカテック 他1件

  13. 2021/7/19アップデート

    初値予想の変更:ブレインズテクノロジー

  14. 2021/7/19証券会社

    手数料の改定:auカブコム

  15. 2021/7/19証券会社

    手数料の改定:SBI

  16. 2021/7/15証券会社

    新規:CONNECT

  17. 2021/7/15アップデート

    初値予想の変更:サーキュレーション

  18. 2021/7/14アップデート

    初値予想の変更:ランドネット

  19. 2021/7/13証券会社

    新規:SBIネオトレード

  20. 2021/7/13証券会社

    新規:三菱UFJMS

  21. 2021/7/12アップデート

    初値予想の変更:アシロ

  22. 2021/7/7アップデート

    初値予想の変更:ラキール

  23. 2021/7/2その他

    AI予測モデルの更新

  24. 2021/6/30アップデート

    初値予想の変更:コラントッテ

  25. 2021/6/28アップデート

    初値予想の変更:BCC

  26. 2021/6/23マーケット

    【サマリー】AIPFは上場初日に初値つかず

  27. 2021/6/22アップデート

    初値予想の変更:BlueMeme 他2件

  28. 2021/6/21マーケット

    【サマリー】全研本社は上場後初の上昇

  29. 2021/6/18アップデート

    初値予想の変更:日本電解 他2件

  30. 2021/6/18マーケット

    【サマリー】ワンプラは大幅反落

  31. 2021/6/17アップデート

    初値予想の変更:HCSホールディングス 他1件

  32. 2021/6/17マーケット

    【サマリー】ステラファーマの戻り鮮明

  33. 2021/6/16アップデート

    初値予想の変更:ベイシス 他1件

  34. 2021/6/16マーケット

    【サマリー】テンダは一段安の展開へ

  35. 2021/6/15アップデート

    初値予想の変更:ドリームベッド 他2件

  36. 2021/6/15マーケット

    【サマリー】Sイノベーションが戻しを試す展開

  37. 2021/6/14マーケット

    【サマリー】ステラファーマが上昇トレンド入りか

  38. 2021/6/10アップデート

    初値予想の変更:全研本社

最新IPO情報

  1.  CINC(4378)のマザーズへの新規上場が承認されました。ここでは、CINCのIPOに関する基本…
  2.  アスタリスク(6522)のマザーズへの新規上場が承認されました。ここでは、アスタリスクのIPOに関…
  3.  セーフィー(4375)のマザーズへの新規上場が承認されました。ここでは、セーフィーのIPOに関する…
  4.  プロジェクトカンパニー(9246)のマザーズへの新規上場が承認されました。ここでは、プロジェクトカ…
  5.  ROBOT PAYMENT(4374)のマザーズへの新規上場が承認されました。ここでは、ROBOT…
  6.  リベロ(9245)のマザーズへの新規上場が承認されました。ここでは、リベロのIPOに関する基本情報…

IPOセカンダリー

直近3ヵ月のIPO株

【2021/09/24 17:30 更新】

銘柄 前日比 初値比 値動き
セレンディ
7318
0.6%
1,180円
28.7%
1,656円
call_missed_outgoing
調整
ベイシス
4068
3.36%
6,150円
18.3%
5,200円
call_missed_outgoing
反転
アルマード
4932
6.01%
758円
12%
861円
trending_up
上昇
HCS
4200
7.61%
1,583円
28.4%
2,210円
call_missed_outgoing
反転
ステムセル研
7096
1.12%
6,180円
28%
4,830円
call_missed_outgoing
調整
日本電解
5759
4.92%
3,735円
96.6%
1,900円
call_missed_outgoing
反転
コンフィデ
7374
3.36%
2,460円
15.5%
2,911円
trending_up
横這
BlueMeme
4069
1.84%
2,159円
24.2%
2,850円
trending_down
下落
Waqoo
4937
5.17%
1,261円
46.6%
2,362円
undo
下ス
プラスアル
4071
1.17%
2,790円
2.6%
2,720円
undo
下ス
OPS
7699
0.2%
992円
34.3%
1,510円
trending_up
横這
BCC
7376
1.67%
2,135円
36.3%
3,350円
undo
下ス
コラントッテ
7792
1.3%
1,013円
26.9%
1,385円
trending_up
横這
ラキール
4074
1.68%
2,168円
12.6%
2,480円
call_missed_outgoing
調整
アシロ
7378
2.06%
744円
49.7%
1,480円
undo
下ス
ランドネット
2991
0.13%
3,825円
28.1%
5,320円
undo
下ス
サーキュ
7379
12.5%
3,555円
10.9%
3,205円
keyboard_return
急騰
ブレインズ
4075
6.26%
2,411円
42.1%
4,165円
call_missed_outgoing
反転
AIメカテック
6227
0%
1,557円
19.8%
1,941円
undo
下ス
デリバリー
9240
0.8%
1,013円
31.2%
1,472円
call_missed_outgoing
反転
FLN
9241
2.28%
2,695円
37.5%
4,315円
trending_up
横這
シイエヌエス
4076
0.73%
1,801円
40.2%
3,010円
undo
下ス
タンゴヤ
7126
2.12%
1,881円
10.5%
1,703円
undo
下ス
Jフロンティ
2934
1.36%
3,345円
6%
3,560円
undo
下ス
メディア総研
9242
0.73%
2,480円
20.1%
3,105円
undo
下ス
モビルス
4370
3.94%
1,664円
9.1%
1,830円
undo
下ス
ジオロケ
4018
0.24%
2,859円
19.5%
3,550円
call_missed_outgoing
反転
CCT
4371
15.17%
5,590円
20.6%
7,040円
keyboard_return
急落
ユミルリンク
4372
5.33%
1,580円
7.7%
1,711円
undo
下ス
レナサイエン
4889
0%
826円
15.4%
976円
trending_down
下落
シンプレクス
4373
4.85%
1,960円
18.1%
1,660円
redo
上ス

一覧へ

IPOセカンダリー投資

  1. 人気IPO株の初値買いはあり?   ここ数年のIPO市場を最も賑わせているのは、『AI(エ…
  2.  IPO株を初値で買おうとする場合に、一番最初に悩むのが、果たして初値が大きく上昇したIPO株は買う…
  3.  IPO投資がしたくても抽選に当たらずになかなかできない、セカンダリーでIPO株を買っても値動きが大…
  4.  rakumoが9月28日に東証マザーズに上場しました。ここでは、まぐまぐのセカンダリー投資の実践日…
  5.  まぐまぐが9月24日に東証マザーズに上場しました。ここでは、まぐまぐのセカンダリー投資の実践日記を…
  6.  ニューラルポケットが8月20日に東証マザーズに上場しました。ここでは、ニューラルポケットのセカンダ…

アーカイブ

ページ上部へ戻る