About & method
Brown Bear Research publishes descriptive analysis of US stocks. It describes observable conditions — trend state, cash flow, extension, insider filings. It does not predict returns, and it does not tell you what to buy.
What these numbers are
Every figure comes from a deterministic scoring engine reading daily and weekly price bars, plus reported fundamentals from SEC filings. There is no discretionary input and no forecast. Given the same inputs, the engine returns the same output every time.
What each panel actually measures
This is the part most sites skip. Several measures here are informative as description while having been tested and rejected as return signals. Both things are true at once, and the labels say so:
- Chase Risk
- Measures how extended a move is. It tracks drawdown exposure, not expected return -- a high score is not a sell signal.
- Phs
- Position Health blends tactical condition, extension, repair and a structural anchor. It describes current technical state, not outlook.
- Bcs
- Business Conviction is slow-moving and mostly structural. It answers 'how much would we want to own this business', not 'will it go up'.
- Insider
- Reported Form 4 activity. Brown Bear tested insider cluster-buying as a return signal and rejected it as era-unstable; shown as fact, not signal.
- Cash Flow Strength
- Free cash flow as a share of revenue. Note this is FCF/revenue, not the FCF/assets measure that survived testing.
- Winner Pullback
- Long-term leaders trading below their 252-day high. A descriptive filter, not the WIVP construction, which is fenced as unwired.
- Phs Jumped
- Change since the most recent run on a DIFFERENT market bar — normally the previous session, longer if the batch has not run since. Names whose own last bar is unchanged are excluded, so a scoring change can never appear here as market movement.
- Phs Dipped
- Change since the most recent run on a DIFFERENT market bar — normally the previous session, longer if the batch has not run since. Names whose own last bar is unchanged are excluded, so a scoring change can never appear here as market movement.
- Regime
- A label for the current price/volume configuration. Descriptive state, not a prediction.
Coverage
Latest run 2026-08-13 02:08:33 covered 500 of 503 names (99.4%).
Names excluded from that run, and why:
- FDXF — TickerDataError: 'FDXF' has only 53 daily bars; the scorer needs 200+ for EMA_200
- Q — TickerDataError: 'Q' has only 198 daily bars; the scorer needs 200+ for EMA_200
- SATS — TickerDataError: 'SATS' has only 1 daily bars; the scorer needs 200+ for EMA_200
- SNDK — 252d return exceeds the plausibility threshold; likely a corporate-action artifact (mom_252=2999.6)
Freshness
Market data is cached and shared across the site rather than re-requested per visitor. Live entries: earnings_calendar 1 · earnings_response 464 · edgar 1 · edgar_insider 524 · frame 11 · public_float 260 · quote 0 · reported_eps 234 · sector_earnings 1 · splits 526
Prices and scores reflect the last completed session, not live quotes. Intraday charts and headlines are fetched on demand and cached briefly.
Data quality
Trailing returns beyond ±1000% are excluded from the ranked lists and reported by name rather than silently dropped. A 252-day window spanning a spin-off or re-listing can produce a return that is an artifact of the price series rather than a move anyone could have captured. Extreme but genuine sector moves are kept.
Limitations
- Scores describe the present, not the future. None has been shown to predict returns.
- Which stocks appear on the front page is itself a selection made by the engine.
- Fundamentals are as-reported and may lag the most recent filing.
- Nightly figures reflect the last completed session, not live prices.
What the testing found, panel by panel
Every panel on a ticker page rests on something Brown Bear tested against historical data, and most of it failed. This register lists all of it — 14 rejected, 4 supported, 6 descriptive, 2 never studied. Rejections are here as prominently as confirmations, because a signal that did not survive testing is the most useful thing you can know about the panel showing it. Where no study exists, that is stated rather than left blank.
The four headline scores
Supported Are the price-momentum factors minimal — does each earn its seat?
Supported structurally: every leave-one-out variant misses the no-worse-than-0.05 Sharpe bar in at least one era. This validates the price spine only. It does not show the engine beats plain 12-month momentum, which it did NOT in the second era.
RESEARCH_LEDGER.md §B · frozen point-in-time S&P 500 test, 2026-07-15
Rejected Should Position Health drive selection?
Rejected in the rank and as a gate. It describes current technical state; it is not an outlook, and health-based selection reintroduces the bearish signals that already failed testing.
RESEARCH_LEDGER.md §D
Rejected Can extension be traded — deferring extended entries, staging in, or tilting weight?
All three mechanisms fail era-stably. Deferred names OUT-return admitted ones in both eras. Chase Risk tracks DRAWDOWN EXPOSURE, not expected return: a high score is not a sell signal.
RESEARCH_LEDGER.md §D · confidence: High
Business & cash flow
Supported Do reported fundamentals predict returns?
Free cash flow over assets and operating cash flow over assets both survive testing. The signal is CASH FLOW, not quality: every accrual measure is dead, and the combined composite is WEAKER than its best single component — which is why no 'quality score' is built from them.
RESEARCH_LEDGER.md §C · QUALITY_AXIS one-shot, 2026-07-30
Descriptive Is FCF/revenue the measure that was validated?
No. FCF/revenue is shown because it is widely understood, but the measure that survived testing is FCF/ASSETS. They are not interchangeable and only one has been tested.
RESEARCH_LEDGER.md §C
Reported earnings
Rejected Can you trade the drift after an earnings surprise?
The post-earnings drift is real FROM THE FILING DATE, but it is SPENT by the time of the next monthly rebalance — the portfolio arm was closed on that basis. These figures are published as a record of what was reported, not as a tradable event.
RESEARCH_LEDGER.md §D · PEAD portfolio arm, closed
Descriptive Where does the fourth-quarter bar come from?
EDGAR carries three 10-Qs and one 10-K per year: Q4 sits inside the annual filing and has no quarterly row. Charting the quarterly rows alone would silently drop every Q4. It is derived as annual minus the first three quarters — valid for revenue and net income, which are flows. Checked against Microsoft's own reported Q4 FY2026 ($90.0bn revenue, $35.8bn net income) and across 5,394 fiscal years, of which 98 derive implausibly and are left out rather than drawn.
history/statement_cache.db · derivation verified 2026-08-03
Earnings response
Rejected Does the move around an earnings filing predict the direction of the next one?
No. Measured across 922 filings in 60 names against a matched null of random dates, the share of up-moves was 53.4% versus 52.8% — indistinguishable. What IS different is the size: mean absolute move 6.11% against 2.02%, roughly three times larger. A filing is a volatility event, and this panel measures size, not direction.
Measured 2026-08-03 against a matched-date null
Descriptive Is the SEC filing date the date the market reacted?
Partly. EDGAR carries the FILING date, not the press-release date. Across 1,424 filings the largest move of a +/-5 session window landed on the filing date 30.8% of the time against roughly 9% by chance — a 3.4x concentration, so the anchor is real — but two thirds of the time the biggest move sits elsewhere in the window. The reaction is therefore measured over two days, and the panel never claims to show the earnings date.
Measured 2026-08-03 over 1,424 filings
Rejected Can you trade the drift after an earnings surprise?
The post-earnings drift is real FROM THE FILING DATE, but it is SPENT by the time of the next monthly rebalance — the portfolio arm was closed on that basis. These figures are published as a record of what was reported, not as a tradable event.
RESEARCH_LEDGER.md §D · PEAD portfolio arm, closed
Trailing returns
Rejected Can the end of a leadership run be seen coming from the name's own behaviour?
Zero survivors across nineteen features and four definitions of 'death'. 83% of leadership losses recover. Trailing returns are history, and history is not a forecast.
RESEARCH_LEDGER.md §D · momentum-death study, 2026-07-11
Insider activity
Rejected Does insider cluster-buying predict returns?
Null on large caps. On small caps the apparent edge is era-unstable and reads as regime beta rather than information. Form 4 activity is published here as reported fact, and feeds no score.
RESEARCH_LEDGER.md §D · confidence: High
Trend context
Descriptive Is distance from a Kalman fair-trend line a return signal?
Not tested as one. Kalman Z appears in Brown Bear's research only as a descriptive indicator path and as one leg of a repair candidate that was declared INSUFFICIENT SAMPLE on point-in-time data. Shown as trend geometry, not as an edge.
RESEARCH_LEDGER.md §C · SMP indicator-path study, 2026-07-13
Descriptive Why are no Kalman numbers shown — only states?
Because the numbers do not behave. Across the latest run the median absolute Kalman Z is 2.96 but the maximum is 41.1, and 'distance from trend' reaches 21.1 — a 2,113% deviation. These are artifacts of a small residual scale, not measurements. The categorical states are well distributed and are what gets published.
Measured over 500 names, latest run
Volume confirmation
Rejected Should volume drive stock selection?
Volume in the rank was rejected both additively and multiplicatively: it is a CONFIRMER, not a ranking factor. It survives inside two validated compound entry states, never alone. Direction only is published — the underlying VPT spread is a ratio whose denominator approaches zero, giving a median of 0.009 but extremes of −25.0 to +18.9 against an engine full-scale of 0.40.
RESEARCH_LEDGER.md §D · confidence: High; spread measured over 500 names
Supported Does high-volume absorption mark a low?
The bullish Wyckoff stopping-volume signal (high volume, narrow range, close off the low) carries the best 20-day numbers in its family and is live. Its bearish mirror — high-volume distribution — FAILED, so a distribution event is reported as an observation only.
RESEARCH_LEDGER.md §B · confidence: Med
Volatility
Rejected Does a volatility squeeze — narrow bands — predict a rise?
Rejected. The bullish half proved entangled with the winner-pullback effect and was not independent of it. Band width is shown as a description of current volatility, and a breakout direction is a statement about what has already happened, not what will.
RESEARCH_LEDGER.md §D · Round 2 Stage B
Price Levels
Rejected Is a broken support level a sell signal?
Rejected: the result flips sign between eras, and scoring from the break date introduces look-ahead. Levels are drawn from price structure and are shown as geometry, not as triggers.
RESEARCH_LEDGER.md §D · confidence: High
Rejected Should position size scale with distance to the protective stop?
Risk-parity sizing by stop distance is a disguised low-volatility bet, and the wrong side of it in this universe. The stop survives as a per-position tail read only.
RESEARCH_LEDGER.md §D · confidence: High
Relative Rotation
Rejected Do RRG quadrant-transition narratives carry an edge?
A/B backtest found no edge under either normalisation, and the wider RRG redesign programme closed after five constructions, none of which beat an appropriate null. Position is shown; the narrative is not.
RESEARCH_LEDGER.md §D · confidence: High
Options Positioning
No study Does option-chain positioning predict returns?
Brown Bear has run no study on option positioning. It is shown as a read on binary-event risk and dealer positioning, sourced from the chain as at the stated date, and it feeds no score on this page.
No entry in RESEARCH_LEDGER.md
Ichimoku Cloud
Rejected Is Ichimoku a useful ranking factor?
Rejected as a rank factor: redundant with trend, and it drags the second era. The bullish confluence survives only in its weaker role as a trigger; the bearish detectors failed outright and are report-only.
RESEARCH_LEDGER.md §B, §D
News Headlines
No study Do these headlines carry a signal?
Not tested and not claimed. Headlines come from third-party feeds, are not written, ranked or interpreted by Brown Bear, and feed no score.
No entry in RESEARCH_LEDGER.md
Macro Health
Rejected Does a calm market phase mean better forward returns?
The phase ladder is RANK-INVERTED against forward return over 2,460 sessions: the calmest state produced the weakest subsequent 60-day returns. It orders drawdown correctly and return backwards.
RESEARCH_LEDGER.md · macro layer review
Winners that have pulled back
Supported Is a proven winner bought on an ugly path an entry edge?
Supported but DENTED — downgraded from High to Medium confidence. A reproduction audit found the headline population carried universe-inclusion lookahead, so the filter shown here is descriptive and is deliberately NOT the WIVP construction, which stays unwired.
RESEARCH_LEDGER.md §B · independent-method convergence 2026-07-11
Disclaimer
Brown Bear Research publishes descriptive stock analysis for information only. Nothing here is investment advice, a recommendation, or an offer to buy or sell any security. Scores and labels describe observable price, volume and reported-fundamental conditions; they are not forecasts and have not been shown to predict returns. Do your own research.