Bid Cap FAQ
What is Bid Cap?
Research on public companies, mostly financials: banks, insurers, payments, exchanges and asset managers. The research library also covers many popular companies outside financials. Bid Cap is published by BID LLC.
Who is behind Bid Cap?
A 16-year sell-side veteran. Grew up in the financials space. Manages own money for a living. Perpetual learner. Former pro athlete. Truth seeker. Believer in the IQ curve meme for investing.
What do paid subscribers get?
$700 a year or $70 a month, on Substack.
- Daily Database. 390+ financial stocks: price, trend, volume, valuation against each company's own history, and the day's biggest moves. Every weekday before the U.S. open.
- Today's ideas. A long and a short where volume, trend, fundamentals and the earnings call agree, with the reason for each. Inside the database.
- Magnus Financials I. A $100 million long/short model portfolio, tracked daily against SPY and XLF.
- Cheap List. Stocks across six sectors priced below their own history and their peers, with last quarter's earnings beat, the one-month move and analyst targets. New on the 1st of each month.
- Company pages. One page per database company: price, trend and valuation in one place.
- Commentary. Posts on Substack.
What does each number in the database mean?
The database explains itself in an appendix at the bottom of the page. The short version, section by section:
Ideas
- Long gate
- A name can be a long only if volume is rising, the weekly trend is up, earnings or sales are speeding up, and the call and insiders are not flashing red. Long = passes all of these: RVOL 5/65 ≥ 1.3; Trend Wk = IN; EPS ok or Rev ok; Tone Δ not ≤ −1; Insdr $M not below −5.
- Short gate
- The mirror image: volume rising, weekly trend down, earnings or sales slowing, and the call not upbeat. Short = passes all of these: RVOL 5/65 ≥ 1.3; Trend Wk = OUT; EPS bad or Rev bad; Tone Δ not ≥ +1.
- Score
- Points for each reason the idea holds, ranked highest first, longs against longs and shorts against shorts. Long score = trend-turn points + 1 if EPS ok + 1 if Rev ok + 0.5 each for Tone Δ ≥ 1, Hedge Δ ≤ −1, Upg above 0, Insdr above 0 + 0.5 if %ile ≤ 20 with no valuation flag and the first multiple not a greyed P/E (one-time item, see Grey cell) + the smaller of (RVOL 5/65 − 1.3) and 1.
- Which 3 show
- The best long, the best short, then the next best from either side, with no repeats and no two from the same family. Picks = best long + best short + the next highest score from either side.
- Pre-publish check
- Before the page goes out, each idea's stated reasons are checked against its last 8 quarters. A local AI reader gets each pick's write-up, board numbers, last 8 quarters of EPS and revenue, price moves and call readings, and asks: why did each cited number move, is a reason driven by one earlier quarter that has since reversed, is any sentence false against the data.
- No repeats
- A name shown in the last 10 logged days cannot show again. Excluded = the ticker appears on either side of the ideas log on any of the last 10 distinct logged dates before today.
- Tension line
- A warning on a short that is already priced cheap against its book value. Warning shows = short idea + (Banks group priced first on P/TBV, or Insurance group priced first on P/B) + that multiple below 0.8x + no valuation flag.
- Card chips
- Quick facts printed on each idea card. Trend = Trend Wk/Dy; RVOL = RVOL 5/65; multiple = the group's first valuation multiple (hidden if flagged); "vs own 10y" = %ile; Tone Δ = tone score from the fresh pull, so it can differ from the board.
- Card price
- The last price the engine saw. Card price = close of the newest daily bar in the price history.
Big moves
- 1D
- Yesterday's price change. 1D = close ÷ prior close − 1, in %.
- σ 1D
- How big the day was for this stock, in units of its own normal daily swing. σ 1D = (latest daily return − average of the prior 65 daily returns) ÷ standard deviation of those 65.
- 1W
- Change over the last 5 market days. 1W = close ÷ close 5 market days ago − 1, in %.
- σ 1W
- Size of the 5-day move vs the stock's normal 5-day swing. σ 1W = 1W change ÷ (yearly volatility ÷ √252 × √5).
- RVOL (moves)
- Same as RVOL 5/65 on the board. RVOL = RVOL 5/65 (see Technicals).
- Table picks
- Which 10 names each table lists. Heaviest volume = top 10 by RVOL 5/65; biggest 1-day = top 10 by size of σ 1D, up or down; biggest 1-week = top 10 by size of σ 1W, up or down.
Fundamentals
- Metric pair per group
- Each group shows the two growth numbers that matter for that kind of business. All bank groups and Consumer Finance = EPS + TBV/sh.
- 5y
- Average yearly growth over five years. 5y = fifth root of (TTM now ÷ TTM ending 5 years earlier) − 1.
- 1y
- Growth over the last year. 1y = TTM now ÷ TTM one year earlier − 1.
- Q
- Latest quarter vs the same quarter a year ago. Q = latest single period ÷ the period one year back − 1 (no TTM).
- EPS
- Earnings per share, diluted. EPS TTM = sum of the last 4 reported quarterly diluted EPS figures (basic EPS if diluted is missing), not TTM net income ÷ shares.
- Rev
- Top-line revenue as the company reports it. Rev = total revenue as reported.
- TBV/sh, BV/sh, NAV/sh
- Common shareholders' book value per share; the tangible version also strips out goodwill and other intangible assets. BV/sh = common equity ÷ weighted diluted shares.
- FRE (alternative managers)
- Fee-related earnings: the profit from steady management fees, before any performance fees. Each company reports it in its own quarterly earnings release, not in its financial statements, so it is read from the release. A quarter is used only if it checks out: the "year-ago" figure in this release equals the figure the release a year earlier reported, or the release a year later reprints it unchanged, or it matches the headline sentence of the same release.
- ROE
- Yearly profit as a percent of shareholders' money. ROE = FMP's ready-made TTM figure: if the raw number is between −3 and 3 it is read as a fraction and × 100, else it is already a percent; kept only if −60% to 300%.
Valuation
- Multiple by group
- Which yardstick each group is priced on. U.S. bank groups = P/TBV + P/E.
- P/TBV
- Price vs tangible book value per share, where 1.0x means priced at book. P/TBV = latest close ÷ tangible book per share.
- P/B, P/NAV
- Price vs common book per share (P/NAV is the BDC name for it). P/B = latest close ÷ book per share.
- P/E
- Price vs the last 12 months of earnings. P/E = latest close (split-adjusted) ÷ sum of the last 4 quarters of diluted EPS (last 2 halves for half-yearly reporters), with EPS converted to the quote currency at the exchange-rate close.
- %ile
- Where today's multiple sits in its own past, from 0 (cheapest in the window) to 100 (richest). %ile = share of past readings strictly below today × 100, rounded.
- Second multiple
- A second yardstick, shown as a number only, with no percentile. P/E and P/B = same math as the first multiple (same price, currency and common-equity rules).
- Valuation flags
- Why a multiple is blank or has no percentile. DATA GAP = no current multiple (missing statements or prices): shows n/m.
Technicals
- Price data
- Daily price and volume behind every technical. Price history = last 1,900 calendar days of daily bars, close and volume.
- Trend Wk
- Is the price above its slow weekly trend line? IN = latest daily close above the TMA 50 of completed weekly closes; else OUT.
- Trend Dy
- Is the price above its slow daily trend line? IN = latest daily close above the TMA 250 of daily closes (a 125-day simple average, then a 126-day average of that); else OUT.
- RVOL 5/65
- Recent volume vs usual, where 2.0x means twice normal. RVOL 5/65 = average volume of the last 5 sessions ÷ average of the last 65 (the 65 includes the 5).
- RVOL 20/250
- Last month's volume vs the past year's. RVOL 20/250 = average volume of the last 20 sessions ÷ average of the last 250.
- RSI 14
- Momentum gauge from 0 to 100, where high = stretched up and low = stretched down. RSI = 100 − 100 ÷ (1 + average gain ÷ average loss), on daily closes; 100 if there are no losses.
- MACD zero-cross (ideas only)
- A fresh turn in the long trend. MACD line = EMA 60 − EMA 90 of closes (EMA = an average that weights recent prices more); BULL if the line is above 0.
Qualitatives
- Tone Δ
- How upbeat management sounded on the latest call compared with its own past calls. Tone Δ = (latest call's tone − average of earlier calls) ÷ standard deviation of earlier calls (population version), 1 decimal; needs 5 scored calls.
- Hedge Δ
- How much more (+) or less (−) management hedged than usual. Hedge per call = 1000 × (count of 21 hedge words such as could, may, might, probably + 11 phrases such as "too early", "hard to say") ÷ total words, same Q&A text.
- Guid
- Did management raise, cut or hold its outlook on the latest call? Guid = sum of sentence scores over the full transcript: above 0 = +, below 0 = −, 0 = "=".
- Upg
- Change in how many analysts rate it Buy over 90 days. Upg = (Strong Buy + Buy count) on the newest row − the same on the first row dated 90+ days ago (oldest row if none).
- PT+
- Net number of analyst firms whose latest price target sits above the stock price, last 90 days. PT+ = firms above − firms below.
- Insdr $M
- Dollars insiders chose to put in, minus dollars they chose to take out, last 90 days. Insdr $M = discretionary open-market buys − sells; trades under 10b5-1 or other pre-arranged plans excluded.
Markers and shading
- ‡
- Growth on a tiny or swinging base, shown but not trusted. ‡ = any of EPS 5y, 1y or Q beyond ±200%.
- * on EPS
- A one-time item in earnings. * = any of the last 16 quarterly net income figures is more than 3 × the median (middle) net income of all quarters on file (up to 44), sizes compared ignoring sign.
- * on a 1y cell (EPS or Rev)
- The last 12 months moved one way only because of one earlier quarter that has since reversed. * on EPS 1y or Rev 1y = the 12-month total is below the 12 months before while most of its quarters (3 of 4; 2 of 2 for half-yearly reporters) beat the same quarter a year earlier, including the latest one; or the mirror (total up, most quarters and the latest down).
- Beats 4Q
- How many of the last 4 reported quarters beat analysts' EPS estimate. Beats 4Q = count of the last 4 reported quarters where EPS, as the FMP earnings feed carries it (often the company's adjusted figure), was above the average analyst estimate made before the report.
- * on Trend
- A pullback inside an uptrend. * = Trend Wk is IN and the latest daily close is below the TMA 18 of weekly closes (a 9-week average, then a 10-week average of that).
- n/m
- Not meaningful. n/m = first multiple missing or ≤ 0; second multiple missing, ≤ 0 or above 200.
- n/c
- No coverage. n/c = for Upg and PT+: the feed has nothing for this name.
- ·
- Not computable. · = Growth: negative or zero base, too little history, or mNAV.
- Heat shading
- Each cell is shaded against the other names in its own group table. Shade strength above the middle = 0.05 + 0.45 × (value − M) ÷ (highest − M), in green.
- Grey cell
- A growth figure shown but left out of the shading. Grey = growth cell with a * or ‡ superscript, or a value beyond ±150%.
- Trend colour
- How many of the two trend clocks are up. Green = both IN; amber = one IN; red = both OUT; grey = either missing.
- "largest" in group header
- The group's biggest names. Largest = top 3 in the group by Mkt cap $B; a name with a blank Mkt cap ranks on the universe list's market value instead.
- Mkt cap $B
- Market value in US dollars. Mkt cap $B = share count × prior close (pence and cent quotes ÷ 100), × the latest daily exchange-rate close to USD, ÷ 1 billion.
- Data freshness
- How old each input can be. Max age before refetch: statements, ratios and prices 20 hours (a failed refetch serves the old copy); tone per name 6 days; Upg, PT+, Insdr feeds one fetch per calendar day (each Form 4 read from SEC once and kept); foreign qualitative rows rerun after 6 days.
What is free?
- Company Library. 496 plain-English reports on 377 companies.
- Higher Rate Bank Screen. 376 U.S. banks ranked by balance-sheet risk: bond losses against capital, deposit mix, funding, margins and trend.
- Proofs. Public fingerprints of the model portfolio's record.
- Free views. A sample of the database and the portfolio.
What is in the Company Library?
Four kinds of report:
- Company report (365). The bet you are really making, the business, key numbers, valuation and a price chart.
- Competitive advantage (90). What protects the business, and whether that protection is getting wider or narrower.
- Management and incentives (21). How the people running the company are paid, and what that pushes them to do.
- One Pager (20). The short version.
Sorted by sector: Banks, Insurance, Asset Managers and Investment Banks, Exchanges and Financial Data, Payments and Fintech, Software and Internet, Semis and Hardware, Consumer, Healthcare, Industrials and Energy.
How do I open the database, portfolio and Cheap List?
Each paid Substack post carries the link. Links change every week; the current one is always in the latest paid post.
When does it update?
The database and today's ideas: every weekday morning before the U.S. open, using the prior close. The model portfolio: every weekday. The Cheap List: the 1st of each month.
Where does the data come from?
Company filings (SEC, FDIC Call Reports, and home-market regulators for companies outside the U.S.) and FMP market data. Every column is defined in the database appendix.
Is the portfolio real money?
No. It is a $100 million model book. Its record is fingerprinted publicly, so it cannot be edited after the fact.
Is this investment advice?
No. Observation, not advice. The author may hold positions discussed.
How do I cancel?
In your Substack account settings.
Is there a free trial?
Yes. Substack offers a free trial.
Can I request a company?
Yes. Email hello@thebidterminal.com with the ticker.
Do you own what you write about?
The author may hold positions personally. The model portfolio's holdings are public to paid subscribers.
Is there group or firm pricing?
Yes. Email hello@thebidterminal.com.
How is this different from other newsletters and screeners?
It's better.