Claude Codeで投資担当AIを作る方法|PayPay証券の情報を台帳につなぐ第4話
Claude Codeで投資担当AIを作る際に、最初に整えたのは「何を任せ、どこで人が確認するか」です。今回はAI-BUSINESS-OSに6人目のAI社員となる投資担当を追加し、ログイン済みのPayPay証券の画面から読み取った保有情報を、ローカルの台帳へ反映するところまで進めました。
前回の第3話・AI社員の専門Skill作成では、成果物の保存先とブログSEO監査の専門Skillを整えました。今回はその続きとして、投資担当の役割、保存先、判断の記録方法、ブラウザからの読み取りを一つずつ組み立てています。
収録で確認できる到達点は、実データの台帳反映と、AI部長への分析依頼です。最終的な分析レポートの完成や、継続運用の成果はまだ確認していません。その区切りも含め、実際の作業を紹介します。
Claude Codeで投資担当AIを6人目のAI社員として追加する

最初に、投資担当の定義ファイル「investment.md」を作成しました。あわせて共通ルールのCLAUDE.mdと、AI部長のmanager.mdを更新し、既存の5人のAI社員に投資担当を加えた6人体制へそろえています。
任せる範囲は、資産状況の整理、市場・銘柄の調査、リスクの確認、提案の下書きです。実際の発注、売買、入出金は担当させない方針を明記しました。ログインと認証も本人が行う前提です。
AI部長は依頼を投資担当へ渡し、返ってきた結果をまとめて報告します。担当を増やすだけでなく、誰が仕事を受け、どこへ結果を返すのかを、既存の組織に合わせて整理しました。
今回の中心はAgentの定義と運用設計です。新しい専門Skillの完成を示す回ではありません。
保有情報と判断の記録先を先に用意する

次に、保有情報を蓄積するための台帳を用意しました。日々の保有状況を残すholdings_daily.csv、現金を記録するcash_daily.csv、取引履歴のtransactions.csv、銘柄情報のmaster_holdings.csv、集計用のsummary.jsonなどです。
この段階では空の台帳やテンプレートを作成しており、実際の口座データはまだ入れていません。まず保存する項目と場所を決め、そのあとにデータを取り込む順番です。
初期の運用案は、本人が共有した情報をAIが読み取り、人が内容を確認してから保存する形でした。その後、ログイン済みのPCブラウザを参照できるか、検証を進めました。
将来の経営ダッシュボードへつなげる設計も行っています。ただし、投資の損益は事業の売上・利益と合算せず、「資産運用」として別に表示する方針です。今回作成したのはデータ側の準備で、ダッシュボードの表示画面は未着手でした。
判断理由と、判断を変える条件も残す

途中で、投資担当の回答内容を見直しました。資産状況やニュースを並べるだけでなく、判断理由、主なリスク、判断を変える条件まで含める設計へ広げています。
判断の履歴を残すために、judgments.csvも追加しました。後から実際の値動きと照らし合わせ、結果や改善点を振り返るための記録先です。これは記録方法を整えた段階であり、判断の精度や収益性が検証できたという意味ではありません。
確認できない情報は「未取得」「判断不能」と明示する方針も、改めて整理しました。もっともらしい説明を作るより、分かっていることと分からないことを分けて残す。そのルールは、後半の実データ取得でも必要になりました。
ブラウザの読み取りでは、設定とページ構造につまずいた

PCブラウザからの参照方法は、AppleScript経由のJavaScript実行、Chrome DevTools MCP、画面キャプチャの画像読み取りという3案を比較しました。収録ではAppleScript経由の方法を選び、本人がログインしたChromeの画面を読む検証へ進んでいます。
ただし、「読むだけにする」という運用方針と、技術的に読み取りしかできない権限は別です。今回の比較画面でも、JavaScriptを実行できる仕組み自体が、操作を完全に禁止するものではないと整理されていました。本記事はその検証記録であり、証券サイトへの自動接続を一律に勧める手順ではありません。
実際には、Chrome側の設定が反映されず、テキストを取得できない場面がありました。設定を確認したあとも、ページ全体のテキストを読む方法では合計額などしか取れず、銘柄別の明細表が取得できませんでした。
原因を調べると、明細表はページの中に埋め込まれた別の枠、iframeの中にありました。その枠内のテキストを読むことで、明細の取得へ進んでいます。「画面で見える」ことと「同じ方法ですべて読める」ことは違う、と分かった場面です。
実データを台帳へ反映し、分析を依頼する

取得した保有情報は、CSVの台帳とsummary.jsonへ反映されました。一方で、その画面から確認できなかった取得価格、現在価格の単価、銘柄コード、口座区分などは、推測せず「未取得/未確認」として扱っています。
初回登録のため比較できない前日比も、値を作って埋めることはしていません。記録を始めた時点で、取得済みの情報と、今後確認する情報を分けています。
台帳へ反映したあと、AI部長へ、市場調査、銘柄ごとの分析、新しい候補の調査、判断ログの記録、日次レポート作成を依頼しました。今回の動画は、その最終報告を待っているところで終わっています。
そのため、この記事で「分析まで全自動で完成した」「毎日安定して動いている」とは言えません。今回確認できたのは、役割を作り、読み取ったデータを台帳へ渡し、次の分析依頼へつなげたところまでです。
今回分かったことと、次に確認すること
今回の作業でつながったのは、「担当の定義 → 保存先の準備 → ブラウザからの読み取り → 台帳への反映 → 分析依頼」という流れです。AI社員を増やすときは、役割の名前だけでなく、入力、確認、保存、報告の順番まで整える必要がありました。
次に確認したいのは、AI部長からの最終報告、未取得項目の補完方法、判断ログが実際に残るか、日をまたいで同じ手順を続けられるかです。定期実行や継続運用の検証は、今回の到達点と分けて扱います。
画面を読み取れるようになったことは一歩前進です。その結果を人が確認し、後から検証できる形で残すところまで整えて、日常の仕事に使える仕組みに近づけていきます。
関連記事
https://www.otosan-fukugyo.com/claude-code/
参考資料
※本文は今回の画面収録に基づく構築記録です。個別銘柄の売買推奨を目的とした記事ではありません。掲載画像では口座名や具体的な保有金額が見える範囲を除外しています。
