Buy-side discipline system. For each holding, maintain a written investment thesis — core thesis in 5 sentences, falsifiable assumptions, red lines, valuation anchors — and re-check it each quarter against new earnings/events. Scores thesis health 1-10 from assumption breakage and red-line triggers, and recommends hold / add / trim / exit. Use it right after buying a stock (to write the thesis) and every earnings season (to check it). Bridges the research→buy→monitor gap that most investors skip.
74
92%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Low
Low-risk findings worth noting
Track an investment thesis for a holding. First use on a company → build the thesis; later uses → quarterly check.
Supported input: company name (auto-decide build vs track); company build (force rebuild); company quarterly check (against latest earnings).
"Buying is only the beginning. The real work is continuous tracking through the holding period." — Li Lu
"When the facts change, I change my mind. What do you do, sir?" — Keynes
Most investors' process is: research → buy → pray. Without systematic post-buy tracking, they: refuse to sell when they should ("wait, it'll come back"); panic-sell when they shouldn't ("down 20%, was I wrong?"); forget why they bought ("why did I buy this again?").
Buffett and Li Lu write down sell conditions before buying, then check the thesis each quarter.
Check whether a thesis file already exists (use read_file on reports/{company}-thesis.md): not found → Build (Mode A); found → Track (Mode B).
Use web_search to get the current price, valuation (PE/PB/dividend yield), and latest financials. If a research report exists, read_file it first. Use financial_rigor (command=verify_valuation) to verify valuation, financial_rigor (command=verify_market_cap) to sanity-check market cap.
The thesis must answer 5 questions, one sentence each:
I bought {Company} at {price} because:
1. The essence of this business is ___, and I understand how it makes money.
2. Its moat is ___, and it's widening / stable.
3. Management is ___, trustworthy because ___.
4. The current price is a {discount}% to intrinsic value; the margin of safety comes from ___.
5. Even if I'm wrong, downside is contained because ___.If you can't fill 5 sentences, the thesis itself is flawed — the buy decision isn't clear enough.
Break the thesis into verifiable assumptions (3-7 typically; too few = shallow thinking, too many = unfocused):
| # | Core Assumption | How to verify | Frequency | Status |
|---|---|---|---|---|
| 1 | e.g. revenue growth stays >15% | Quarterly revenue growth | Quarterly | 🟢 Holding |
| 2 | e.g. gross margin stable >60% | Quarterly gross margin | Quarterly | 🟢 Holding |
| # | Red-line condition | Severity | Action on trigger |
|---|---|---|---|
| 1 | Management integrity problem (fraud, related-party) | Fatal | Exit immediately |
| 2 | Core business revenue down 2 consecutive quarters | Severe | Trim 50%, re-evaluate |
| 3 | Moat explicitly breached (competitor reaches parity) | Severe | Deep research, consider exit |
| 4 | Regulatory change fundamentally alters the business model | Severe | Re-value intrinsic value |
| 5 | Management large unplanned disposal | Warning | Investigate |
| 6 | Macro trend reversal for this name's end-market — e.g. demographic clock (population decline) for consumer/property/education names; consumption downgrade (居民边际消费下降); generational shift away from the category | Severe | Re-evaluate the long-term demand base; for consumer-dependent names, this is often a slow-moving but fatal headwind — assess whether the thesis still holds at a structurally lower growth path |
The red line on macro trends (demographic clock / consumption / generational) is deliberately explicit: a value-investing thesis that picks a consumer name without weighing population decline and consumption-trend headwinds is incomplete. For non-consumer names (e.g. pure B2B industrial), this red line may be loose; for consumer/retail/education/property names, weight it heavily.
Duan Yongping: "There are only three reasons to sell: 1. you got the buy wrong; 2. the fundamentals changed; 3. you found something better."
| Metric | At buy | Optimistic target | Neutral target | Pessimistic |
|---|---|---|---|---|
| Price | ||||
| PE (TTM) | ||||
| Market cap | ||||
| Intrinsic value estimate | ||||
| Margin of safety |
Use write_file to write reports/{company}-thesis.md, including: build date, buy price and position, core thesis (5 sentences), assumptions list, red lines, valuation anchors, tracking table (empty initially).
Use read_file to load core thesis, assumptions, red lines, last check record.
Use web_search / get_stock_news / get_financial_statements: ① latest earnings (if new quarter/year); ② recent material events (management, regulation, competition); ③ current price and valuation; ④ insider transactions (major shareholder changes).
| # | Core Assumption | Last status | Latest evidence | Current status | Change |
|---|---|---|---|---|---|
| 1 | Revenue growth >15% | 🟢 Holding | Q4 revenue growth 12% | 🟡 Weakening | ⚠️ |
Status definitions:
Check each red line; any triggered → flag prominently in the report + clear action recommendation.
Use financial_rigor (command=verify_valuation) to recompute PE/PB/ROE; compare against buy-time and last check:
| Metric | At buy | Last check | Current | Change |
|---|---|---|---|---|
| Price | ||||
| PE (TTM) | ||||
| Intrinsic value estimate | ||||
| Margin of safety |
Structure: ① Thesis health score (out of 10); ② Assumption check table; ③ Red-line check table; ④ Key changes this period (≤500 words); ⑤ Valuation update; ⑥ Conclusion and action; ⑦ Focus for next check.
Health formula: 10 - (⚫broken × 3) - (🔴impaired × 2) - (🟡weakening × 1) - (red-lines triggered × 5), min 1, max 10.
| Score | Meaning | Action |
|---|---|---|
| 9-10 | All assumptions hold, thesis stronger than at buy | Consider adding |
| 7-8 | Core assumptions hold, some weakening | Continue holding |
| 5-6 | 1-2 assumptions impaired, core logic intact | Hold but raise alertness |
| 3-4 | Multiple assumptions impaired, foundation shaken | Consider trimming |
| 1-2 | Red line triggered or core assumption broken | Strongly consider exit |
The conclusion must clearly answer: ① Is the thesis still intact? (intact / weakening / impaired / broken); ② What to do? (add / hold / trim / exit); ③ Next check timing (next earnings / a specific event).
Use write_file to append this check to the tracking table in reports/{company}-thesis.md:
| Check date | Health | Key change | Action |
|---|---|---|---|
| 2026-04-09 | 7/10 | Revenue growth slowed to 12%, but margins improved | Hold |
8643fcd
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.