Codex adapter note
This skill is generated from skills/industry-funnel.md so Claude Code and Codex users share one canonical workflow.
- Treat
$ARGUMENTSas 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 likepython3 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
datecommand 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.
Execute funnel-style value investing screening for the $ARGUMENTS industry/direction, scanning the entire market and progressively narrowing down to 3 final selected targets.
Applicable scenarios
When you name an industry or investment direction (such as "AI computing power", "innovative drugs", "robotics") and want to:
- Not miss any important target (including A-shares, Hong Kong stocks, US stocks, and unlisted candidates)
- Use unified standards to filter out "story stocks" and companies of insufficient quality
- Focus energy on the 3 leaders truly worth in-depth research
- Each layer has clear keep/discard criteria, reviewable and traceable
And industry-research The difference:
industry-researchFocuses on industry chain structure and the full landscape, with segment slicingindustry-funnelFocuses on the individual stock screening funnel, progressively narrowing from the entire market down to 3 companies
The two can complement each other: first use industry-research to see the industry chain landscape clearly, then use industry-funnel to select targets.
Funnel structure overview
第一层:全市场扫描 30-60 家 (活跃度+涨幅+市值前 30 的并集)
↓ 价值投资 5 条硬指标
第二层:粗筛 ≤ 10 家 (5 条全部及格 + 护城河 ★★★ 以上)
↓ 精细分析
第三层:精细分析 ≤ 10 家 (每家 300-500 字结构化分析)
↓ 终选
第四层:四大师深度分析 3 家 (每家 800-1200 字,巴芒段李四视角)
↓
输出:投资建议 + 操作信号 + 仓位建议
For each layer, "targets filtered out" must retain the reason for elimination; no black box.
Step 1: Entire market scan entry
1.1 Definition of active stocks (union of three categories)
Category A - Trading activity:
- Average daily trading value over the past 30 days ranks among the top in the industry (top 30 each for A-shares/Hong Kong stocks/US stocks)
Category B - Gainers list:
- Top 20 gainers over the past 30 days
- Top 20 gainers over the past 90 days
- Union of the two
Category C - Market cap anchoring:
- Top 30 by market cap in the industry (regardless of rise or fall)
Final scan pool = A ∪ B ∪ C, expected 30-60 companies.
1.2 Markets that must be searched
| Market | Suggested sources |
|---|---|
| A-shares (Shanghai/Shenzhen) | Tonghuashun/East Money industry sectors, Tongdaxin |
| Hong Kong stocks | Futu/Tonghuashun Hong Kong stocks, HKEX industry classification |
| US stocks | NASDAQ/NYSE industry ETF holdings, Yahoo Finance |
| International markets | Relevant companies in Japan, South Korea, Taiwan, and Europe must not be missed (especially semiconductors and electronics) |
| Unlisted companies | List a separate "future IPO candidates" subsection, noting the latest valuation and potential IPO timing |
1.3 Output format
| Company name | Ticker | Market | Market cap | Main business in one sentence | Share of this industry | Inclusion category (A/B/C) |
|---|
Key self-check:
- Be cautious with "tangential stocks" whose industry share is < 30%, and mark them as "non-pure-play targets"
- Do not miss China/Asian markets because there is less English material
- Do not miss small-cap companies because AI prefers leaders
Step 2: Rough screening with 5 hard value investing criteria → ≤ 10 companies
Apply the 5 hard criteria one by one to the 30-60 companies from step 1.
2.1 The 5 hard criteria
| # | Criterion | Passing standard | Relaxed conditions | Data source |
|---|---|---|---|---|
| 1 | PE valuation | Reasonable (compared with historical range and peers) | For high growth, can relax to PEG < 1.5 | Financial reports + Wind/iFinD |
| 2 | ROE | > 15% or improving trend over the past 3 years | Can be relaxed for asset-heavy industries | Financial reports |
| 3 | Operating cash flow | Positive and > 70% of net profit | — | Financial reports |
| 4 | Debt-to-asset ratio | < 60% | For utilities/power, can be relaxed to 70% | Financial reports |
| 5 | Quick moat assessment | ★★★ or above | — | Qualitative judgment |
5 types of moats:
- Brand/pricing power
- Switching costs/user stickiness
- Network effects
- Scale effects
- Technology/license/resource barriers
2.2 Output format
| Company | PE | ROE | Cash flow/net profit | Debt ratio | Moat | Overall | Keep/Drop | Reason for elimination |
|---|
Retention rules:
- All 5 criteria passed → keep directly
- 4 criteria passed + 1 close → keep but mark yellow
- Fewer than 4 criteria passed → eliminate, note the reason
Target: keep ≤ 10 companies. If too many are kept (> 12), raise the moat standard to ★★★★ and screen again.
Step 3: Detailed analysis (≤ 10 companies, 300-500 words each)
For companies retained from the rough screening, conduct a structured analysis of each one.
3.1 Analysis template for each company
## {公司名}({代码})
**一句话商业模式**:
(卖什么、卖给谁、怎么收钱)
**财务质量**:
- 收入增速 / 利润增速 / 毛利率 / ROE / 现金流
- 关键变化(近 1-2 年最重要的财务转折点)
**护城河深度**:
- 主要护城河类型 + 具体证据
- 护城河 5 年后是否还在的简要判断
**主要风险(前 3)**:
1.
2.
3.
**估值快评**:
- 当前 PE/PS/EV/EBITDA + 历史区间位置
- 同业对比
- 一句话结论:贵 / 合理 / 便宜
**进入终选 3 家?**:是 / 否(理由)
3.2 Selection criteria for the final 3 companies
Do not select the top 3 by score ranking; instead select by "portfolio complementarity":
- At least 1 "high certainty, low elasticity" company (Buffett type)
- At least 1 "medium certainty, medium elasticity" company (growth type)
- Optionally 1 "high elasticity, high risk" company (option type)
If a sub-track cannot find 3 sufficiently good companies, it is better to write "final selection of 2 + 1 watchlist company" than to pad the number.
Step 4: In-depth analysis by the four masters (3 companies, 800-1200 words each)
Conduct in-depth analysis from the perspectives of the four masters for the final 3 companies.
4.1 Duan Yongping's perspective: the essence of the business
- Define in one sentence what business this company is in
- Is this a good business? Why?
- What is its "benfen"? Has management deviated from it?
- Where is the "sustainability" of the business model?
4.2 Buffett's perspective: depth of the moat
- Score using the five types of moats (★1-5), list specific evidence
- Will the moat still be there in 10 years?
- Where is the "margin of safety" if buying now?
| Moat | Strength | Specific evidence |
|---|---|---|
| Brand/pricing power | ||
| Switching costs | ||
| Network effects | ||
| Scale effects | ||
| Technology/license barriers |
4.3 Munger's perspective: risk and failure modes
- How is this company most likely to fail? (List the top 3 failure paths)
- What is it worth in the worst-case scenario? (minimalist valuation)
- Why don't smart people buy it? (counterargument)
- Are there ethical/compliance/management risks?
4.4 Li Lu's perspective: civilization-level trend positioning
- Is the track this company is in a "civilization-level paradigm shift" or a "phase-specific fad"?
- What is the closest historical analogy to this technological revolution?
- What is this company's endgame 10-20 years from now?
- Is it a winner-takes-all landscape?
4.5 Overall recommendation rating
推荐度:★★★★☆
仓位类型:核心 / 卫星 / 期权 / 观察
建议买入区间:当前价 / 回调 N% / 有耐心等待
建议持仓比例:占该主题仓位 X%
关键监测指标:(这家公司逻辑一旦反转的信号是什么)
Step 5: Comprehensive output
Integration at the end of the report:
5.1 Final selection of 3 companies portfolio table
| Company | Type | Recommendation rating | Suggested position size | Core logic | Key risks |
|---|---|---|---|---|---|
| A | Core | ★★★★★ | 50-60% | ||
| B | Satellite | ★★★★☆ | 25-35% | ||
| C | Option | ★★★☆☆ | 5-15% |
5.2 Industry-level ETF alternatives
If you don't want to pick stocks, list 1-3 relevant ETFs (A-shares/Hong Kong stocks/US stocks).
5.3 Overall industry position assessment
- Industry PE/PB historical percentile
- Capital flows (northbound, ETF subscriptions/redemptions, sell-side coverage density)
- Overall, which stage is it in: "early/expansion/mature/decline"
5.4 Self-assessment of information sufficiency (required)
| Dimension | Level | Description |
|---|---|---|
| Completeness of company financial data | A/B/C | |
| Timeliness of valuation data | A/B/C | |
| Industry landscape assessment | A/B/C | |
| Management information | A/B/C |
A = data is sufficient and credible; B = partially missing but does not affect the main conclusion; C = considerably missing, conclusions need caution.
5.5 Data points to be updated
Clearly list: which data are estimates, which data need subsequent verification, and which quarterly earnings report needs key tracking.
5.6 Source list
Source links for each data point/conclusion, listed by category (financial reports, research reports, news, industry reports).
Awareness of AI research bias (important)
Pitfalls AI easily falls into during the funnel screening process:
| Bias | Manifestation | Response |
|---|---|---|
| Leader preference | Large-cap companies have more materials and longer analysis, so they look "better" | Score by hard metrics and moat, not by report length |
| English preference | US stock materials are abundant, while A-shares and Hong Kong stocks are easily undervalued | Must search in both Chinese and English; A/H companies cannot be missed |
| Story preference | High gains + media hype = "AI concept stocks" that look better | Distinguish "AI revenue share" vs "AI story share," and look at the real business |
| Present preference | Companies with good current financials are easily selected, possibly missing dark horses in transition periods | The second-layer rough screening allows "trend improvement" as a relaxed condition |
| Listed-company preference | Looking only at listed companies may miss the best players in the track | Must list "future IPO candidates," marking valuation and time window |
Output requirements
- Report location:
reports/{行业名}-funnel-{YYYYMMDD}.md(Industry reports go in the reports/ root directory) - Language: Chinese
- Style: Direct, sharp, no nonsense
- Data:All data must be sourced; estimated values must be marked "estimate"
- No preset stance:Present data first → reason through the logic → draw conclusions
- Both sides:Each core judgment is accompanied by counterarguments
- Keep an elimination record at each layer:Eliminated companies must also have their names + reasons retained
Data spot checks (release approval process)
After the report is written, perform data spot checks; only after passing may it be released:
# Step 1 — 提取抽检清单(15% 随机抽样)
python3 tools/report_audit.py extract \
--report <报告文件路径>
# Step 2 — 对清单每项从可靠信源取数(参见 skills/financial-data.md)
# Step 3 — 输出准出/打回判决
python3 tools/report_audit.py verdict \
--results '<填好的JSON>' \
--report <报告文件名>
【Approved for release】 All pass → the report may be released;【Returned】 If any do not pass → revise and re-review.
Follow-up actions
After the funnel selects the final 3 companies, each can be processed separately:
/investment-team—— Complete parallel in-depth research by the four masters (independent subdirectory + 5 documents)/investment-checklist—— Systematically go through Buffett's pre-purchase checklist/management-deep-dive—— In-depth management research
industry-funnel is the entry point; the follow-up skill is the deep dive.