Launch a virtual committee composed of three top investor styles to conduct rigorous independent review, adversarial debate, and a voting resolution on the target company.
⚔️ Core Design Principles
- Physical Isolation: Each Agent is an independent Gemini API call with a complete Persona system prompt.
- Deep Persona: A generalized investment philosophy framework that does not depend on specific cases.
- Data Injection: Automatically fetch real-time macro data (interest rates, exchange rates, VIX), and use forward filling (
ffill) to handle holidays/missing data, ensuring Druckenmiller always receives valid intelligence. - Intelligent Retry: Built-in Exponential Backoff mechanism to automatically handle API 429 rate-limit errors.
- Resolution Mechanism: Debate ends --> automatically extract votes --> Chairman Agent forms the resolution.
👥 Committee Members
| Role | Core Investment Philosophy | Data Injection |
|---|---|---|
| Buffett | "Business" thinking, moat, margin of safety | Standard research report |
| Wood | Wright's Law, S-curve inflection points, technological convergence | Standard research report |
| Druckenmiller | Liquidity is king, price action, asymmetric odds | Real-time macro snapshot (US Treasuries/US Dollar/VIX) |
For detailed personas, see: references/personas/ directory.
🔄 Execution Flow
Pre-Flight: Data Fetching
The script automatically fetches from Yahoo Finance:
- 10-year US Treasury yield (
^TNX) - US Dollar Index (
DX-Y.NYB) - Volatility Index (
^VIX) - S&P/Nasdaq trend (
SPY,QQQ)
Phase 1: Independent Review
Each expert reads the research report (Druckenmiller additionally receives macro data) and gives an independent judgment.
Phase 2: Adversarial Debate
Multiple rounds of debate, targeted rebuttals, and position updates.
Phase 3: Voting & Decision
- Extract each expert's vote (Buy/Reject/Watch) and confidence level.
- Generate the "Investment Committee Final Resolution" incorporating the macro background.
🛠️ Tech Stack
- LLM: Google Gemini 2.0 Flash (
google-genai) - Data: Yahoo Finance (
yfinance) - Env: Supports HTTP proxy
🚀 Usage
1. Install Dependencies
pip install -r requirements.txt
2. Set Up the Environment
# Windows PowerShell
$env:GEMINI_API_KEY='<YOUR_API_KEY>' # 替换为你的 Gemini API Key
# 可选代理(如使用 Clash/V2Ray 等)
$env:HTTP_PROXY='http://127.0.0.1:<PORT>' # 替换为你的代理端口
$env:HTTPS_PROXY='http://127.0.0.1:<PORT>'
Get API Key: Visit Google AI Studio to create an API Key
3. Run
python scripts/run_committee.py <path_to_report.md> --rounds 3 --output ./output
📁 Skill Directory Structure
investment-committee/
├── SKILL.md # 本文件 (架构说明)
├── TROUBLESHOOTING.md # 问题排查
├── requirements.txt # 依赖 (google-genai, yfinance)
├── scripts/
│ └── run_committee.py # 核心执行脚本 (包含数据抓取逻辑)
└── references/
└── personas/ # 通用化人设提示词
├── buffett.md
├── wood.md
└── druckenmiller.md