.claude/skills/comps/SKILL.md
Trading comparables analysis with peer multiples and implied valuation
npx skillsauth add daloopa/investing compsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Build a trading comparables analysis for the company specified by the user: $ARGUMENTS
Before starting, read ../data-access.md for data access methods and ../design-system.md for formatting conventions. Follow the data access detection logic and design system throughout this skill.
Follow these steps:
Look up the company by ticker using discover_companies. Capture:
company_idlatest_calendar_quarter — anchor for all period calculations below (see ../data-access.md Section 1.5)latest_fiscal_quarter../data-access.md Section 4.5Based on the company's business model, sector, size, and competitive landscape, identify 5-10 comparable companies. Consider:
Prioritize relevance over size matching. A direct competitor at a different scale is more useful than a similar-sized company in a different industry.
List the peer tickers and briefly justify each selection (1 sentence).
Calculate 4 quarters backward from latest_calendar_quarter. Pull from Daloopa for the target company:
For each peer, get trading multiples and current quote (see ../data-access.md Section 2):
If market data is unavailable, note that peer multiples cannot be sourced and provide a framework for manual completion.
If a peer ticker fails (delisted, no data), drop it and note why.
For each peer that is available in Daloopa:
latest_calendar_quarter. Pull revenue, operating income, net income for those periods.For peers not in Daloopa, rely on market data multiples only (see ../data-access.md Section 2) and note the data source limitation.
For each company (target + all peers available in Daloopa), discover and pull company-specific operational KPIs. Use the sector taxonomy below to know what to search for:
Pull the same 4 calendar quarters for each peer. Not all peers will have the same KPIs — build a sparse matrix and note which are comparable across the group vs company-specific.
Add KPI columns to the comps table in Section 6 where comparable metrics exist (e.g., subscriber growth, ARPU, units alongside P/E and EV/EBITDA). This shows whether valuation premiums are supported by operational outperformance.
Create the main comparables table with these columns: | Company | Ticker | Mkt Cap | EV | P/E | Fwd P/E | EV/EBITDA | P/S | Rev Growth | Op Margin | Net Margin | FCF Yield |
Sort by market cap descending. Include:
Apply peer group median and mean multiples to the target's fundamentals:
| Methodology | Peer Median Multiple | Target Metric | Implied Value | |---|---|---|---| | P/E | XX.Xx | $X.XX EPS | $XXX | | EV/EBITDA | XX.Xx | $XXX EBITDA | $XXX | | P/S | XX.Xx | $XXX Revenue | $XXX | | FCF Yield | X.X% | $XXX FCF | $XXX |
For each:
Compute range (min to max implied price) and central tendency.
If consensus estimates are available (see ../data-access.md Section 3):
If consensus data is not available, use trailing multiples only and note the limitation.
Assess whether the target trades at a premium or discount to peers:
Be honest about whether the premium is truly justified:
Save to reports/{TICKER}_comps.html using the HTML report template from ../design-system.md. Write the full analysis as styled HTML with the design system CSS inlined. This is the final deliverable — no intermediate markdown step needed.
Structure the report with these sections:
<h1>{Company Name} ({TICKER}) — Comparable Companies Analysis</h1>
<p>Generated: {date}</p>
<h2>Summary</h2>
{2-3 sentences: Where does the company trade relative to peers? Is it cheap or expensive and why?}
<h2>Peer Group Selection</h2>
<table>
| Peer | Ticker | Rationale |
{table with justification for each peer}
</table>
<h2>Comparables Table</h2>
<table>
| Company | Ticker | Mkt Cap | P/E | Fwd P/E | EV/EBITDA | P/S | Rev Growth | Op Margin |
{full comps table with target highlighted}
| **Peer Median** | | | XX.Xx | XX.Xx | XX.Xx | XX.Xx | X.X% | X.X% |
| **Peer Mean** | | | XX.Xx | XX.Xx | XX.Xx | XX.Xx | X.X% | X.X% |
| **{TICKER}** | | | **XX.Xx** | **XX.Xx** | **XX.Xx** | **XX.Xx** | **X.X%** | **X.X%** |
</table>
<h2>Target vs Peer Premium/Discount</h2>
<table>
| Multiple | Target | Peer Median | Premium/Discount |
{table showing where target is rich/cheap}
</table>
<h2>Implied Valuation</h2>
<table>
| Methodology | Multiple | Target Metric | Implied Price | vs Current |
{table with implied values}
</table>
<table>
| **Valuation Range** | **Low** | **Median** | **High** |
| Implied Price | $XXX | $XXX | $XXX |
| vs Current Price | -X% | +X% | +X% |
</table>
<h2>Premium/Discount Justification</h2>
{Analysis of whether current premium/discount is warranted}
<h2>Peer Operational KPIs</h2>
<table>
| KPI | {TICKER} | Peer 1 | Peer 2 | ... | Peer Median |
{KPI comparison table — sparse where data unavailable, footnoted}
</table>
<h2>Key Observations</h2>
<ul>{3-5 bullet points on relative valuation, standout metrics, peer group dynamics, KPI differentiation}</ul>
All financial figures from Daloopa must use citation format: <a href="https://daloopa.com/src/{fundamental_id}">$X.XX million</a>
Tell the user where the HTML report was saved.
Highlight: where the stock trades relative to peers (premium/discount), the implied valuation range, and the most relevant multiple for this company.
development
Cash conversion cycle, earnings quality, and working capital deep-dive
testing
Refresh existing research note and Excel model with latest data
tools
Bottoms-up unit economics decomposition for any public company
tools
Quick one-page company overview and snapshot