名古屋でAIシステムの開発をしている小嶋です。これは、まだ作っていないシステムの要件と仕様を先に書いておく記事です。当社は国会トラッカー、省庁トラッカー、論文トラッカーを運営していて、「上場企業の IR 資料も同じ型で追えないか」という話が出ました。作るかどうかは別として、何をどう作るかを決めたので、企画メモとして公開します。
名前は「Kurage IR トラッカー」(フォルダ名 kirtracker)です。
1. 何をするシステムか
上場企業が出す開示資料を毎日集め、テーマ別・企業別のページに並べ、国会の質疑・答弁とつなぐシステムです。
- 「情報漏えい」の開示を出した企業のページから、国会の「個人情報の漏えいとサイバー攻撃」の質疑へ
- 「賃上げ」の開示から、国会の最低賃金や人材確保の質疑へ
- 逆に、国会トラッカーのテーマのページに「このテーマに関係する開示を出した企業」の欄を出す
速報性で勝負する IR 速報サイトはすでにたくさんあるので、そこは狙いません。当社にしかできないのは、企業の動きと国会の議論を同じ画面で見せることです。使う人は、議員事務所と政策担当(地元企業・業界の動きを国会の議論と合わせて見る)、営業と経営者(取引先や同業の動きを毎朝見る)を想定しています。
2. 元データ(確かめたこと)
TDnet(東証の適時開示情報閲覧サービス)
日ごとの一覧ページが公開されていて、時刻・証券コード・会社名・題名・PDF のリンクが並びます。2026年10月23日分を実測すると、1ページ100件で3ページ、合計216件でした。1ページ目の題名を機械的に分けると、自己株式11件、業績予想8件、配当7件、役員・人事5件、決算短信3件、そして不正アクセス・漏えいが12件ありました(この日は GMO インターネットとその親会社の開示が並んでいます)。
- 鍵は要りません。日別の一覧ページを毎日1回読むだけで足ります
- PDF は当社で保存・転載せず、TDnet へのリンクにします。一覧ページは閲覧のために公開されているもので、再配布の権利まで与えられているわけではないためです。当社が持つのは、時刻・コード・会社名・題名・リンク先の URL です
- 一覧は過去30日ほどで消えるので、毎日取って自社の台帳に残します
EDINET API(金融庁)
有価証券報告書・四半期報告書・大量保有報告書などの一覧と本体が API で取れます。無料ですが、鍵(登録制)が要ります。鍵なしで呼ぶと「invalid subscription key」が返ることは確かめました。XBRL で売上・利益・従業員数・役員報酬などが構造化されて取れるのが強みで、EDINET の利用規約では API の利用と二次利用が認められています。
まず TDnet だけで始め、EDINET は第2段階で足します。
3. 機能の要件
毎日の取り込み
- 毎日、前日分の TDnet 一覧を3ページまで読み、台帳(SQLite)に追加する
- 取り込みは kdeck のジョブとして登録し、失敗したらメールで知らせる(当社の他のトラッカーと同じ)
- 休日は件数0が正常なので、0件を失敗と扱わない
テーマの分類(生成 AI は使わない)
題名に含まれる決まった言葉で分けます。省庁トラッカーと同じ考え方で、同じ開示なら何度やっても同じ結果になります。最初のテーマは次の8つです。
| テーマ | 題名に含まれる言葉の例 |
|---|---|
| 不正アクセス・情報漏えい | 不正アクセス、漏えい、漏洩、ランサムウェア |
| 業績予想の修正 | 業績予想の修正、上方修正、下方修正 |
| 賃上げ・人材 | 賃上げ、ベースアップ、初任給、人材 |
| 工場・拠点の新設と閉鎖 | 新設、閉鎖、撤退、移転、生産終了 |
| 不祥事・調査委員会 | 特別調査委員会、第三者委員会、不適切 |
| MBO・TOB・再編 | 公開買付け、MBO、TOB、合併、子会社化 |
| 株主還元 | 自己株式、配当、株主優待 |
| 役員の異動 | 代表取締役の異動、役員の異動、辞任 |
1つの開示が複数のテーマに入ってよいことにします。どのテーマにも入らない開示は「その他」に入れ、企業別のページにだけ出します。
企業ページ
- 証券コードごとに1ページ。会社名、直近の開示の一覧、テーマ別の件数、EDINET の最新の有価証券報告書へのリンク(第2段階)
- 国会で社名が出た質疑があれば、その一覧(国会トラッカーの発言ログを社名で引く)
テーマページ
- テーマごとに、直近90日の開示を日付順に並べる
- 同じテーマの国会の質疑・答弁へのリンク(国会トラッカーの対応するテーマへ)
- 件数の推移(週ごと)
国会トラッカー側への差し込み
- 国会トラッカーのテーマページに「このテーマに関係する開示を出した企業(直近30日)」の欄を出す。省庁トラッカーの「省庁の新しい発表」欄と同じ位置と作りです
共有
- 全ページに「X で共有」と「紹介文と URL をコピー」のボタンを見出しの直下に置く。コピーの文は、システム名と概要と URL をまとめたものにする(当社の全システム共通の決まり)
- テーマページと企業ページには、件数入りのカード画像を自動で作る
4. 画面の仕様
- 国会トラッカー・省庁トラッカーと同じ見た目(ライトテーマ固定、ヘッダー左上はロゴ、右の列に姉妹システムのバナーと PR の動画の枠)
- スマホ幅(320・360・390)で崩れないことを公開前に実測する
- 各ページに題名・説明文・正規 URL・OGP・構造化データ(WebPage と BreadcrumbList、よくある質問があれば FAQPage)を付ける
- 検索エンジンには、テーマページと企業ページを出す。日別の一覧は出さない(薄いページを増やさない)
5. 更新と運用
- 更新は毎日1回(TDnet の一覧が確定する深夜)。更新のジョブは kdeck と rqdb4ai で動かし、常駐プロセスは持たない
- 置き場は kurage.exbridge.jp。PHP と SQLite で動かし、データベースのサーバーは持たない(当社の他のトラッカーと同じ)
- ポートが要る場合は 18300番台の空きを実測して決める
- 公開前に、取り込んだ件数と TDnet の一覧の件数が一致することを確かめる
6. 権利の扱い
- TDnet の PDF は保存も転載もしない。当社が持つのは一覧の項目(時刻・コード・会社名・題名・URL)だけ
- EDINET の XBRL は、金融庁の規約に従って利用し、出典を明記する
- 会社名と開示の題名を並べることは公開情報の整理であり、評価や格付けはしない。「要注意」のような当社の判断を付けない
7. 作らない・やらないこと
- 速報の通知(メール・LINE で即時に知らせる)は作らない。既存の IR 速報サービスと競合するだけで、当社の強みが出ない
- 開示の中身の要約を生成 AI で作ることはしない。題名と出典へのリンクで足りる。要約を載せると、誤りの責任を当社が負うことになる
- 株価や投資の判断に関わる表示はしない
8. 作る順番(もし作るなら)
- TDnet の取り込みと台帳(1日)
- テーマの分類と、テーマページ・企業ページ(2日)
- 国会トラッカーとの相互リンク(1日)
- 共有ボタン・カード画像・OGP・サイトマップ(1日)
- EDINET API の鍵の登録と、有価証券報告書のリンク(第2段階)
当社の他のトラッカーの部品(ページの型、共有ボタン、カード画像、右の列、kdeck のジョブ)がそのまま使えるので、合計5日ほどの見積もりです。
よくある質問
EDINET APIは無料で使えますか
無料ですが、鍵の登録が必要です。鍵なしで呼ぶと認証エラーが返ります。利用規約で API の利用と二次利用が認められているので、出典を明記すれば自社のシステムに組み込めます。
TDnetの適時開示に API はありますか
公式の API はありません。日別の一覧ページが公開されているので、それを毎日読む形になります。PDF の本体は当社で保存せず、TDnet へのリンクにします。
このシステムは作られていますか
2026年10月24日の時点では、作っていません。元データが取れることと、要件・仕様を決めたところまでです。作るときは、この記事の仕様をもとに進めます。
当社の国会トラッカー・省庁トラッカーは、すでに公開しています。
Kurage 国会トラッカー https://xb4g.com/giin/tracker#ref=vibeblog-kirtracker
Kurage 省庁トラッカー https://exbridge.jp/shocho/#ref=vibeblog-kirtracker
