Pythonで東証が公開している「東証上場銘柄一覧」から銘柄一覧を取得してみました!
(調査日:2023年3月13日)
【調査時の環境】
・requests 2.28.2
・pandas 1.5.3
目次
Pythonライブラリをインストール
コマンド実行
$ pip install requests pandas
サンプルコード
JPX_stocklist.py
import requests, datetime, os
import pandas as pd
url = "https://www.jpx.co.jp/markets/statistics-equities/misc/tvdivq0000001vg2-att/data_j.xls"
fn = "/code/list/{0}_JPX_data.xls".format(datetime.datetime.now().strftime('%Y-%m'))
if not os.path.isfile(fn):
r = requests.get(url)
with open(fn, 'wb') as output:
output.write(r.content)
stocklist = pd.read_excel(fn)
print(stocklist)
実行結果
実行結果
日付 コード 銘柄名 市場・商品区分 33業種コード 33業種区分 17業種コード 17業種区分 規模コード 規模区分
0 20230228 1301 極洋 プライム(内国株式) 50 水産・農林業 1 食品 7 TOPIX Small 2
1 20230228 1305 ダイワ上場投信-トピックス ETF・ETN - - - - - -
2 20230228 1306 NEXT FUNDS TOPIX連動型上場投信 ETF・ETN - - - - - -
3 20230228 1308 上場インデックスファンドTOPIX ETF・ETN - - - - - -
4 20230228 1309 NEXT FUNDS ChinaAMC・中国株式・上証50連動型上場投信 ETF・ETN - - - - - -
... ... ... ... ... ... ... ... ... ... ...
4239 20230228 9993 ヤマザワ スタンダード(内国株式) 6100 小売業 14 小売 7 TOPIX Small 2
4240 20230228 9994 やまや スタンダード(内国株式) 6100 小売業 14 小売 7 TOPIX Small 2
4241 20230228 9995 グローセル プライム(内国株式) 6050 卸売業 13 商社・卸売 7 TOPIX Small 2
4242 20230228 9996 サトー商会 スタンダード(内国株式) 6050 卸売業 13 商社・卸売 - -
4243 20230228 9997 ベルーナ プライム(内国株式) 6100 小売業 14 小売 6 TOPIX Small 1
[4244 rows x 10 columns]
市場・商品区分は何があるか?
stocklist["市場・商品区分"].drop_duplicates()
実行結果
0 プライム(内国株式)
1 ETF・ETN
36 スタンダード(内国株式)
57 グロース(内国株式)
68 PRO Market
243 プライム(外国株式)
823 REIT・ベンチャーファンド・カントリーファンド・インフラファンド
1908 スタンダード(外国株式)
2685 グロース(外国株式)
3596 出資証券
Name: 市場・商品区分, dtype: object
市場区分ごとの銘柄数は?
for market in stocklist["市場・商品区分"].drop_duplicates(): print("Market:{0}, Num:{1}".format(market, len(stocklist[stocklist["市場・商品区分"] == market])))
実行結果
Market:プライム(内国株式), Num:1835
Market:ETF・ETN, Num:310
Market:スタンダード(内国株式), Num:1445
Market:グロース(内国株式), Num:512
Market:PRO Market, Num:69
Market:プライム(外国株式), Num:1
Market:REIT・ベンチャーファンド・カントリーファンド・インフラファンド, Num:65
Market:スタンダード(外国株式), Num:2
Market:グロース(外国株式), Num:3
Market:出資証券, Num:2
プライム(内国株式)は1835銘柄ある。
以上!
コメント