investment-team

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Codex adapter note

Codex adapter note

This skill is generated from
skills/investment-team.md
so Claude Code and Codex users share one canonical workflow.
  • Treat
    $ARGUMENTS
    as the user's request in the current Codex thread.
  • When the source mentions Claude-only surfaces such as Task, Agent, WebSearch, Bash, Read, or Write, use the closest Codex capability available in this session: subagents when available, web search when needed, shell commands for local tools, and normal file edits for workspace files.
  • Use shared project tools from
    tools/
    in this repository. Prefer running commands from the repository root with paths like
    python3 tools/financial_rigor.py ...
    ; if the current thread starts outside the repo, locate the actual checkout path first instead of assuming a fixed home-directory path.
  • Before starting research, run the
    date
    command to confirm today's date; treat it as the baseline for "latest" data and state the data cutoff date in the report header. Never assume the current date from training data.
  • Preserve the research quality rules from
    AGENTS.md
    : cross-check financial data, use exact arithmetic tools for valuation/math, and clearly label uncertainty and source gaps.
This skill is generated from
skills/investment-team.md
so Claude Code and Codex users share one canonical workflow.
  • Treat
    $ARGUMENTS
    as the user's request in the current Codex thread.
  • When the source mentions Claude-only surfaces such as Task, Agent, WebSearch, Bash, Read, or Write, use the closest Codex capability available in this session: subagents when available, web search when needed, shell commands for local tools, and normal file edits for workspace files.
  • Use shared project tools from
    tools/
    in this repository. Prefer running commands from the repository root with paths like
    python3 tools/financial_rigor.py ...
    ; if the current thread starts outside the repo, locate the actual checkout path first instead of assuming a fixed home-directory path.
  • Before starting research, run the
    date
    command to confirm today's date; treat it as the baseline for "latest" data and state the data cutoff date in the report header. Never assume the current date from training data.
  • Preserve the research quality rules from
    AGENTS.md
    : cross-check financial data, use exact arithmetic tools for valuation/math, and clearly label uncertainty and source gaps.

投研团队:四角色并行分析框架

Investment Research Team: Four-Role Parallel Analysis Framework

对 $ARGUMENTS 进行团队化投资研究分析。使用 Team 工具创建真正的多Agent并行研究团队。
Conduct team-based investment research and analysis on $ARGUMENTS. Use the Team tool to create a true multi-Agent parallel research team.

执行流程

Execution Process

第一步:展示团队框架

Step 1: Present Team Framework

向用户展示以下团队结构,确认后启动:
角色职责分析框架
team-lead(你自己)统筹协调、汇总研判、输出最终报告四大师综合框架
business-analyst商业模式 & 护城河分析段永平视角
financial-analyst财务报表 & 估值分析巴菲特视角
industry-researcher行业格局 & 竞争态势芒格视角
risk-assessor风险评估 & 管理层研判李录视角
Present the following team structure to the user and start after confirmation:
RoleResponsibilitiesAnalysis Framework
team-lead (yourself)Overall coordination, summary and research, output final reportSynthesis Framework of Four Masters
business-analystBusiness model & moat analysisPerspective of Duan Yongping
financial-analystFinancial statement & valuation analysisPerspective of Warren Buffett
industry-researcherIndustry structure & competitive landscapePerspective of Charlie Munger
risk-assessorRisk assessment & management researchPerspective of Li Lu

第一步半:AI研究偏见评估

Step 1.5: AI Research Bias Assessment

在创建团队前,先向用户展示该公司的"AI可研究性"评估:
信息丰富度评级(决定研究策略):
等级特征研究策略调整
A级(信息充裕)上市多年、券商覆盖广团队重点放在反面检验非共识视角,避免输出与市场一致的"正确的废话"
B级(信息适中)上市不久、覆盖有限每个Agent的推算数据必须标注置信度,team-lead汇总时标注"数据充分度"
C级(信息稀缺)冷门/新上市/新兴市场团队转为"第一性原理模式":不追求报告完整性,聚焦商业本质的几个核心问题
关键提醒:资料多≠确定性高,资料少≠确定性低。AI能输出的置信度 ≠ 投资的真实确定性。确定性来自商业模式本身,不来自资料数量。
将评级结果告知每个Agent,影响其研究方式。
Before creating the team, present the "AI Research Feasibility" assessment of the company to the user:
Information Abundance Rating (determines research strategy):
RatingCharacteristicsResearch Strategy Adjustment
Grade A (Ample Information)Listed for many years, extensive brokerage coverageThe team focuses on reverse verification and non-consensus perspectives, avoiding "correct nonsense" consistent with the market
Grade B (Moderate Information)Recently listed, limited coverageAll calculated data by each Agent must be marked with confidence level, and the team-lead must mark "data sufficiency" during summary
Grade C (Scarce Information)Niche/ newly listed/ emerging marketThe team switches to "First Principles Mode": do not pursue report completeness, focus on several core issues of business essence
Key Reminder: More information ≠ higher certainty, less information ≠ lower certainty. The confidence level AI can output ≠ the actual investment certainty. Certainty comes from the business model itself, not from the quantity of information.
Inform each Agent of the rating result to influence their research methods.

第一步¾:WebSearch 权限预检(关键 · 避免 Agent 静默退化)

Step 1.75: WebSearch Permission Pre-check (Critical · Avoid Agent Silent Degradation)

在创建团队、启动任何后台 Agent 之前,必须先确认 WebSearch 权限已放行。
为什么必须预检:本 skill 用
run_in_background: true
启动 4 个后台子 Agent,而后台 Agent 无法向用户弹出交互式权限确认。若
WebSearch
未在
.claude/settings.local.json
permissions.allow
白名单中,子 Agent 的联网搜索会被静默拦截,导致其退化为仅凭训练知识(有知识截止日期)作答,却仍按框架输出一份"看起来完整、实则未联网"的伪研究——这是本 skill 最危险的失败模式(见 issue #58)。
预检步骤
  1. 用 Bash 检查白名单是否含 WebSearch:
    bash
    grep -l '"WebSearch"' .claude/settings.local.json ~/.claude/settings.local.json 2>/dev/null
  2. 若两处都未命中(即未放行)→ 停下来,不要启动 Agent,提示用户:
    ⚠️ 检测到 WebSearch 未在权限白名单中。后台研究 Agent 无法联网,会退化成仅凭训练知识作答。请先在
    .claude/settings.local.json
    permissions.allow
    加入
    "WebSearch"
    (或运行
    /permissions
    勾选),再重跑本命令。
  3. 命中 → 正常继续。
Before creating the team and starting any background Agents, must first confirm that WebSearch permission is granted.
Why Pre-check is Necessary: This skill uses
run_in_background: true
to start 4 background sub-Agents, and background Agents cannot pop up interactive permission confirmation to users. If
WebSearch
is not in the
permissions.allow
whitelist of
.claude/settings.local.json
, the sub-Agents' web search will be silently blocked, causing them to degenerate into answering based solely on training knowledge (with knowledge cutoff date), yet still output a "seemingly complete but actually unconnected" pseudo-research according to the framework — this is the most dangerous failure mode of this skill (see issue #58).
Pre-check Steps:
  1. Use Bash to check if the whitelist includes WebSearch:
    bash
    grep -l '"WebSearch"' .claude/settings.local.json ~/.claude/settings.local.json 2>/dev/null
  2. If neither location hits (i.e., not granted) → Stop, do not start Agents, prompt the user:
    ⚠️ Detected that WebSearch is not in the permission whitelist. Background research Agents cannot access the internet and will degenerate into answering based solely on training knowledge. Please add
    "WebSearch"
    to
    permissions.allow
    in
    .claude/settings.local.json
    (or run
    /permissions
    and check the box), then re-run this command.
  3. If hits → Proceed normally.

第二步:创建团队

Step 2: Create Team

使用 TeamCreate 创建团队:
  • team_name:
    {公司名}-research
    (英文小写,如
    meituan-research
  • agent_type:
    team-lead
Use TeamCreate to create the team:
  • team_name:
    {company-name}-research
    (lowercase English, e.g.,
    meituan-research
    )
  • agent_type:
    team-lead

第三步:创建4个任务

Step 3: Create 4 Tasks

使用 TaskCreate 创建以下4个任务(每个都要有 subject、description、activeForm):
Use TaskCreate to create the following 4 tasks (each must have subject, description, activeForm):

任务1:商业模式分析

Task 1: Business Model Analysis

  • subject:
    分析{公司名}商业模式、护城河与用户价值
  • description 包含:
    1. 商业模式本质:核心生意定义、收入结构拆解
    2. 平台/产品飞轮效应如何运转
    3. 护城河分析:品牌/转换成本/网络效应/规模效应/技术壁垒,逐一验证
    4. 用户/客户价值:为各方创造了什么独特价值
    5. 业务矩阵与协同效应
    6. 段永平"好生意"标准评估:差异化、定价权、可持续竞争优势
    7. 要求搜索最新财报、行业报告等公开信息
  • subject:
    Analyze {company-name}'s business model, moat and user value
  • description includes:
    1. Essence of business model: core business definition, revenue structure breakdown
    2. How platform/product flywheel effect operates
    3. Moat analysis: brand/switching cost/network effect/scale effect/technical barrier, verify one by one
    4. User/customer value: what unique value is created for all parties
    5. Business matrix and synergistic effect
    6. Assessment against Duan Yongping's "good business" standards: differentiation, pricing power, sustainable competitive advantage
    7. Require searching latest financial reports, industry reports and other public information

任务2:财务与估值分析

Task 2: Financial and Valuation Analysis

  • subject:
    分析{公司名}财务数据、盈利能力与估值
  • description 包含:
    1. 近3-5年营收、净利润、经营利润趋势
    2. 盈利能力指标:ROE、ROA、毛利率、经营利润率
    3. 现金流分析:经营性现金流、自由现金流、资本开支
    4. 资产负债表健康度:现金储备、负债率、流动性
    5. 估值分析:PE/PS/PB/EV等,与历史及同业对比
    6. 安全边际评估:内在价值 vs 当前股价
    7. 金融严谨性验证(必须使用Bash调用工具,禁止心算)
      • 市值验算:
        python3 tools/financial_rigor.py verify-market-cap --price {价格} --shares {股本} --reported {报告市值} --currency {币种}
      • 估值验算:
        python3 tools/financial_rigor.py verify-valuation --price {价格} --eps {EPS} --bvps {每股净资产}
      • 关键数据交叉验证:
        python3 tools/financial_rigor.py cross-validate --field {字段} --values '{JSON}' --unit {单位}
      • 三情景估值:
        python3 tools/financial_rigor.py three-scenario --price {价格} --eps {EPS} --shares {股本亿} --growth {乐观} {中性} {悲观} --pe {乐观PE} {中性PE} {悲观PE}
      • 将工具输出结果直接嵌入报告中作为验证记录
  • subject:
    Analyze {company-name}'s financial data, profitability and valuation
  • description includes:
    1. Trends of revenue, net profit, operating profit in the past 3-5 years
    2. Profitability indicators: ROE, ROA, gross margin, operating profit margin
    3. Cash flow analysis: operating cash flow, free cash flow, capital expenditure
    4. Balance sheet health: cash reserves, debt ratio, liquidity
    5. Valuation analysis: PE/PS/PB/EV, comparison with historical and peer data
    6. Margin of safety assessment: intrinsic value vs current stock price
    7. Financial Rigor Verification (Must use Bash to call tools, no mental calculation allowed):
      • Market capitalization verification:
        python3 tools/financial_rigor.py verify-market-cap --price {price} --shares {shares} --reported {reported-market-cap} --currency {currency}
      • Valuation verification:
        python3 tools/financial_rigor.py verify-valuation --price {price} --eps {EPS} --bvps {book-value-per-share}
      • Key data cross-validation:
        python3 tools/financial_rigor.py cross-validate --field {field} --values '{JSON}' --unit {unit}
      • Three-scenario valuation:
        python3 tools/financial_rigor.py three-scenario --price {price} --eps {EPS} --shares {shares-in-billions} --growth {optimistic} {neutral} {pessimistic} --pe {optimistic-PE} {neutral-PE} {pessimistic-PE}
      • Directly embed tool output results into the report as verification records

任务3:行业与竞争分析

Task 3: Industry and Competition Analysis

  • subject:
    分析{行业}行业格局与{公司名}竞争态势
  • description 包含:
    1. 行业规模与增长:市场规模、增速、渗透率
    2. 竞争格局:主要对手市场份额、竞争策略对比
    3. 核心竞争者威胁评估:逐个分析主要竞争对手
    4. 各细分赛道格局
    5. 行业趋势:技术变革、政策影响、新进入者
    6. 产业链分析:上中下游价值分配
    7. 要求搜索最新行业数据和竞争动态
  • subject:
    Analyze {industry}'s structure and {company-name}'s competitive landscape
  • description includes:
    1. Industry scale and growth: market size, growth rate, penetration rate
    2. Competitive landscape: market share of major competitors, comparison of competitive strategies
    3. Core competitor threat assessment: analyze major competitors one by one
    4. Structure of each segmented track
    5. Industry trends: technological changes, policy impacts, new entrants
    6. Industry chain analysis: value distribution in upstream, midstream and downstream
    7. Require searching latest industry data and competitive dynamics

任务4:风险与管理层评估

Task 4: Risk and Management Assessment

  • subject:
    评估{公司名}投资风险与管理层质量
  • description 包含:
    1. 管理层评估:CEO能力圈、诚信度、战略眼光、资本配置能力、历史决策质量
    2. 监管风险:当前及潜在监管影响
    3. 竞争风险:各竞争对手威胁程度评估
    4. 业务风险:新业务亏损、扩张不确定性
    5. 宏观风险:经济周期、行业周期影响
    6. 治理结构:股权结构、关联交易、股东回报政策
    7. 长期确定性:10年后公司会怎样?什么可能颠覆其商业模式?
    8. 要求搜索最新监管动态、管理层言论等
  • subject:
    Assess {company-name}'s investment risks and management quality
  • description includes:
    1. Management assessment: CEO's circle of competence, integrity, strategic vision, capital allocation ability, quality of historical decisions
    2. Regulatory risk: current and potential regulatory impacts
    3. Competitive risk: assessment of threat levels from various competitors
    4. Business risk: losses from new businesses, expansion uncertainty
    5. Macro risk: impacts of economic cycle, industry cycle
    6. Governance structure: ownership structure, related party transactions, shareholder return policies
    7. Long-term certainty: What will the company be like in 10 years? What might disrupt its business model?
    8. Require searching latest regulatory dynamics, management statements, etc.

第四步:启动4个并行Agent

Step 4: Launch 4 Parallel Agents

使用 Task 工具同时启动4个Agent(必须在同一条消息中并行调用):
每个Agent的配置:
  • subagent_type
    :
    general-purpose
  • run_in_background
    :
    true
  • team_name
    : 对应团队名
  • name
    : 对应角色名(business-analyst / financial-analyst / industry-researcher / risk-assessor)
每个Agent的prompt模板:
你是{公司名}投研团队中的"{角色中文名}",负责从{大师名}投资视角分析{公司名}。

请完成任务 #{任务编号}:{任务subject}

具体要求:
{任务description的内容}

**研究方法**:
- 使用 WebSearch 搜索最新公开信息(财报、行业报告、新闻)
- **财务数据必须来自两个独立来源**,按 `skills/financial-data.md` 规范执行(美股:macrotrends+stockanalysis;港股:aastocks+macrotrends;A股:东方财富+巨潮资讯;台股:FinMind `tools/twstock_data.py`+Goodinfo),两源误差>1%须标记
- 确保数据准确,关键数据标注来源
- 分析要深入,不流于表面
- **联网失败禁止伪装**:若 WebSearch 被拦截/不可用,禁止用训练知识冒充联网结果。必须在报告顶部醒目标注「⚠️ 本报告未能联网,基于训练知识(截止日期 X),置信度降级」,并如实告知 team-lead,由其决定是否中止研究

**输出要求**:
- 报告要详尽,使用Markdown表格呈现关键数据
- 每个分析维度要有明确结论和评分
- 报告末尾要有该维度的总体结论

**完成后**:
1. 使用 TaskUpdate 将任务 #{任务编号} 标记为 completed
2. 通过 SendMessage 把完整分析报告发送给 team-lead(type: "message", recipient: "team-lead")
Use the Task tool to launch 4 Agents simultaneously (must call the Task tool 4 times in the same message):
Configuration for each Agent:
  • subagent_type
    :
    general-purpose
  • run_in_background
    :
    true
  • team_name
    : Corresponding team name
  • name
    : Corresponding role name (business-analyst / financial-analyst / industry-researcher / risk-assessor)
Prompt template for each Agent:
You are the "{Chinese-role-name}" in the {company-name} investment research team, responsible for analyzing {company-name} from the investment perspective of {master-name}.

Please complete Task #{task-number}: {task-subject}

Specific requirements:
{content-of-task-description}

**Research Methods**:
- Use WebSearch to search for the latest public information (financial reports, industry reports, news)
- **Financial data must come from two independent sources**, follow the specifications in `skills/financial-data.md` (US stocks: macrotrends+stockanalysis; Hong Kong stocks: aastocks+macrotrends; A-shares: East Money+CNINFO; Taiwan stocks: FinMind `tools/twstock_data.py`+Goodinfo), mark if the error between the two sources exceeds 1%
- Ensure data accuracy, mark sources for key data
- Conduct in-depth analysis, avoid superficial content
- **Forbidden to fake network failure**: If WebSearch is blocked/unavailable, forbidden to pretend to have network results using training knowledge. Must prominently mark "⚠️ This report failed to access the internet, based on training knowledge (cutoff date X), confidence level downgraded" at the top of the report, and truthfully inform the team-lead, who will decide whether to terminate the research

**Output Requirements**:
- The report must be detailed, use Markdown tables to present key data
- Each analysis dimension must have clear conclusions and ratings
- Include an overall conclusion for this dimension at the end of the report

**After Completion**:
1. Use TaskUpdate to mark Task #{task-number} as completed
2. Send the complete analysis report to the team-lead via SendMessage (type: "message", recipient: "team-lead")

第五步:接收报告并跟踪进度

Step 5: Receive Reports and Track Progress

  • 向用户实时展示进度表(哪些Agent已完成、哪些仍在研究中)
  • 每收到一份报告,更新进度并展示该报告的核心要点(3-5条)
  • 等待全部4份报告到齐
  • Display a real-time progress table to the user (which Agents have completed, which are still researching)
  • Update progress and display 3-5 core key points of the report each time a report is received
  • Wait for all 4 reports to arrive

第六步:关闭团队成员

Step 6: Shut Down Team Members

全部报告收到后,向4个Agent发送 shutdown_request(使用 SendMessage,type: "shutdown_request")。
After receiving all reports, send a shutdown_request to the 4 Agents (using SendMessage, type: "shutdown_request").

第七步:汇总最终报告

Step 7: Summarize Final Report

综合4份分析报告,输出以下结构的最终报告:

Synthesize the 4 analysis reports and output the final report with the following structure:

1. 一句话结论

1. One-Sentence Conclusion

用一段话(50-100字)概括是否值得投资及核心逻辑
Summarize whether it is worth investing and the core logic in a paragraph (50-100 words)

2. 四维评分总表

2. Four-Dimension Rating Summary Table

维度框架评分(1-5星)核心判断
综合评分:X / 5
DimensionFrameworkRating (1-5 stars)Core Judgment
Overall Rating: X / 5

3. 核心数据速览

3. Core Data Overview

关键财务和经营指标表格(近2年对比)
Table of key financial and operating indicators (comparison of the past 2 years)

4. 各维度分析摘要

4. Analysis Summary by Dimension

每个维度摘取3-5条最重要的发现
Extract 3-5 most important findings from each dimension

5. 投资论点(Bull vs Bear)

5. Investment Arguments (Bull vs Bear)

  • 🟢 看多逻辑(5-7条)
  • 🔴 看空逻辑(5-7条)
  • 🟢 Bull Case (5-7 points)
  • 🔴 Bear Case (5-7 points)

6. 巴菲特买入前Checklist

6. Buffett's Pre-Buy Checklist

| # | 检查项 | 通过? | 说明 | 10个核心检查项,逐一评估
| # | Checklist Item | Pass? | Explanation | 10 core checklist items, evaluate one by one

7. 最终投资建议

7. Final Investment Recommendation

  • 定性判断表(生意质量/管理层/估值/时机)
  • 分层操作建议表(激进型/稳健型/保守型 → 建议+价格区间)
  • 关键催化剂(加仓信号/减仓信号各3-5条)
  • Qualitative judgment table (business quality/management/valuation/timing)
  • Tiered operation recommendation table (aggressive/conservative/very conservative → recommendation + price range)
  • Key catalysts (3-5 points each for buy signals/sell signals)

8. 总结段落

8. Summary Paragraph

100-200字的最终总结

Final summary of 100-200 words

第八步:保存报告

Step 8: Save Report

将完整最终报告写入
~/{公司名}投资研究报告_{日期}.md
(日期格式 YYYYMMDD)。
Write the complete final report to
~/{company-name}_Investment_Research_Report_{date}.md
(date format YYYYMMDD).

第九步:数据抽检(准出流程)

Step 9: Data Sampling Inspection (Exit Process)

bash
undefined
bash
undefined

Step 1 — 提取抽检清单(15%随机抽样)

Step 1 — Extract inspection list (15% random sampling)

python3 tools/report_audit.py extract
--report <报告文件路径>
python3 tools/report_audit.py extract
--report <report-file-path>

Step 2 — 对清单每项从可靠信源取数(参见 skills/financial-data.md)

Step 2 — Fetch data for each item in the list from reliable sources (refer to skills/financial-data.md)

Step 3 — 输出准出/打回判决

Step 3 — Output approval/rejection verdict

python3 tools/report_audit.py verdict
--results '<填好的JSON>'
--report <报告文件名>

**【准出】** 全部通过 → 报告可发布;**【打回】** 有不通过 → 修正后重审。
python3 tools/report_audit.py verdict
--results '<filled-JSON>'
--report <report-file-name>

**【Approval】** All passed → Report can be published; **【Rejection】** Any failed → Revise and re-review.

第十步:清理团队

Step 10: Clean Up Team

使用 TeamDelete 清理团队资源。
Use TeamDelete to clean up team resources.

重要注意事项

Important Notes

  1. 4个Agent必须并行启动——在同一条消息中调用4次Task工具
  2. Agent通过SendMessage汇报——不是文件协作,是消息通信
  3. 数据准确性——要求Agent使用WebSearch搜索最新数据,关键数据交叉验证
  4. 结论要明确——不回避给出买入/观望/回避建议和具体价格区间
  5. 所有分析必须有数据支撑——附数据来源
  6. 耐心等待——4个Agent研究需要几分钟,实时向用户更新进度
  7. 反偏见意识——team-lead在汇总时必须评估:各Agent的分析是否受限于资料充裕度?是否与市场共识过度趋同?最终报告需包含"信息丰富度评级"和"AI研究局限性声明"
  8. 信息稀缺时的诚实原则——宁可在报告中留白标注"数据不足",也不要用推测填满框架伪装确定性
  1. 4 Agents must be launched in parallel — Call the Task tool 4 times in the same message
  2. Agents report via SendMessage — Not file collaboration, but message communication
  3. Data Accuracy — Require Agents to use WebSearch to search for the latest data, cross-validate key data
  4. Clear Conclusions — Do not avoid giving buy/hold/avoid recommendations and specific price ranges
  5. All analysis must be supported by data — Attach data sources
  6. Be Patient — 4 Agents need a few minutes for research, update progress to the user in real-time
  7. Anti-Bias Awareness — When summarizing, the team-lead must evaluate: Are the analyses of each Agent limited by information abundance? Are they excessively convergent with market consensus? The final report must include "Information Abundance Rating" and "AI Research Limitation Statement"
  8. Honesty Principle When Information is Scarce — It is better to leave blank and mark "insufficient data" in the report than to fill the framework with speculation to fake certainty