equity-valuation-framework
Skill9 starsChanged 8 months agoMITView on GitHub
Provides a decision-grade equity valuation playbook and report standard (multiples, DCF, quality assessment, scenarios, margin of safety); used when users request valuation, best-stock comparison, investment thesis explanation, or structured risk review.
In this repository26 other files it gives its agents.
- AGENTS.mdAGENTS.md
- chart-creationSkill
- code-rulesSkill
- conditional-formattingSkill
- data-analysisSkill
- data-cleaningSkill
- equity-valuationSkill
- financial-modelingSkill
- formula-operationsSkill
- local-accessSkill
- sandbox-executorSkill
- template-generationSkill
- wps-core-apiSkill
- connector-managerSkill
- financial-dataSkill
- knowledge-baseSkill
- sensortowerSkill
- similarwebSkill
- web-searchSkill
- agent-modeSkill
- ask-modeSkill
- plan-modeSkill
- memory-managerSkill
- onboardingSkill
- soul-engineSkill
- monthly-reportSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
20 rules. About 0 are common, 18 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈18
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 10
Use this skill as the "rules of the game" for valuation decisions and report standardization.
- Distinctive: line 58
Run the data quality gate and assign initial confidence.
- Distinctive: line 66
Check freshness: state report periods and price cutoff date.
- Distinctive: line 67
Check completeness: identify missing key lines (revenue, EBIT, net income, CFO, debt, equity, shares).
- Distinctive: line 68
Check consistency: basic identity checks (assets = liabilities + equity if available).
- Distinctive: line 75
Use this standardized interpretation:
- Distinctive: line 86
Run modules based on available data.
- Very specific: line 89
Use when at least one of earnings/book/EBITDA is reliable.
- Distinctive: line 105
Use only when cash-flow visibility is acceptable.
- Distinctive: line 131
Add cycle-risk note as first-class risk item.
- Distinctive: line 143
Always provide three scenarios:
- Distinctive: line 157
Avoid absolute buy/sell commands.
- Distinctive: line 158
Use language: "appears undervalued / fairly valued / stretched" and "requires margin-of-safety discipline".
- Distinctive: line 161
Create an integrated view from:
- Very specific: line 166
If the user is managing a watchlist/portfolio, end with conditional action framing suitable for portfolio-risk-manager:
- Distinctive: line 210
Use simple language and explain terms briefly.
- Distinctive: line 213
Do not hide data gaps; surface them early.
- Distinctive: line 214
Keep numbers auditable and unit-consistent (VND bn/trn, %, x).
- Distinctive: line 217
If user asks for ranking within this framework:
- Distinctive: line 226
If data quality is low:
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Equity Valuation Framework
Use this skill as the "rules of the game" for valuation decisions and report standardization.
Scope and role
- Purpose: transform already-fetched data into a professional valuation view.
- This skill does not fetch data.
- Upstream data should come from:
vnstock-free-expertfor company/price/ratio inputsnso-macro-monitor,us-macro-news-monitor,vn-market-news-monitorfor macro/news context
When to trigger
- User asks: "value this stock", "is it cheap/expensive", "best stock between A/B/C", "give me bull/base/bear", "build an investment memo".
- User requests a decision-ready report, not only raw metrics.
Required input contract
Accept an input bundle with these sections (missing fields allowed, but must be flagged):
{
"ticker": "HPG",
"as_of_date": "YYYY-MM-DD",
"currency": "VND",
"financials": {
"income_statement": {},
"balance_sheet": {},
"cash_flow": {},
"ratios": {}
},
"price_history": {
"daily": [],
"returns": {
"1m": null,
"3m": null,
"6m": null,
"12m": null
}
},
"peer_set": ["AAA", "BBB"],
"macro_snapshot": {},
"news_digest": {},
"metadata": {
"source": "kbs|vci",
"data_quality_notes": []
}
}Execution workflow (ordered)
- Validate input bundle completeness and freshness.
- Run the data quality gate and assign initial confidence.
- Select valuation modules based on available data (
Multiples,DCF, sector adaptation). - Build bull/base/bear scenarios with explicit assumptions.
- Triangulate fair value, define safety zone, and list key risks.
- Apply confidence rubric and disclose gaps that can change conclusions.
- Return the report using the required section order.
Data quality gate (must run first)
- Check freshness: state report periods and price cutoff date.
- Check completeness: identify missing key lines (revenue, EBIT, net income, CFO, debt, equity, shares).
- Check consistency: basic identity checks (assets = liabilities + equity if available).
- Mark confidence tier:
High: complete + recent + internally consistent.Medium: minor gaps, valuation still usable.Low: major gaps; only directional view allowed.
Shared confidence rubric (required)
Use this standardized interpretation:
High: valuation triangulation is valid (>= 2 robust methods), assumptions are explicit, and key inputs are complete.Medium: only one robust method is usable or moderate gaps require wider valuation ranges.Low: major input gaps/quality issues force directional valuation only (no precise fair-value claim).
Always report:
- Confidence level.
- Which modules were actually run (
Multiples,DCF, sector adaptations). - Critical missing inputs that would most likely change fair value.
Valuation modules
Run modules based on available data. Prefer triangulation (2+ methods).
1) Relative valuation (Multiples)
Use when at least one of earnings/book/EBITDA is reliable.
- Core multiples:
P/E(earnings-based)P/B(capital-intensive, banks/financials)EV/EBITDA(operating comparison)- Optional:
EV/Sales,P/CF
- Compare across:
- peer median / percentile
- company 3-5y own history
- Normalize for one-off items when possible.
- Output:
- implied value range per multiple
- weighted relative-value estimate
2) DCF valuation
Use only when cash-flow visibility is acceptable.
- Model setup:
- Forecast horizon: 5-10 years (default 5 if uncertain)
- Revenue growth path by scenario
- Margin path (EBIT/FCF margin)
- Reinvestment assumptions
- WACC with explicit inputs (risk-free, ERP, beta, debt cost)
- Terminal value: Gordon or exit multiple (state choice)
- Mandatory sensitivity grid:
- WACC ±100 bps
- terminal growth ±50 bps
- Output:
- base/bull/bear fair value
- sensitivity table
3) Sector-specific adaptation
Banks / Insurance / Financials
- Prioritize:
P/B,ROE, asset quality proxies, capital adequacy proxies, funding cost/NIM proxies. - De-emphasize EV/EBITDA.
- Evaluate sustainability of ROE and provisioning pressure.
Cyclicals (steel, chemicals, commodities, shipping)
- Use cycle-aware assumptions:
- normalized margin, not peak margin
- conservative terminal assumptions
- Add cycle-risk note as first-class risk item.
Quality and business resilience checklist
Assess each item as Strong / Neutral / Weak with one-line evidence:
- Moat and pricing power
- Governance and capital allocation
- Earnings quality (cash conversion, accrual risk)
- Balance-sheet risk (leverage, maturity risk)
- Cyclicality and external dependency
- Execution track record
Scenario framework (required)
Always provide three scenarios:
Bull: better macro + execution upsideBase: most likely path under current conditionsBear: macro/industry shock + execution shortfall
For each scenario include:
- Key assumptions
- Expected fundamental trajectory
- Implied fair value range
- Probability weight (optional but preferred)
Margin of safety rule
- Define
Fair Valuerange from module triangulation. - Define
Safety Zonebelow fair value (default 15-30% depending on confidence and cyclicality). - Avoid absolute buy/sell commands.
- Use language: "appears undervalued / fairly valued / stretched" and "requires margin-of-safety discipline".
Decision policy (how to conclude)
Create an integrated view from:
- valuation outputs (multiples + DCF if valid)
- business quality checklist
- macro/news constraints
If the user is managing a watchlist/portfolio, end with conditional action framing suitable for portfolio-risk-manager:
Trigger to add risk(what would increase conviction)Trigger to reduce riskInvalidation(what would make the thesis wrong)Horizon(ngắn/trung/dài)
Conclusion label:
Attractive(valuation discount + acceptable quality/risk)Watchlist(mixed signals, wait for trigger)Caution(valuation unsupported or risk too high)
Required report output template
Return exactly these sections in this order:
Executive Summary
- One paragraph: current valuation stance and why.
What Data Was Used
- Source, as-of date, statement periods, peer set.
Core Thesis (Bull / Base / Bear)
- Key drivers by scenario.
Valuation Work
- Multiples table (current vs peer vs implied)
- DCF summary (if run)
- Sensitivity table
Business Quality Assessment
- Checklist table with evidence lines.
Risk Register
- Ranked risks with impact, probability, and monitoring trigger.
Fair Value and Safety Zone
- Fair value range and margin-of-safety zone with rationale.
Confidence and Gaps
- Confidence level and exact missing data that could change the view.
Disclaimer
- Educational analysis only, not personalized investment advice.
Formatting standards
- Use simple language and explain terms briefly.
- State all critical assumptions explicitly.
- Distinguish facts vs assumptions vs inference.
- Do not hide data gaps; surface them early.
- Keep numbers auditable and unit-consistent (VND bn/trn, %, x).
Minimal scoring rubric (optional but recommended)
If user asks for ranking within this framework:
Valuation40%Quality35%Momentum/Revision15%Risk penalty10%
Calibrate per sector and confidence.
Fail-safe behavior
If data quality is low:
- downgrade confidence
- skip fragile modules (e.g., DCF)
- deliver directional valuation only
- list exact data needed for full valuation
Trigger examples
- "Value HPG with bull/base/bear and margin of safety."
- "Compare VCB vs BID valuation and explain the thesis."
- "Prepare a structured valuation memo with sensitivity table and risk register."
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

