【Vibe Codingその5】Geminiに要件を投げたら「最終・完全版設計指示プロンプト」になった(実物公開)
はじめに:今回はコーディングしないVibe Coding回です
前回(その4)で、投資管理ツールを作るための要件定義を固め始めました。
今回はその続きで、実装は一切せずに、Geminiに要件を投げて「要件定義書(というか設計指示書)」を作らせるところまでやります。
ポイントはこれです。
- 最初はシンプルな要件から始めた
- 追加したいことが出るたびに箇条書きで追記した
- 最終的に、Geminiの出力が「詳細設計書を作らせるためのプロンプト」になった
これまでの記事(その1〜その4)
シリーズの流れは以下です(必要ならここから読めます)。
- その1:https://comp.make-all.net/vibe_coding_01
- その2:https://comp.make-all.net/vibe_coding_02
- その3:https://comp.make-all.net/vibe_coding_03
- その4:https://comp.make-all.net/vibe_coding_04
今回の前提:Geminiを選んだ理由と進め方
今回使ったAIは Gemini です。
ChatGPTでも良かったのですが、もし将来的に「HTMLのデザイン」や「画面のそれっぽい叩き台」まで出してもらうなら、体感としてGeminiの方が相性が良いかも?と思い、まずはGeminiで進めています。
進め方はシンプルで、
- 要件は 箇条書き
- 1回で全部は書かず、分割して貼り付け
- 「こういう機能も追加して」と思いついたら追記
- コーディングはしない(まずは書類だけ)
という形にしました。
制約(例:技術スタック固定、期間、予算)や「やらないこと」は、この段階ではあえてガチガチに縛っていません。
最初に投げた要件(シンプル版)
最初にGeminiへ投げた要件は本当にシンプルで、主にこの2つです。
- 保有している銘柄を管理したい(日本株+米国株)
- 売買シグナルも表示したい
売買シグナルは「未練」があったので、最初の要件に入れました。
(あとで削ると画面構成が変わって面倒になるのが嫌で、いったん“仮置き”として残す方針にしました)
Geminiの初回アウトプットで「使える」と思った点
シンプルな要件を投げた直後、Geminiは「要件定義書の章立て」っぽい形で返してきました。
この時点で良かったのは、単に機能の羅列ではなく、
- DBを使うかどうか
- CSVをどう扱うか
- データをどう保持するか
みたいな、設計の論点を自然に出してくれたところです。
「実装はまだ」でも、こういう観点が早めに出るだけで、後からやり直しが減るので助かりました。
追加した要件:投資の“意思決定支援”に寄っていった
その後、入力を続けているうちに「これも必要だな」と思いついて、要件を追加しました。
複数の証券会社を区別したい(3社)
私は複数の証券会社を使っているので、これを区別して管理したいです。
今回は要件として、社名まで指定しました。
- SBI
- eスマート
- 楽天
(口座種別:特定/一般/NISA、取引区分:現物/信用、なども含めて管理したい)
目標配分に対する「買い増し/リバランス」アクションを表示したい
ここが今回、要件として一気に強くなった部分です。
- 目標配分(評価額ベースの比率)を設定
- 月次の投資予算(円)を入力
- 目標配分に近づけるための 買い増し/売却株数 を算出して提示
売買シグナルよりも、**ポートフォリオ戦略ベースで“どう動くべきか”**を見たい気持ちが強くなりました。
AI分析用にCSVエクスポートしたい(途中で生えた機能)
これは入力している途中に思いついたアイデアです。
「保有している銘柄やセクター情報をまとめてAIに渡せたら、分析ができるのでは?」
と思い、AIが解釈しやすいCSVでエクスポートできるようにしたいと要望しました。
米国株の円/ドル管理はこうする(SBI証券アプリの表示を前提)
米国株の取得単価については、いま使っているSBI証券アプリが
- ドルベースの平均取得単価
- 円ベースの平均取得単価
を表示してくれるので、今回はそれをそのまま入力する前提にします。
損益は次の2種類を出します。
- 円換算の損益
- ドル損益
為替レートについては、取得単価の段階では(アプリ表示が反映している想定で)入力済み。
一方で、現在値の換算に使う為替は自動取得するイメージです。
【実物公開】Geminiが出力した「最終・完全版設計指示プロンプト」
ここからが今回の成果物です。
これはGeminiの出力そのままです(私の加筆・修正なし)。
# 株式投資・iDeCO統合管理システム【最終・完全版設計指示プロンプト】
あなたは、金融工学とデータサイエンスに精通したシニアシステムアーキテクトです。以下の詳細な要件に基づき、プロ仕様の投資支援システムの**詳細設計書**を策定してください。
## 1. システム哲学
* **「守りと攻めの両立」**: 2%ルールによるリスク管理と、F&G連動の攻めのスイッチング。
* **「規律あるリバランス」**: 目標配分と月次予算に基づく最適投資。
* **「AIフレンドリーなデータ出力」**: 外部AIによる高度な分析を前提としたエクスポート機能。
---
## 2. 重点管理機能
### 2.1 ポートフォリオ管理 & リバランス(最優先)
* **目標配分設定**: 銘柄ごとに評価額ベースの「目標比率(%)」を設定。
* **月次リバランス提案**: 毎月の投資予算(円)に基づき、目標比率に近づけるための「買い増し/売却株数」を算出・提示。
* **詳細管理項目**:
* 証券会社(SBI/eスマート/楽天)、口座種別(特定/一般/NISA)、取引区分(現物/信用)。
* 米国株のドル単価・為替レートを保持。
* **リスク指標**: 2%ルール(許容損失額から逆算した購入株数)、期待値、プロフィットファクター、R倍数。
### 2.2 AI連携・データエクスポート(新規追加)
* **AI分析用CSV出力**: 保有銘柄の全ステータス(銘柄、取得単価、現在値、損益率、比率、セクター、口座種別等)をAIが解釈しやすい形式で一括書き出し。
* **プロンプトテンプレート**: CSVと一緒に、AIへ入力するための「分析依頼用プロンプト(例:このポートフォリオのセクター偏りとリスクを診断して)」をクリップボードにコピーする機能。
### 2.3 売買シグナル管理
* **戦略(A)の動的管理**: GC/DC、Turtles(ドンチャン)等の戦略をGUIから選択・パラメータ調整。
* **バックテスト**: 戦略別の過去検証(期待値、最大ドローダウン算出)。
* **LINE通知**: 毎朝7:00に「シグナル」「F&G値」「iDeCO指示」「リバランス提案」を送信。
### 2.4 iDeCOスイッチング管理(F&G連動)
* **F&Gアルゴリズム**:
* F&G >= 70:株式の7.5%を3週に分けて定期預金へ。
* F&G <= 35:定期預金の1/3を3週に分けて株式へ。
* **進捗管理**: 3週分割の実行ステータス(1/3など)を永続化し、次回予定を表示。
---
## 3. データ定義(CSV/DB構造)
### ① 資産状況エクスポート(AI分析用)
`Export_Date, Ticker, Name, Sector, Market, Quantity, Avg_Cost, Current_Price, Profit_Loss_Rate, Portfolio_Weight, Broker, Account_Type`
### ② 売買履歴(Trades)
`Date, Ticker, Market, TradeType, Broker, Account, Quantity, Price_Local, ExchangeRate, Fee_Tax, EntryReason, MentalState`
### ③ iDeCO履歴(iDeCO_History)
`Execute_Date, FG_Value, From_Asset, To_Asset, Amount, Step_Status, Next_Date`
---
## 4. UI/UX 要件
* **ダッシュボード**:
* 左:F&Gゲージ、中:リバランス・買い増し指示、右:資産サマリー。
* **「AI分析用データ出力」ボタン**を強調配置。
* **言語**: 日本語UI。
* **チャート**: Plotlyを使用。目標配分ラインと現在値の乖離を可視化。
---
## 5. 設計指示
上記を踏まえ、以下の内容を出力してください。
1. **リバランス計算アルゴリズム**: 予算と目標配分から売買株数を導出する詳細数式。
2. **AI分析用エクスポート仕様**: AIが最も精度高く分析できるデータ構造の提案。
3. **詳細エンティティ定義**: 各テーブルのカラム、型、制約。
4. **GUIレイアウト詳細案**: 日本語で「リバランス指示」と「AI出力」が使いやすいダッシュボード設計。
まずは、**「1. リバランス計算アルゴリズム」**と、**「2. AI分析用エクスポートのデータ定義」**から提案を開始してください。
この出力が強いと思った点(個人開発に効く)
今回のGemini出力で「これは使える」と思ったのは、単なる要望リストではなく、
- システム哲学(投資判断の軸)が明文化されている
- 最優先機能が「リバランス」と明記されている
- CSV/DBのデータ定義まで落ちている
- UI要件(ダッシュボード構成)が入っている
- 次にAIが出すべきアウトプット(数式、エンティティ定義、GUI案)が指示になっている
という形で、次工程にそのまま渡せるところです。
「要件定義書」というより、「詳細設計書を生成するためのプロンプト」になっていて、ここまで来ると作業が前に進む感覚が強いです。
逆にここは注意:盛られやすい(だからMVPを切る)
このままだとプロ仕様なので、全部やると重いです。
売買シグナルのGUI管理、バックテスト、LINE通知、iDeCOスイッチングなど、やることが多い。
なので次は、まずMVPとして
- 銘柄管理(日本株/米国株)
- 複数証券会社(SBI/eスマート/楽天)
- 目標配分+月次予算でリバランス提案
- AI分析用CSVエクスポート
- (売買シグナルは仮置き表示)
くらいに絞って、実装に入るのが良さそうです。
次回(その6)予告:MVPをIssue化して、いよいよ実装に入る(A案)
次回は、この「最終・完全版設計指示プロンプト」をベースに、MVPをIssue化していきます。
やりたいことはシンプルで、
- まず「最小で動く形(MVP)」の範囲を確定
- それを Issue(受け入れ条件付き) に分割
- 1Issueずつ潰して、実装を前に進める
という流れです。
「AIに全部一気に作らせる」のではなく、タスクを小さく切って、成果物を積み上げる方向に寄せます。
おわりに
「要件を箇条書きで投げる」→「追記しながら育てる」だけで、ここまで整理された成果物が出るのは素直に便利でした。
次は、MVPの境界を決めてIssueに落とし、実装フェーズに進みます。
追記(任意):関連記事の再掲
- その1:https://comp.make-all.net/vibe_coding_01
- その2:https://comp.make-all.net/vibe_coding_02
- その3:https://comp.make-all.net/vibe_coding_03
- その4:https://comp.make-all.net/vibe_coding_04

ディスカッション
コメント一覧
まだ、コメントがありません