Inspiration
近年、日本では新NISAが開始されたり株価が上昇したりと、個人でも投資に対する機運が高まっています。これに伴い、どの企業に投資すれば良いのかわからない、希望する銘柄が複数あるが何を根拠に決めれば良いのか迷ってしまうという、投資初心者の声が増しています。ファイナンシャルプランナーや投資家などに相談することもできますが、財務諸表やオルタナティブデータを元に企業情報をそのまま「ファイター」として生成し、直接戦わせることで、投資意思決定を支援するサービスができないか?ということを考えて企画・実装を行いました。
What it does
戦わせたい企業を2社決めて、企業名を指定することで、その企業に関連する情報をEDINETその他情報ソースから集めてきて、「ファイター」としてイメージ図の生成およびステータスの設定を自動で行います。生成されたファイターを好きなバトルフィールドで戦わせることで、企業の強みや弱みを楽しみながら把握することができます。
How we built it
アプリはアクセスしやすいブラウザベースとし、ホスティングはサイト更新、管理が簡単なFirebaseを利用しました。また、回答を生成する際にはEDINETから取得した企業の有価証券報告書を利用することで、より正確な情報を回答できるようにしています。これはGemini1.5シリーズのPDFモダリティを利用し、直接LLMに読み込ませています。そのほかには、Geminiにイメージ生成用プロンプトも生成させることで、その企業のイメージに合った画像を自動的に生成しています。
Challenges we ran into
- 回答に時間がかかる:1つの回答で全ての内容を出力させることで生成時間を大幅に短縮しました。また、元々利用していたGemini1.5ProからGemini1.5Flashに変更することで精度をほぼ落とさず、費用の削減と回答時間の短縮を行えました。
- 1つのプロンプトで複数の回答を一気に生成させる際、どのようにコードから読み取れるようにするか:|company1statNum|[1000, 500, 600, 230, 700]|company1statNum|のように、区分ごとにタグ付けをさせることで回答をコード的に分割させることができました。
- 企業情報が正確でない、数値が少ない:有価証券報告書を取得し、プロンプトと同時入力することで正確な売上高などを把握できるようにしました。
- 会社名が正確でないと書類が取得できない:事前に日本の上場企業の正式名のリストを用意しておき、選択式にすることで解決しました。
Accomplishments that we're proud of
財務情報および非財務情報から企業のイメージを可視化・数値化する取組について、データの集め方やユーザにとって楽しみのあるプロンプト設定など、実装するほどにアイディアが湧き上がってくる貴重な体験ができました。企業そのものや企業分析について、ファイターを通じて血の通った理解ができるユニークなアプローチを実装できたと考えています。
What we learned
企業比較という書類を探して見比べるだけではあまり華やかなものではない作業も、今回のアプリを利用することで面白く、直感的に行えるようになりました。特にこのアプリでは書類の検索、比較という単調な作業をAIに任し、重要な回答部分を面白くすることを意識しました。技術をただ持つだけでなく現状の課題を理解し、最適な利用技術を選択し、実装するという総合的なスキルの重要性を再確認できました。
また、技術的な学びとしてはモデル、プロンプトの工夫も奥深いと感じました。通常要約や質問の回答に使われているLLMも、プロンプトを工夫することでこれまでの固いプログラミングと融合できました。また、同じプロンプトでもモデルごとに回答が大きく変わったり、回答速度、費用、対応データ形式など様々な項目があるため、ユーズケースによるモデルの使い分けもとても重要だと感じました。
What's next for Finance Fighters 2
- 対象企業をグローバル企業に拡張する
- ファイターのステータス設定を生成AIに任せるのではなくなんらか根拠のあるモデルにする
- オルタナティブデータのバリエーションを増やし、より多様な評価軸を設定する



Log in or sign up for Devpost to join the conversation.