見出し画像

IR-DX SaaS 「Hooolders」開発秘話(その2:業績数値取得の仕組み)

みなさまこんにちは。

FiguroutでIR-DXツール「Hooolders」のプロダクトマネージャーをしておりますZumiです。

今回も「プロダクト担当から見たIR」という切り口で、IR関連の情報を交えながら、Hoooldersの開発裏話を投稿させていただきます^^

※「Hooolders」は企業の経営者・IR担当者向けに作られたIR-DX SaaSです(詳細はこちら → https://lp.hooolders.com/)。

今回のテーマは「業績数値取得の仕組み」です。Hoooldersで扱っている各社の売上や利益などの数値がどのようにプロダクトに実装されているかをお話しさせていただきます。今回も若干技術よりな話題になりますが、ご容赦ください。

数値取得の難しさ

「売上高や純利益を取得するだけなのに、開発秘話なんてあるのか?」と思われる方もいらっしゃるかもしれません。確かに業績数値自体は複雑な計算が必要なわけではなく、サイトで検索すれば大体確認できるものです。実は私自身もHoooldersのPdMを始める前は、そのように考えていました。しかし、「言うは易く行うは難し」とはまさにこのことでした。

データソースは決算短信

多くの方がご存じかもしれませんが、各企業の業績数値は「決算短信」という形で四半期ごとに発表されます。この決算短信には、前述した売上高から純資産まで、実績・予想双方の最新数値が記載されています。Hoooldersでは、速報性と網羅性の観点から、この決算短信を情報ソースとして、各企業の業績数値を取得し、表示・反映させています。

この決算短信はTDnetという東証管轄のウェブサイトに掲載されます。ここから決算短信を自動で取得する仕組みを作り、各決算短信から業績数値を読み取ってそれらを対象企業に紐づけることで、はじめてHoooldersで業績数値が扱えるようになります。

直面した課題

図1. 当時の要素名取得プロセス整理

3つの会計基準

短信から値を取得するというのは、一見単純なプロセスですが、ここで直面した課題は、異なる企業の財務データを標準化し、一貫したフォーマットで処理することでした。決算短信には、日本基準・国際会計基準(IFRS)・米国基準の3つの会計基準が存在し、それぞれフォーマットが異なります。それらを統一するためのデータクレンジングプロセスを確立する必要がありました。特に、日本基準でいう「当期純利益」や「純資産」が、IFRSや米国基準ではどの項目に相当するのか、連結業績と個別業績をどう区別するかなど、正しい数値を取得するための仕様を検討する必要がありました。

業界固有名詞

さらに悩みの種となったのが、業界固有の表記名の存在です。これは、同じ「売上高」でも、それを表す要素名が業界によって異なることを意味します。例えば、銀行業では「経常収益」、建設業界では「完成工事高」といったように、同一会計基準でも業界ごとに異なる名称が記載されている場合があります。正確なデータの取得には、これに対応する名寄せ処理を組み込む必要があり、短信の仕様書や実際のデータを見比べながら取込仕様を定義しました。

例外処理

これで終わりかというと、まだ続きがあります。データを扱うシステムでは必ず行われる「例外処理(エラーハンドリング)」の確立です。短信は企業の業績を示した書類なので、業績によってはイレギュラーが発生します。例えば、国際情勢や景気の状況によっては、企業の業績予想が難しい場合があります。その場合、業績予想が記載されなかったり、範囲で表記されたりすることがあり、システムには通常の数値とは異なるデータが取り込まれることになります。2020年のコロナショックではこうした規定外の値が多く見受けられ、これらをどう処理するかを定める必要がありました。

結び

いかがでしたでしょうか。ほとんど技術の話になってしまいましたが、業績数値一つとってもこれだけの処理を検討する必要があり、さらに言えば、これをシステムに実装する作業があるのです。こうした複雑な仕様を理解し、時には共に検討し、実際のシステムに落とし込んでくれている技術メンバーには改めて感服する次第です。

というわけで、今回は「業績数値の取得」について(大幅に)プロダクト観点でお話させて頂きました。IR業界・金融業界の一端を(利用して)、一介のPdMが(業務の苦労話を)語るという形で今後とも情報発信していきたいと思いますので、引き続きご拝読頂ければ幸いです。

ご一読頂きありがとうございました^^

「Hooolders」に興味・関心を持たれた方は、是非この機会にお試しを!
→ 無料トライアルの申込はこちら

この記事が気に入ったらサポートをしてみませんか?