ポートフォリオグラフに円グラフとトレンド分析を追加した話【AIと共同制作②】
前回作ったポートフォリオグラフに、セクター比率とトレンド分析を追加しました。
36銘柄になってきたので「どこに偏ってる?」「どこが伸びてる?」を可視化した続編です。
① きっかけ
前回の記事(AIとゼロからポートフォリオグラフを作った話)で、5種類のグラフを作りました。
トータル推移、ヒートマップ、銘柄別損益、セクター別折れ線、株価変化率。これだけあれば十分だろうと思っていたんですが、36銘柄に増えてきて新しい疑問が出てきました。
「そもそも自分のポートフォリオ、セクター的に偏ってない?」
セクター別折れ線グラフは「含み損益の推移」は見えるんですが、評価額ベースの比率がわからない。つまり「ヘルスケアに全体の何%突っ込んでるのか」が見えてなかったんです。
もうひとつ。
「どのセクターが直近で伸びてて、どこが沈んでるのか」
銘柄単位の前日比はあるけど、セクター単位で見たトレンドがなかった。次に何を買い増すかの判断材料として、これが欲しかった。
というわけで、クロちゃんに追加をお願いしました。
さらに作業を進めていく中で、もうひとつ欲しいものが出てきました。
「市場全体でどのセクターが過熱してるのか」
自分のポートフォリオだけ見ていても、市場の波に乗れているのかわからない。東証33業種の騰落データを使って、市場全体のセクタートレンドも可視化することにしました。こちらはチャッピー(ChatGPT)にデータ収集を担当してもらいました。
② 追加したグラフ
⑥ セクター比率(円グラフ)

評価額ベースのドーナツチャートです。
各セクターをタップすると、構成銘柄がアコーディオンで展開されます。銘柄ごとの評価額と含み損益(金額・%)が一覧で見える仕組み。
見てすぐわかったこと:ヘルスケア・医薬が全体の約33%を占めている。
理由はHOYAです。1銘柄で5万4千円。2株持ってるだけでセクター比率をぶっ壊すレベルの存在感w
逆に海運は川崎汽船1銘柄で全体の1%未満。セクター分散という観点では、まだまだ偏りがありますね。
⑦ セクター別トレンド(前日比 / 前週比)

各セクターの評価額の前日比と前週比を横棒グラフで表示しています。
こちらもタップで構成銘柄が展開されて、銘柄ごとの前日比・前週比がパーセントと金額の両方で確認できます。
「セクター全体で見ると食品が下がってるけど、中を開けたらキッコーマンが足引っ張ってるだけだな」みたいな分析が一瞬でできる。
前週に未保有だった銘柄(住友電工など新規購入分)は「NEW」と表示されます。
⑧ 市場セクタートレンド(東証33業種→13セクター集約)

これがおまけのつもりで作って一番面白かったやつです。
東証33業種の騰落率データをチャッピーに取ってきてもらい、自分のポートフォリオと同じ13セクターに集約して表示しています。
前日比・1週間・1ヶ月・6ヶ月・1年の5期間をタブで切り替え可能。過熱セクターには🔥、冷却セクターには🧊のタグが自動表示されます。
タップすると東証33業種の内訳が展開されるので、「素材・製造が過熱してるのは非鉄金属が+14%で引っ張ってるからか」みたいな深掘りもできます。
🟢は自分が保有しているセクター、🔘は未保有。未保有のセクターが上位にいたら「乗り遅れてる」とわかる仕組みです。
③ 実装のポイント
新しいデータブロックは追加していない
ここが一番こだわったところです。
既存の STOCKS_HEATMAP(銘柄別評価額)と SECTORS(セクター別pnl配列)から、JavaScript内で全部計算しています。
セクター評価額 = STOCKS_HEATMAPのvalueをセクター別に合計
前日の評価額 = 投資額(value - pnl) + 前日のpnl
前週の評価額 = 投資額(value - pnl) + 前週のpnl
つまり、毎週のデータ更新は今まで通り5つのブロックを書き換えるだけで、⑥と⑦のグラフも自動的に最新になります。
26年エンジニアとしては、これが一番大事。更新コストが増えない設計じゃないと続かないので。
積み上げ棒グラフは不採用にした
最初は「前週・前日・当日の3本で100%積み上げ棒グラフを作ったら比率の変化が見えるのでは?」と試してみたんですが……
大して変わらねぇw
考えてみれば当然で、DCAで月1万円を36銘柄に分散してるわけですから、1週間でセクター比率が劇的に変わるわけがない。
クロちゃん:逆に言うと、これが意味出てくるのは1〜2ヶ月後。「テックに偏りすぎてるから次は食品買おう」みたいな判断材料になります。
というわけで、比率は円グラフで「今」を見る。トレンドは横棒で「動き」を見る。役割を分けたほうがスッキリしました。
アコーディオンUIが正解だった
円グラフもトレンドも、セクターをタップすると構成銘柄が展開される仕組みにしました。
最初はツールチップだけでいいかなと思ったんですが、スマホで見ることを考えるとタップで展開するアコーディオンのほうが圧倒的に使いやすい。一覧性が全然違います。
⑧はクロちゃんとチャッピーの分業で実現
市場セクタートレンドは、クロちゃん単体では作れませんでした。リアルタイムの業種別騰落率データが必要だからです。
そこでチャッピーに「東証33業種の騰落率をTSVで出して」とプロンプトを投げて、データ収集を担当してもらいました。返ってきたTSVをクロちゃんに渡してグラフ化。
チャッピー:データ収集 → クロちゃん:グラフ化
この分業フロー、一昔前ならExcelで半日かけてやってたことが、プロンプト2本で終わりますw
実際にチャッピーに投げたプロンプトがこちらです。
# チャッピーへの指示:セクター別騰落率データ取得(全期間)
## 目的
日本株市場の東証33業種の騰落率を全期間分取得して、TSV形式で出力してください。
## 取得してほしいデータ
以下の5期間すべての騰落率を取得してください。
- 前日比(%)
- 1週間騰落率(%)
- 1ヶ月騰落率(%)
- 6ヶ月騰落率(%)
- 1年騰落率(%)
ソースはYahoo!ファイナンス、日経、株探、みんかぶ等どこでもOKです。
## 東証33業種リスト(漏れチェック用)
水産・農林、鉱業、建設、食料品、繊維、パルプ・紙、化学、医薬品、
石油・石炭、ゴム、ガラス・土石、鉄鋼、非鉄金属、金属製品、機械、
電気機器、輸送用機器、精密機器、その他製品、電気・ガス、陸運、海運、
空運、倉庫・運輸、情報・通信、卸売、小売、銀行、証券・商品先物、
保険、その他金融、不動産、サービス
## 出力形式
業種名(タブ)前日比(%)(タブ)1週間比(%)(タブ)1ヶ月比(%)(タブ)6ヶ月比(%)(タブ)1年比(%)
## ルール
- 33業種すべて漏れなく出力
- 数値は小数点第2位まで
- プラスには「+」をつける
- 取得できなかった項目は「N/A」と記入
- データ取得日時を最終行に明記
- TSV以外のテキスト(説明・補足・注釈)は一切不要
「TSV以外一切不要」と念押ししないと、チャッピーは余計な説明を足してくるので注意ですw
④ 見えてきたこと
グラフを追加して、ポートフォリオの構造的な課題が見えてきました。
HOYA依存のヘルスケア偏重
ヘルスケア・医薬がポートフォリオの約33%を占めています。ただしその半分以上がHOYA1銘柄。
HOYAが大きく下がるとポートフォリオ全体に直撃するリスクがあるということです。良くも悪くもHOYA次第。
テック・ITはアドバンテスト一本足
テック・ITセクターの約60%がアドバンテスト。半導体サイクルの影響をモロに受けるセクター構成になっています。
食品・消費財は下落トレンド
トレンドグラフを見ると、食品・消費財セクターが前週比でマイナス。中を開けると、キッコーマンとトリドールHDが足を引っ張っていることがわかります。
次に買うべきセクターが見えた
セクター比率が低い「海運」「人材・サービス・精密」あたりに追加すると分散が効く。トレンドが上向きのセクターに乗るか、下がってるセクターを拾うか。
市場の波と自分のポートフォリオのギャップ
⑧の市場セクタートレンドを1年で見ると、非鉄金属が+323%、電気機器が+89%で素材・製造とテック・ITが圧倒的に過熱しています。
自分のポートフォリオを見ると、素材・製造は保有しているけど比率は14%程度。テック・ITは19%でアドバンテスト頼み。市場の波に乗れてはいるけど、もっと厚く張れた可能性はあったということです。
逆に未保有の「エネルギー」は1年で+65%超。完全に乗り遅れてるw
自分のポートフォリオの比率 × 市場のトレンド = 次のアクション。
この掛け算が一画面で見えるのが、今回のグラフ追加の最大の収穫でした。
まとめ
前回の5種グラフに、セクター比率(円グラフ)、セクター別トレンド(横棒グラフ)、市場セクタートレンドを追加して、合計8種になりました。
やったことをまとめると、こうです。
- ⑥ セクター比率:評価額ベースの円グラフ。タップで構成銘柄展開。未保有セクターも0%で明示。
- ⑦ セクター別トレンド:前日比・前週比の横棒グラフ。タップで銘柄別の%と金額を表示。
- ⑧ 市場セクタートレンド:東証33業種→13セクター集約。5期間タブ切り替え。過熱🔥/冷却🧊タグ付き。
- ⑥⑦は既存データから自動計算:新しいデータブロック不要。更新コストゼロ。
- ⑧はチャッピーとの分業:データ収集はチャッピー、グラフ化はクロちゃん。
- 積み上げ棒は不採用:DCAでは短期の比率変化が小さすぎて意味がなかったw
ポートフォリオが「数字の羅列」から「構造を持った地図」になり、さらに「市場全体の風向き」まで見えるようになりました。次はこの地図を見ながら、どこに兵を送るか考えますw
※本記事は個人の投資記録です。特定銘柄の購入を推奨するものではありません。投資は自己責任でお願いします。
