Methodology · updated July 2026

How our numbers are made

Every score on SteadyShares is computed from disclosed inputs by the methods on this page. Where a method has a weakness, it is named here rather than hidden. Nothing on this page or this site is financial advice.

The rating (0 to 100)

A weighted blend of profitability (return on equity, margins), balance-sheet strength (debt to equity), growth (revenue trend), valuation (earnings multiple against the market and the company's own history) and analyst context where real coverage exists. Weights are fixed across the universe, so scores compare fairly between companies; nothing is hand-adjusted per stock.

Limitation: a formula cannot read a news cycle. A company mid-scandal can score well on trailing numbers. The rating is a filter, not a verdict.

The moat score (0 to 100)

An estimate of competitive protection built from persistence of high returns on capital, gross margin stability, market position within the sector, and scale. Companies that have defended high returns for years score high; companies whose economics swing with the cycle score low.

Limitation: moats erode faster than trailing data shows. Kodak had a wonderful decade of numbers right up until it did not.

The fair value estimate

A Graham-style earnings-power model: normalized earnings, a growth assumption capped to protect against fantasy, and a discount for balance-sheet risk. It is deliberately NOT a full discounted cash flow with a terminal value, because small changes to a terminal assumption can justify any price, and a number that can justify anything means nothing. The result is held within a band of the current price.

Every assumption is exposed in the Valuation Lab on each stock page: drag them and watch the number move. If our default assumptions look wrong for a company, yours are one slider away.

Limitation: earnings-power models undervalue young companies whose value is mostly future growth. That is a bias we accept, stated openly, rather than a bug.

The data quality score

The share of a company's model inputs that were actually available from filings and market data, 0 to 100. A low score means the rating, moat and fair value stand on fewer legs; the interface says so next to the numbers rather than pretending confidence.

Holding half-life

13F filings are quarterly and may arrive up to 45 days after the quarter ends, so every guru portfolio you will ever see, here or anywhere, is a stale snapshot. Instead of hiding that, we quantify it. For each fund we compute a survival prior: across the fund's own consecutive quarterly filings, the average fraction of positions present in one quarter that are still present in the next. Berkshire keeps nearly everything; a fast-trading fund does not, and its own filings say so.

Each reported position then gets a still-held confidence: the survival rate raised to the power of (days since the period end / 91), so confidence starts near certainty on the period date and decays at the fund's own measured pace. Tenure adjusts the pace: a position held one quarter decays 40% faster than the fund's average (multiplier 1.4), tapering linearly to 30% slower (multiplier 0.7) once a position has been held 8 or more consecutive quarters. Confidence is capped between 2% and 99%, because a filing is never proof and staleness is never proof of exit. Where we hold interim public evidence, it adjusts the estimate: a later filing by the same fund that omits the name collapses the confidence to zero.

The fund-level snapshot half-life is the day count at which the expected intact share of the reported book crosses 50%: 91 x ln(0.5) / ln(survival rate), clamped between 30 days and 10 years. A guru page's freshness meter states the same idea in one sentence: this filing is D days old, so roughly survival^(D/91) of the book is likely intact.

Limitation: the prior is measured on the top of each book (reads are capped), a fund can change style faster than its history implies, and a 13F only covers US-listed longs. The number is a decay estimate from the filing record, never knowledge of current positions. Funds with fewer than two stored quarters get a flagged default assumption rather than a fake measurement.

Data sources and freshness

Prices and fundamentals come from public market data providers and are cached briefly on our servers so every reader shares the same fresh quote. 13F holdings, insider filings and congressional trade disclosures come from the official filings themselves, ingested on a schedule; a 13F shows a fund's position up to 45 days after quarter end, and we display filing dates so the lag is never hidden.

The AI picks

The dashboard's six picks and the conviction row have their own page: how the AI picks are chosen, with every threshold and every known weakness written down.

The Belief Gap

The expectations axis on stock and fair value pages, comparing the growth today's price asks you to believe with the growth super investors underwrote at their 13F-implied entry prices, has its own page: how the Belief Gap is computed, with every step and every limitation written down.

What we will not do

No price targets dressed as certainty. No hiding assumptions inside a black box. No pretending a missing number is a zero. And no advice: the product computes, explains and links to sources; the decision is yours.