Quantamatica Guide

How to use Quantamatica for stock research

Inflation calculator, short interest, valuation, insider trades, and every section of the workspace

Market Indices Bar

The bar at the top of the page shows six real-time benchmarks that tell you the overall mood of the market at a glance. All six update every 30 seconds.

  • S&P 500 (ES=F): The 500 largest US companies. This is the most-watched benchmark in the world. When it rises, the broad market is healthy.
  • DOW (YM=F): 30 large blue-chip companies. More narrow than the S&P but watched by long-term investors for economic stability signals.
  • NASDAQ (NQ=F): Technology-heavy index. Moves faster and more aggressively than the S&P. A strong NASDAQ often means risk appetite is high.
  • RUSSELL 2K (RTY=F): 2,000 smaller US companies. Considered a leading indicator: small caps often move before large caps.
  • Crude oil (CL=F): West Texas Intermediate futures, a widely watched gauge of energy prices and inflation pressure.
  • VIX: The "Fear Index." Measures expected market volatility over the next 30 days. Below 15 = calm market. 15–25 = moderate uncertainty. Above 30 = fear. Above 40 = panic.
Example reading:
S&P 500 down 0.8%, NASDAQ down 1.4%, VIX at 28 → Tech is selling off harder than the broad market, fear is elevated. Consider waiting for stabilization before entering new positions.

These are futures contracts, not spot prices, so they trade nearly 24 hours a day: you can see overnight sentiment before the US market opens.

Directly below the indices sits the inflation strip and its profit / loss calculator, covered in the next section.

Inflation Adjusted Profit / Loss Calculator

A public version with every month since 1913 is at quantamatica.com/inflation-calculator, no account needed. It uses the unadjusted price index, the Bureau of Labor Statistics convention for comparing dates years apart, so its results can differ from this strip by a few tenths of a percent.

This calculator sits directly below the market indices, above the five inflation readings, and answers one question: did an investment actually beat inflation, or did its number just go up while the cost of living rose underneath it? Click the Inflation Adjusted Profit / Loss Calculator heading to open or close it. It starts closed on every visit, and the five inflation readings below it stay visible whether it is open or shut.

The five readings the calculator sits above are, left to right: the change in consumer prices over the most recent month, the change so far this calendar year, the core rate (consumer prices excluding food and energy) over the past twelve months, the personal consumption expenditures price index over the past twelve months, and the producer price index over the past twelve months. Each one carries the month it is measured for, and they will not always agree: the personal consumption measure is released about two weeks behind the consumer price index and is often a further month back, while the producer price index is usually released ahead of it.

The producer price index is the last of the five. Where the other four measure what households pay, this one measures what producers receive for their output, before it reaches the shelf. It is the same pressure read from the selling side rather than the buying side, which is why it often moves before the consumer measures do. Hover or tap any of the five cells for its full explanation and the two readings the percentage is computed from.

Why it exists: a position that tripled over twenty years may have barely held its value in real terms. The calculator splits a gain into the part that only kept pace with inflation and the part that is a genuine gain on top of that, using the same consumer price series shown in the readings below it.

The fields, in order

  • Purchase Amount: what you paid, typed as plain digits with no currency symbol. Commas are grouped in as you type.
  • Purchase Date: when you bought, as MM/DD/YYYY. The day of the month does not matter, the underlying data is monthly.
  • Sale Amount: what you sold for, or what the position is worth now. Optional, the box says so.
  • Sale Date: when you sold, as MM/DD/YYYY. Optional: leave it blank and it uses the latest reading, which is today. A typed sale date is checked the same way as the purchase date and cannot fall before it.
  • GO: runs the calculation. Pressing Enter in any of the four fields does the same thing. The × beside it clears both dates and both results while leaving the two amounts in place.
  • Break Even: what the purchase amount would need to be worth at the sale date simply to keep pace with inflation. It stays a neutral colour because it is a benchmark to clear, not a gain or a loss.
  • Profit / Loss: the sale amount measured against Break Even, the real inflation-adjusted result. Green if the investment cleared inflation, red if it did not.

Ways to use it

  • Grade a closed position: fill all four boxes. Break Even is the inflation hurdle, Profit / Loss is how much of the sale was a real gain above it.
  • Grade a position you still hold: put its current market value in Sale Amount and leave Sale Date blank. The result is your real gain to date.
  • See the inflation hurdle on its own: fill Purchase Amount and Purchase Date and leave both sale boxes blank. Break Even alone tells you the number you have to beat.
  • Re-base the inflation readings to a date: applying a Purchase Date also switches the four cells below from their month, year to date and annual view to the total price change from that month up to the latest reading, with the second cell showing that span as an annual rate. Clearing the date with the × returns them to the default view.
Example:
Bought a house for 1,000,000 on 01/01/2005 and sold it for 3,000,000 on 01/01/2025. Break Even comes out around 1,670,000, which is what 1,000,000 in 2005 is worth in 2025 money. Profit / Loss is roughly +1,330,000: that is the real gain, and the rest of the three million was inflation catching up.

Both amounts stay put while you change dates; the × resets only the dates. A blank Purchase Amount leaves Break Even blank without touching anything else, and a blank Sale Amount or a sale date that fails validation leaves Profit / Loss blank the same way, so the row degrades one box at a time rather than all at once.

The money printing row

Directly under the four inflation readings, marked with a ◈, is a second strip showing how fast the supply of dollars itself is growing: M2 money supply over the past twelve months and over the most recent month, the monetary base (physical currency plus the reserves banks hold at the Federal Reserve) over twelve months, and the Federal Reserve's total assets (the size of its balance sheet, the clearest measure of bond buying) over twelve months. All four come from Federal Reserve data and, like the inflation readings, are shown in a neutral colour because a growth rate is a reading, not a gain or a loss.

Applying a Purchase Date re-bases this row too: each figure switches to the total growth from that month to the latest reading, so you can see how much the dollar supply expanded over the exact span you held something.

Click anywhere on the row to open a chart beneath it. It draws all three measures on one scale: by default as their twelve-month growth rate over the last twenty years, or, when a Purchase Date is set, as their total growth since that month. Click the row again to close it.

The Compare control in the chart header adds one more line for reference: pick the S&P 500 (or the Nasdaq, Dow, gold or bitcoin) from the menu, or type any ticker and press Enter. The comparison is put through the same calculation as the money measures, its twelve-month price change, or its total change since the Purchase Date, so it sits on the same scale and shows whether an investment kept pace with the growth of the money supply. The × removes it.

Market Briefing (homepage)

The Market briefing on the homepage is a board of short cards on what is moving the market today, or why it is quiet. It is written from four sourced inputs and nothing else: the S&P 500 futures day change, recent general market headlines (Finnhub, CNBC and MarketWatch, reproduced as published), the calendar of scheduled events (Federal Reserve rate decisions, Treasury note and bond auctions, and the major economic releases: consumer prices, producer prices, personal income and outlays with its price index, the jobs report, gross domestic product and retail sales), and this site's own inflation figures.

  • DATA cards. On the day an inflation report is published, and the day after, a card gives the new figure against the month before, from the same official index levels the inflation strip in the app uses. It appears even when the market is calm, because a scheduled release is news whether or not futures moved.
  • No forecast comparison of our own. No free source publishes the economists' forecast for each release, so a DATA card never says a figure came in above or below expectations. When the briefing says that, it is quoting a named headline.
  • Timing. The major releases come out at 8:30 in the morning, Eastern time. The briefing rebuilds a minute after a scheduled release, refreshes every few minutes for the hour after it, and otherwise holds for up to fifteen minutes. A page left open checks again every five minutes.
  • Date and time on every card, in your own time zone. A news card shows its publisher and when the story was published. A DATA card shows the agency (Bureau of Labor Statistics or Bureau of Economic Analysis) and the 8:30 release time. The briefing's own cards read Updated with the time the board was written, which is not a publication time.
  • Headline cards. Each card built on a news story names its publisher and time. More shows the publisher's own summary of the story, and Read article opens the full story in a popup window (a new tab on a phone). The article opens on the publisher's own site, rather than inside this page, because publishers do not allow their pages to be shown inside another site. A card with no More button is one whose publisher sent only a headline. Personal finance advice columns are left off the board, since they do not move the market.
  • Calm is a measurement. A calm board means the futures day change is inside the site's market-mover threshold, not that nothing happened. Any wait-and-see reading names the dated event it is waiting for.

Market Mover Banner & ⚡ Action

When the S&P 500 futures (ES=F) move beyond a configurable threshold during the session, a Market Mover banner appears across the top of the app. It identifies the headline driving the move, the direction and magnitude of the ES=F change, and an AI-assigned signal rating (Bullish / Bearish / Neutral).

The percentage shown on the banner is the same ES=F day change as the S&P 500 cell in the indices row above it (versus the prior session, refreshed with that row). It is not a separate smoothed or threshold figure. When the move is inside the threshold, the calm banner still shows that live percentage under “All is Calm.”

On the right side of the banner is the ⚡ Action button. It gives you two interaction modes:

  • Hover: A panel opens showing an AI-generated trade recommendation for the ES=F futures market, a short-term hedge for bearish conditions, or an alpha setup for bullish ones. The panel closes automatically when you move the cursor away.
  • Click: Locks the panel open so you can read and scroll without it dismissing. A × button appears in the top-right corner of the panel, this is the only way to close it once locked.

Futures Recommendation (top of the panel)

  • Action chip: BUY, SELL, or HEDGE: the suggested directional trade.
  • Instrument: The specific vehicle (e.g. ES=F Short, SPY Puts, VIX Calls).
  • Rationale: Two sentences on why this trade makes sense given the current event.
  • Timeframe: How long the trade thesis is expected to play out (intraday, overnight, 1–3 days).
  • Risk Note: The key risk or stop-loss approach for the trade.
  • Confidence: High / Medium / Low: the AI's own confidence assessment.

Market Impact: Stocks & ETFs (below the futures rec)

A separate, deeper analysis loads in parallel, scanning the entire US market across all sectors to identify which specific stocks and ETFs are most likely to move significantly as a result of the event.

  • Sector Theme: A one-sentence summary of the dominant market theme driving today's moves.
  • ▲ Expected Gainers: Up to 5 names (stocks and ETFs) most likely to benefit, each with company name, sector, and a brief rationale. At least 2 are ETFs for broad exposure.
  • ▼ Expected Losers: Up to 5 names most likely to come under pressure, with the same detail.
Click any ticker chip to analyze it:
Each ticker in the Gainers and Losers lists is clickable. Clicking one closes the Action panel, populates the search field with that ticker, and immediately runs full analysis on it, no need to type anything.
Caching behaviour:
The futures recommendation is cached for 10 minutes per event. The stock picks are cached for 60 minutes and automatically refresh when a new market-moving event is detected. Re-opening the panel during the same event is instant. Headline attribution for a significant move is also cached for about 10 minutes, but the ES=F percentage on the banner is always taken from the live indices reading, not frozen with that cache.

Both the futures recommendation and the stock picks are generated independently, the futures rec appears first while the broader market scan loads below it. If the market is calm (no significant move detected), the banner still shows an “All is Calm” strip with the live ES=F percentage; the Action button is not offered until a significant move is detected.

Global Indices: Comparison Chart

The Global Indices panel lets you compare major markets across countries and regions on one chart. It’s designed to answer a simple question: Where is strength (or weakness) concentrated right now?

How to build a comparison

  • Open Global Indices and click any index box to add it to the chart (max 10).
  • Boxes are grouped by country/region to keep selection organized.
  • Use the timeframe picker (7D → 20Y) to change the analysis window.

Indexed chart (start = 100)

  • Each line is indexed so all series start at 100 for the selected window.
  • This makes performance comparable even when price levels are wildly different.
  • Example: a value of 104.20 means the index is up 4.20% since the start of the window.

Selected table (updates as you move the cursor)

  • Country: where the index is based.
  • %: the live percent change at your cursor position on the chart (all rows update together).
  • % top: for the selected window, the percent of timestamps where that index was the highest among the selected set (ties split credit).
  • Symbol: the underlying data symbol used to fetch candles.
  • Remove: removes that index from the comparison.
Why % top matters:
If an index shows a strong final return but a low % top, it may have rallied late. A high % top suggests persistent leadership across the window.

Market event triangles (2006+)

  • Triangles on the timeline mark major market events.
  • Click a triangle to open the event panel and generate an explanatory essay.
  • The floating chart tooltip is intentionally hidden to keep the chart clean; the Selected table is the primary readout.

Pre-Market & After-Hours Quote

Open, high, low, close and the regular session day change sit beside the Analyze button on the search row (not on a separate strip under it). During extended trading hours that same area also shows the session label and the move during that session: before the open (4:00–9:30 AM Eastern) or after the close (4:00–8:00 PM Eastern).

  • Pre-Market: Driven by overnight news, earnings releases, analyst upgrades/downgrades, and macro data (for example the jobs report at 8:30 AM Eastern). The figure beside the label is the pre-market move, not a second copy of the regular day change.
  • After Hours: Often reflects earnings results announced after the close, or news that breaks in the evening. The figure beside the label is the after-hours move versus the regular close.
  • Regular session: Only open / low / high / close and the regular day change appear beside Analyze. The extended-hours badge stays hidden so the row is not duplicated.
Example:
Beside Analyze you see the regular close as C 377.80 with its day change, then immediately After Hours 386.20 (+2.3%). The +2.3% is the move after the close, not the full day move. Watch to see if that gap holds at the open.

Extended hours are thinner markets with lower volume: moves can be exaggerated and may not hold at the regular session open.

Price Chart & Timeframes

The main price chart shows candlestick or line data for the analyzed stock. Select your timeframe using the dropdown:

  • 5m · 1 Day: Five-minute candles for the current session, from the regular open through the latest after-hours print. US listed stocks trade after hours until 8:00 PM Eastern, so the right edge is now, not 4:00 PM.
  • Daily · 3 Months / 6 Months / Year to Date / 1 Year: Daily candles. Year to Date runs from January 1 of the current calendar year through today (America/New_York).
  • Weekly and monthly: Longer history views (2 years through 20 years weekly, or 5 years monthly).
  • 24H Extended: 15-minute candles for today including pre-market and after-hours. Extended hours candles appear in a lighter blue color to distinguish them from regular hours.
How to read a candle:
Each candle has a body (open to close) and wicks (high and low). A green candle means the close was higher than the open (buyers in control). A red candle means the close was lower (sellers in control). Long wicks signal price rejection at those levels.

Two percent days. On the daily views, a small green dot marks any session that closed 2% or more above the previous close, and a small red dot marks any that closed 2% or more below it. The dot sits on the price line at the day it describes. The move is measured close against the previous close, the same basis as the day's change shown at the top of the page. The dots appear on Daily 1 Year, 3 Months, 6 Months and Year to Date only: on the weekly and monthly views one bar covers many sessions, and on the intraday views one bar covers minutes, so a single day's move is not something those bars can show, and the control greys out there.

The Day move menu next to Timeframe sets how big a move earns a dot: None (the default, no dots), 2, 3, 4 or 5 percent, or a number of points. Changing it redraws the dots immediately without reloading the chart. A busy stock can mark a third of its sessions at 2 percent, so raise the setting to see only the largest days.

The last item in that menu is #, which switches the threshold from a percentage to points. Pick it and a box appears: type 12 and the chart marks every session that closed 12 points or more away from the previous close, up or down. This is the setting to use when you think in points rather than percentages, and decimals work too, which matters for lower priced shares. There is no list to choose from, because what counts as a large point move depends entirely on the price of the stock. If a number cannot be used the box outlines in red and the chart is left alone. Your menu choice and both thresholds are remembered for next time.

Beside that menu, two running totals show how many sessions on the chart in front of you cleared the threshold: the green figure counts the days that closed that far up, the red figure the days that closed that far down. They change with the threshold and with the timeframe, so the counts always describe the chart you are looking at rather than a fixed window, and hovering them gives the sentence in full along with how many sessions the chart covers. They disappear on the weekly, monthly and intraday views, where the dots do not apply, rather than showing zero, which would wrongly suggest the stock had no big days.

The dots work in Compare mode too. Every symbol on the chart gets its own dots, drawn on its own line and measured against that symbol's own previous close, so the marks always belong to the line they sit on. The two running totals then cover all the lines together, and hovering them breaks the count down symbol by symbol. The dots are drawn slightly smaller as you add symbols, because several lines at a low threshold can mark a great many sessions at once.

In Compare mode a Day moves panel also appears directly above the Side-by-Side Fundamentals table, listing every symbol on the chart with its own count of up days and down days. The heading states the threshold in force and the note below states how many sessions the count covers, because both change as you change the menu and the timeframe. Symbols are listed in the same order and colour as the chart lines rather than ranked by count, so each row matches the line it describes. One caution: if you set the menu to a number of points rather than a percentage, the counts are no longer comparable between symbols, because a given number of points is a far bigger move for a low priced share than a high priced one. The panel says so when you are in that mode.

The Side-by-Side Fundamentals table includes an Income Statement Grade row for each symbol: the same A to F grade, with its score out of 100, that the Grade chip on the chart toolbar and the Income Statement tab in Research Deep Dive show, so the three always agree. Hover a grade for what it was built on. A symbol with no filed annual statement, such as a fund, shows a dot instead of a grade, with the reason on hover, rather than a score it was never given.

Use the Value Graph button (top right of the chart area) to switch to the long-term fundamental valuation view.

To the right of Value Graph, three readings for the loaded symbol sit on the same row: Grade (the rules-based income statement grade, A to F, the same one the Research Deep Dive statement tab shows), EFM (the ten-factor model score, 0 to 100, the same one the Metrics EFM tab breaks down) and Q (business quality, 0 to 100, a separate reading that is never folded into the EFM score). Each one hovers to its own explanation. Grade and EFM fill in on their own a moment after the chart. Q is filled in on request: it shows a small refresh arrow until you click it, because measuring business quality reads the company against up to eight competitors and is by far the heaviest reading in the app. Once you have clicked it for a symbol, it fills in on its own whenever you come back to that symbol for the rest of your visit. A symbol an engine cannot score, an exchange traded fund with no filed statement, or a bank, which Q refuses, shows a dot rather than a number, never a zero.

Compare Chart

Compare is next to the timeframe control. It lets you put multiple tickers on one chart and see how they move together on a percentage basis from the start of the window (indexed performance), not dollar prices.

  • Turn Compare on, then search or analyze additional symbols. Each new symbol is added to the chart (up to five). Your original symbol stays the primary until you change it.
  • Hint text next to the button reminds you: you can click or search any stock to add it.
  • Legend appears under the chart with a color square for each ticker. Click a ticker in the legend to remove that line. Removing a compare symbol drops it from the chart; if you remove the primary symbol while others remain, the app promotes the next symbol so the chart always has a basis.
  • While Compare is active, overlays (EMA, VWAP, Bollinger) and the RSI / MACD panels are hidden so the view stays focused on the comparison.
  • Compare is not available while Value Graph is open exit Value Graph first.
Why indexed %?
A stock and an index can have very different share prices; showing each series as percent change from the start of the range makes relative strength easy to see at a glance.

JS2000 (toolbar)

JS2000 is an optional overlay on the main price chart (toolbar button next to Compare). It is off by default and does not change quotes, news, or any other part of the app until you turn it on.

  • What it shows: Small green and red markers on the price line at certain dates. They reflect a simplified quantitative idea: when the log spread between your symbol and a broad peer (by default SPY; if you are already viewing SPY, the peer switches to QQQ) moves far from its recent average, that stretch sometimes mean-reverts. The marks approximate “lower extreme” and “upper extreme” crossings for that spread using a rolling window a simple visualization of how spread statistics are often plotted, not a live trading system.
  • Availability: Hidden or disabled on the 24H Extended session chart. Turning on Compare or Value Graph clears JS2000 for that view.
Tip:
Leave JS2000 off if you only want a clean price chart. Turn it on when you want to see where that simple spread statistic would have flagged dates on history useful for seeing how these models are often visualized in quantitative work.

Chart Overlays (EMA, VWAP, Bollinger Bands)

Toggle overlays on and off from the legend above the chart. Each one adds a layer of analytical information.

  • EMA 9: 9-day Exponential Moving Average. Fast-moving, closely tracks price. Used by short-term traders to spot momentum shifts. Price crossing above EMA9 is a short-term bullish signal.
  • EMA 20: 20-day EMA. Medium-term trend indicator. A common entry signal: price bouncing off the EMA20 in an uptrend.
  • EMA 50: 50-day EMA. The most-watched medium-term support/resistance line. Institutional traders pay close attention to the 50-day.
  • VWAP: Volume Weighted Average Price. The average price paid for every share traded today, weighted by volume. Institutions use VWAP as a benchmark: price above VWAP is bullish intraday, below is bearish.
  • Bollinger Bands (BB): Two bands placed 2 standard deviations above and below a 20-day moving average. When price touches the upper band, the stock may be overbought. When it touches the lower band, it may be oversold. Narrowing bands signal a breakout is coming.
Example setup:
Price is above EMA9, EMA20, and EMA50, and holding above VWAP → All trend indicators align bullishly. This is a strong setup for a long position.

RSI: Relative Strength Index

RSI is displayed below the price chart. It measures the speed and magnitude of recent price changes on a scale of 0 to 100, helping identify overbought and oversold conditions.

  • Above 70: Overbought. The stock has risen quickly and may be due for a pullback or consolidation.
  • 30 to 70: Neutral range. The trend can continue in either direction.
  • Below 30: Oversold. The stock has fallen sharply and may be due for a bounce.
Example:
NVDA RSI = 72. The stock has had a strong run. While the uptrend may continue, new buyers are taking on more risk here. Waiting for RSI to pull back to 50–60 before entering reduces the risk of buying at the top.
Power signal: RSI Divergence:
If the stock price makes a new high but RSI makes a lower high, that's bearish divergence: the rally is losing momentum even though price looks strong. This often precedes a reversal.

MACD: Moving Average Convergence Divergence

MACD is shown below RSI. It tracks the relationship between two exponential moving averages (12-day and 26-day) to identify trend direction and momentum shifts.

  • MACD Line (blue): The difference between the 12-day and 26-day EMA.
  • Signal Line (orange): A 9-day EMA of the MACD line. Acts as a trigger.
  • Histogram: The gap between MACD and Signal. Growing bars = strengthening trend. Shrinking bars = weakening trend.
MACD(12,26,9)
Bullish cross Bearish cross
MACD -- Signal ▮ Positive histogram ▮ Negative histogram
Key signals:
Bullish crossover: MACD line crosses above the Signal line → potential buy signal.
Bearish crossover: MACD line crosses below the Signal line → potential sell signal.
Zero line cross: MACD crossing above zero confirms an uptrend; below zero confirms a downtrend.
Example:
AAPL MACD line crosses above Signal line while both are below zero → Early bullish signal. The trend may be turning from down to up. Combined with RSI at 42 (not overbought), this is a favorable entry setup.

Stats Bar

Five key metrics displayed as cards below the search bar when a stock is loaded.

  • Last Price: The most recent trade price, updated every 30 seconds.
  • 50-Day MA: The average closing price over the last 50 trading days. Price above the 50-day MA is generally bullish. A break below it is a warning signal.
  • 200-Day MA: The average closing price over the last 200 trading days. The long-term trend line. Stocks above their 200-day MA are in a long-term uptrend. Institutions use this heavily.
  • PEG Ratio: Price-to-Earnings divided by the 5-year expected growth rate. The most balanced valuation metric. PEG below 1.0 = potentially undervalued. PEG 1.0–2.0 = fairly valued. PEG above 2.0 = potentially expensive relative to growth.
  • Fear & Greed: CNN's Fear & Greed Index (0–100). Measures overall market sentiment. Below 25 = Extreme Fear (historically good for buyers). Above 75 = Extreme Greed (historically a caution signal). The gauge updates every 10 minutes.
Last Price
219.90
50-Day MA
198.40
▲ Above
200-Day MA
155.20
▲ Above
PEG Ratio
0.65
Undervalued
Fear & Greed
19
Extreme Fear
Reading the example above (AMD):
Price is above both moving averages: bullish trend intact. PEG of 0.65 means the market is pricing in strong growth at a discount. Extreme Fear (19) signals broad market anxiety, which historically creates buying opportunities in quality names like this.

Interactive Metric Cards

Several of the fundamental metric cards in the Insight tab are interactive. Hovering or clicking them reveals a history chart that overlays the Latest News panel. This gives you a quick visual of a metric's trend without leaving the page.

The original three:

  • EPS (TTM) ↗: Quarterly earnings per share history, actual EPS bars with an analyst estimate line overlaid as a dashed reference. Hovering a bar also shows the earnings release date when known (the day the company announced that quarter, not the fiscal period end) and that quarter's net profit or loss in total, as filed with the SEC (or from Yahoo's quarterly statements for companies that do not file quarterly with the SEC, reported in the company's own currency). The bars often use the vendor's adjusted earnings per share, so the net figure will not always divide into the bar exactly; the difference is the adjustments. When no release date is available the line is omitted rather than guessed.
  • P/E Trailing ↗: Trailing P/E ratio computed from rolling 4-quarter TTM EPS and the quarter-end stock price, plotted as a line chart. A dashed white line shows the 5-year average P/E for context.
  • Rev Growth ↗: Quarterly revenue history in billions.

These cards open the same way:

  • FCF Yield ↗: Trailing free cash flow as a percent of market cap, the same figure the card shows, plotted over its own history. A dashed line marks the average. Green when the latest reading is positive, red when it is negative. Names with no usable cash-flow history show a plain message instead of a single point.
  • ROE ↗: Return on equity history.
  • ROIC ↗: Return on invested capital, for the latest fiscal year, with the year under the figure. It is the same number the Capital Compounding tab in Research Deep Dive shows, built the same way: after-tax operating profit over the average of opening and closing invested capital (shareholders' equity plus debt and lease liabilities, less cash), from the company's 10-K reports where they can be read. Blue when it clears a stated 10% cost of capital, amber when it falls short; it is a reading against that hurdle, not a gain or a loss, so the number itself is never green or red. The card gets a green border for a sustained record over the five most recent fiscal years: either 15% or better in every one of them, or higher every year than the year before while staying above 5% in each. All five years must be measured, so a company with a shorter filed history, or an unmeasurable latest year, gets no border. Hover the card to see the five years behind it. Hovering opens up to five years, one bar per fiscal year, with the 10% line dashed across. The card removes itself for banks, insurers and property trusts, where invested capital does not describe the business, and for companies with fewer than two fiscal years of filed statements, rather than showing a number the filings cannot support. The first fiscal year on file never has a bar, because its return needs an opening capital figure from the year before.
  • WACC (estimated): the weighted average cost of capital, what the company's investors are estimated to require on the money they provide. It is a modeled estimate, not a reported figure. Equity is weighted at market value (today's price times shares outstanding) and debt at the interest-bearing debt on the latest balance sheet. The cost of equity is the 10-year Treasury yield plus beta times an equity risk premium; the cost of debt is the last twelve months' interest expense divided by the company's average debt (or the Treasury yield plus 2 points when interest expense is missing, zero, or gives an implausible rate), reduced by the company's effective tax rate (held between 0% and 35%, or the 21% statutory rate when pretax income is negative). Beta is Yahoo Finance's five-year monthly figure, or computed here from five years of monthly returns against the S&P 500 when Yahoo has none. The premium selector on the card sets the equity risk premium, from 3% to 7% in half-point steps (4.5% by default); changing it recalculates both this card and the spread at once, and your choice is remembered. Hover the card for every input used, each with its date, and the share price with the time it was taken.
  • Value creation spread: the ROIC card's return on invested capital minus the estimated WACC, in percentage points. Green when positive (the business earns more on its capital than that capital costs, so it creates value), red when negative. A spread above 7 points gives the card a green border, the same mark the ROIC, Rev Growth and Pricing Power cards use for a standout reading; since the spread follows the premium you choose on the WACC card, so does the border. The ROIC is the ROIC card's own figure for the latest fiscal year, so the two cards never disagree. NM (not meaningful) appears instead of a number when an input is missing or the reading would be misleading, such as shareholders' equity or invested capital at or below zero; the tooltip names the reason. Neither card is shown as 0% for a missing input. Both read Not applicable for banks and insurers, whose borrowing is their raw material rather than how they finance the business, so the standard formula describes nothing.
  • Debt / Equity ↗: Debt to equity history.
  • Net Margin ↗: Quarterly net margin history.

Three more cards open the same popup with their own charts, each with its own section in this guide: Short Interest, Pricing Power, and P/B Ratio (Valuation Drivers).

Book to Bill is a Fundamentals card as well, but it is not interactive and it is not always there. It appears only when the data vendor publishes the ratio. See Book to Bill for what the number means and why most symbols never show it.

Street Rev Est shows Street consensus next-year revenue growth versus the prior year (the analyst estimate, not company-issued guidance, which free feeds do not publish as structured data). When that estimated growth is 20% or higher, the card gets a bright green border so a substantial forward step stands out. No figure means no card and no border; a missing estimate is never treated as zero. Management often sandbags published outlooks, so a large Street estimate is a signal to read, not a promise.

Rev Growth gets the same green border when revenue was higher than in the same quarter a year earlier for each of the five most recent quarters. The comparison is against the year-ago quarter, not the quarter before, because many businesses are seasonal (a holiday quarter is always followed by a smaller one), and a quarter-to-quarter test would mostly measure the season. Hover the card to see the five quarters and their growth. The figures are the quarterly revenue each company files with the SEC, with the fourth quarter worked out as the full year less the first three. A company that does not file quarterly revenue with the SEC (most foreign companies and funds) never gets the border; that means the check could not be made, not that revenue fell. A latest quarter more than about six months old does not count.

The ↗ symbol on the card label indicates it is interactive.

Two interaction modes: same pattern for all three:

  • Hover: Chart appears instantly. Moving the cursor away from the card dismisses it automatically after a short delay.
  • Click: Chart is pinned open. A × close button appears in the top-right corner of the chart panel, use it to dismiss. While pinned, moving the cursor away does nothing.
Reading the P/E chart:
The amber line shows the trailing P/E each quarter. The dashed white line is the 5-year average. When the current P/E is significantly above the average line, the stock is trading at a historical premium. When it dips below, the market is pricing it more cheaply than usual, which may signal an opportunity or reflect a deteriorating growth outlook.
Reading the EPS chart:
Green bars = positive EPS, red bars = negative. The dashed line is the analyst estimate for that quarter. When the bar clears the estimate line, the company beat expectations (positive earnings surprise). Consistent beats over multiple quarters are a strong quality signal.

Chart data is fetched once per session per ticker and cached, subsequent hovers on the same ticker load instantly.

Book to Bill

The Book to Bill card in the Fundamentals panel is orders received in a period divided by orders billed (shipped) in that same period. It is a demand reading for businesses that take orders into a backlog, not a valuation ratio and not a profit figure.

  • Above 1 (green): new orders are outrunning shipments, so the backlog is growing.
  • Below 1 (red): the company is shipping more than it is booking, so the backlog is shrinking.
  • Exactly 1: orders and shipments matched. The number stays the ordinary text colour.

A single reading is a snapshot of one period. A run of prints above 1 says demand has been filling the backlog; a run below 1 says the backlog is being worked down. The card does not say whether that is good or bad for the share price, only which way the order book moved.

Why the card is usually missing

Most companies do not have a meaningful book to bill. Retailers, software firms, banks and consumer brands book and deliver in ways this ratio does not describe, and the data vendor does not publish one for them. The card is omitted rather than shown as a blank, the same way Pricing Power and Short Interest remove themselves when they cannot measure.

When it does appear, it is usually on semiconductor equipment and a few other order-driven industrials: the businesses that report the ratio because their customers place large capital orders months before the machines ship. A name with no published figure will never show the card. That is a real answer, not a fault.

The admin reorder list still includes it because that list is every possible Fundamentals card, not the ones on screen for the stock you have open.

How to use it:
Treat it as a demand check on the names that actually print it, not as a field you should expect on every stock. A reading of 1.15 means the company booked fifteen percent more than it shipped; 0.85 means it shipped more than it booked. Compare it to the last few periods if the company discusses the ratio in its own results, and do not read a missing card as a zero.

Adjusted Cost (Option Premium)

Selling an option on a stock you own, or one you mean to own, pays you a premium, and that premium lowers what the shares really cost you. The Monitor shows it as the Adjusted cost (includes option premium) beside the original cost, which is never changed.

Example: 100 shares bought at 350.00, and one 325 put sold for 2.00 that expires worthless. 35,000.00 less the 200.00 collected is 34,800.00, so the adjusted cost is 348.00 a share. The original 350.00 and the 200.00 of premium collected are listed right under it.

What counts, and when

  • Closed or expired only. An option you have sold and not yet closed is listed as Premium pending (not yet earned) and moves nothing until it expires or you buy it back.
  • Bought back: the premium counts net of what you paid to close it, and of any fees. A buyback that costs more than you collected lowers the premium collected, and can make it negative.
  • A put that was assigned: the shares you were handed are the real purchase, at the strike. That lot shows its original cost (325.00) and an adjusted cost of strike less premium (323.00). The premium is used there and is never also spread over your other shares.
  • A call that was assigned: the shares were called away. The premium is shown as added to the sale proceeds in the event list. It changes no cost.
  • Rolls (closing one contract and opening another in one decision) are grouped as one chain with the net per share, for reading. Each leg still counts on its own.
  • Several portfolios: the premium for a stock is divided evenly over every share of it you hold across all portfolios, so the same stock shows the same per-share adjustment in each.
  • No negative limit. If premium ever exceeds the cost, the figure is shown as it is. A negative adjusted cost is a real result, not an error.

Where you see it

  • Monitor, expanded stock row: the adjusted cost per share, large, with Original, Premium collected and Premium pending beneath it, and a list of every contributing option: when it was sold, the contract, its status, the premium, and where each one went.
  • Monitor stock table: a Basis switch, Adjusted or Original, remembered on this device. In Adjusted the Avg Cost and Total Cost columns use the adjusted figure for a stock that has earned premium and carry a small blue marker. A stock with no premium reads the same in both. The switch appears only when some stock has earned premium.
  • Position editor: the adjusted figure is shown read only beside the original cost. What you save is always the original.

Recording premium

  • Log premium, in the expanded stock row and on any option row: the stock is filled in for you; add the expiry, strike, put or call, sold or bought, contracts, the date and the premium per share, and fees if any. It is saved as an open option.
  • Update on an open option in the list says what happened to it: expired worthless, bought to close (with the date and price), rolled to a new contract, or assigned. Buying back fewer contracts than are open closes that many and leaves the rest open.
  • Importing sold options: the Bulk Import window has a switch to log the premium of sold options, and it is off until you turn it on. When it is on, an import that contains sold options shows what would be created and asks you to confirm each time. Nothing is created silently, and importing the same file twice does not create them twice.
  • Confirm option outcomes: when an option's expiry has passed, it is marked expired for you only when the stock closed clearly out of the money (at least one percent from the strike) and the price is recent. Anything closer, in the money, or with no recent price waits in this list for you to say whether it expired worthless or was assigned. A near miss is asked about rather than credited quietly, because assignment is exactly the case a quiet guess would get wrong.

What it is not

It is an economic view for you, not a tax figure. Your tax lots, original cost, holding terms, wash sale marks and realized gains are worked out from the original records and never use the adjusted number. The Return and profit and loss columns stay on the original cost for that reason, so on a stock with premium you will see a cost column and a profit column on different bases. The purchase, at the real strike, is what your records show.

When nothing shows

  • A stock with no open shares has no adjusted cost. Premium collected while you hold none (selling puts before you are assigned) is kept, listed under Option premium without shares, and applies by itself when you later buy the shares.
  • Only pending premium changes no figure and shows no marker. It appears only as Premium pending.
  • No options logged means no switch, no marker and no extra block: the Monitor reads exactly as it did.
  • The ledger is its own record. It is kept apart from your portfolios, so a broker re-import or a Bulk Import Replace does not touch it, and it follows you across devices once your account has the matching storage. Until then it stays on the device where you entered it.

AI Insight Tab

The Insight tab uses Groq's AI model to analyze the stock using live price data, recent candles, and news headlines. It generates a structured report with three components:

  • Summary: A plain-English overview of the stock's current situation, trend, and key factors to watch.
  • Signals: Specific bullish and bearish signals identified from the data (e.g. "Breaking above 50-day MA on above-average volume" or "RSI approaching overbought territory").
  • Key Levels: Price levels to watch: support (where buyers historically step in) and resistance (where sellers historically appear).

The tab also carries an Intrinsic Value box using Benjamin Graham's formula on trailing earnings per share: trailing earnings per share times (8.5 plus twice the growth rate), scaled by a 4.5% bond yield, with growth held between minus 4% and 25%. When the rate on record sits outside that range, the box shows the rate used and the rate on record. When an earnings growth rate is not on record, the box uses revenue growth and says so. It is a rough cross-check, not a valuation. It is not estimated for banks and insurers, where the growth input (it falls back to revenue growth) moves with interest rates and deposit mix rather than with the business, and says so in place of a number.

How to use it:
Use the AI summary as a starting point, not a final decision. It synthesizes information quickly, but always cross-reference with the chart, fundamentals, and your own judgment. The Ask a Question field below the analysis lets you ask follow-up questions specific to that stock.

Billing

Quantamatica is a subscription product: a monthly or an annual plan, chosen the first time you sign in after creating your account. Both plans unlock the exact same product; there is no feature difference between them, only how often you are billed. Monthly starts with 30 days free, no commitment, cancel anytime before the trial ends and nothing is ever charged. Annual has no trial; instead it is billed at less than paying monthly for a year, shown on the plan page as the number of months free. If you already had an account before Quantamatica introduced billing, you keep free access automatically, no action needed.

  • Discount codes: if you have one, enter it on the plan page before adding a card. A valid code is confirmed immediately and shows what it does, for example an extended trial or a percentage off your first payment, before you commit to anything.
  • Your card: entered directly into Stripe's own secure payment field. Quantamatica never sees or stores your card number.
  • Managing or canceling: open your account menu and choose Manage billing. This opens Stripe's own billing page, where you can update your card, view past invoices, or cancel. Canceling is recorded immediately, so no further charge will ever be made, but your access is not taken away right away: it continues through the end of the period you already paid for. No part of that period is refunded or prorated once it has begun.
  • Existing accounts: an account that existed before billing began keeps free access unless an administrator removes it individually. If your access changes unexpectedly, contact support.
How to use it:
If you are ever shown a plan-selection page unexpectedly, it means your account currently requires an active subscription to continue. Choose a plan, apply a discount code if you have one, and enter payment details to continue into the app.

Analytics Intelligence

The Analytics Intelligence row appears below the chart after you analyze any ticker. Click the ◈ Analytics Intelligence header to expand it, then click Load next to any section to fetch that data on demand. Sections load independently: you only request what you need.

The ten sections available:

  • Analyst Consensus: Wall Street analyst ratings (Buy/Hold/Sell counts), average price target, and a bar chart of the distribution.
  • Earnings Surprise History: Last 8 quarters of EPS actual vs. estimate, with a chart showing the surprise pattern over time.
  • Short Interest: The latest reading only: percent of the free float, days to cover, shares short, and the change from the previous settlement. High short interest can mean either bearish conviction or future squeeze potential. The Short Interest card in Fundamentals carries the five-year history; see that section.
  • 13F Institutional Ownership: Largest institutional holders by % held, with a bar chart of the top 8. Institutions control most market volume: knowing who owns a stock matters.
  • Options Unusual Activity: Put/call ratios by open interest and volume, total call and put OI/volume, ATM implied volatility, and the top contracts by volume. Data is sourced from CBOE (15-minute delayed).
  • Investment Thesis: AI-generated analysis of why the market values this company the way it does, the bull case, bear case, and key drivers.
  • Earnings Transcript (8-K): The most recent earnings call results: EPS actual vs. estimate, revenue, and an AI summary of key themes, guidance, and management tone from the latest 8-K filing.
  • 10-K / 10-Q Analysis: AI analysis of the most recent annual or quarterly SEC report, identifying strengths, risks, and forward guidance buried in the filing.
  • Risk Flag Scanner: AI-identified red flags from recent SEC filings. Each flag shows severity (LOW / MED / HIGH), category, and a plain-English description.
  • Credit & Debt Summary: Debt/EBITDA ratio, net debt, total debt, cash position, credit rating (if publicly rated), and interest coverage. Useful for assessing balance sheet risk before entering a position.
Workflow tip:
For a quick read on any stock: load Analyst Consensus first (fast, no AI), then Earnings Surprise History. If both look interesting, load the Investment Thesis for the AI perspective. The Groq-powered sections (Thesis, Transcript, 10-K, Risk Flags, Credit) run on a free-tier AI model, if you see a rate-limit message, wait 10–15 seconds and click Retry.

Research Deep Dive

The ◈ Research Deep Dive row sits directly above Analytics Intelligence, below the chart, once you have analyzed a ticker. The company name is printed beside the title so you always know which company the report belongs to. Click the row to open it.

It writes a full equity research note on that company, in four parts:

  • Executive Summary: what the business actually sells, by product and end market, the specific problems each product solves for its customers, how the money is made and how much of it recurs, the two or three moats protecting those earnings, and what the company can do that a rival could not copy quickly.
  • Company Overview: how the company is built and run beneath that summary. Revenue by segment and roughly what each contributes, where the profit sits versus where the revenue sits, geographic mix, customer and channel concentration, pricing and contract length, cost structure and key inputs, supply chain dependencies, and the unit economics of the core product.
  • Competitive Position: the moats tested rather than restated. Evidence that each one is holding or eroding, named competitors compared head to head, who leads on which dimension, how share and growth have trended, and what would have to happen for a rival to take the lead.
  • Financial Health: cash position, total debt, the ratio between them, the pace debt is being paid down at, and the return being earned on what is still outstanding.

Every number in the report is taken from verified data, never from the model's memory. The live price, previous close, day range, market capitalisation and share count are read from the market data provider on the day the report is written and handed to the model with instructions that they override anything it remembers. Any competitor comparison table is computed by Quantamatica and reproduced as given, with real ticker symbols rather than invented placeholders. That table sets the company against up to four of its listed competitors on share of the group's market value, revenue growth, gross and net margin, free cash flow yield and market value, and alongside those it carries three of our own readings for each company: its EFM Score, its Q business quality score, and its Income Statement Grade, so the company can be compared with its rivals on the same measures the rest of the platform uses. Where a reading is refused or unavailable for a company, such as Q on a bank, the cell says so rather than carrying an estimate. A blank market value, revenue growth, gross margin, net margin or free cash flow yield is filled from the same figures as the Fundamentals cards, and a report already on file is updated in place. The most recent income statement and its grade are supplied too, so the Financial Health section answers from filed figures instead of recalled ones, and so are the Capital Compounding readings (return on invested capital, return on new capital, reinvestment, dilution and buybacks), so any remark about how well the company turns capital into profit uses the same figures as the Capital Compounding tab. For a bank, insurer or property trust, where that tab measures nothing, the report is told so and must not supply a return on capital from memory. Reports written before a reading was added pick it up when they are next rewritten, which is why an older report can lack it. Where a figure comes from the model's general knowledge of the company, it is required to say which fiscal year it belongs to rather than presenting it as current. The comparison table's column headers show each company's full name rather than its bare ticker symbol; click one to load that company on the main search and analyze it, closing the report. The report itself still works from ticker symbols underneath, so this is purely a reading and navigation convenience.

Free cash flow yield is given on two stated windows, the trailing four quarters and the latest fiscal year, both from the company's filings over a market cap of today's price times shares outstanding. They can differ a lot (a one-time payment can sit in one window and not the other), so the report names the window with each figure. Banks and insurers get no free cash flow yield. Shares of revenue are either a full breakdown for one fiscal year that adds up to 100%, or described in words. There is no composite or overall score: the app keeps its readings separate on purpose, and a sentence that blends them into one score is removed before the report is shown.

There is deliberately no price target and no buy, sell or hold rating. Judgements are expressed in words and anchored to the verified figures. A recommendation invented by a language model would look like research without being it.

Below the written report the same view draws the company's cash flow by year (operating cash flow and free cash flow), its free cash flow margin, and debt against cash, from the annual statements. A chart is only drawn where at least two years of that figure exist. These charts read the same filed figures as Conviction and the DCF, so the three always agree. Banks and insurers get no cash flow chart, for the same reason they get no discounted cash flow value.

Reports are shared and long lived. Once written, a report is stored and reused for months rather than regenerated per person, which is what keeps it available on a free AI tier. The header therefore prints the date it was written and states that the figures are as of that date. If the AI limit is reached while you are asking for a fresh one, the last good report is shown and labelled as cached, with a note to reopen later for a refresh, rather than an error page.

The Income Statement tab at the top of the popup is a different kind of thing entirely: it is fully deterministic and uses no AI at all. It shows the most recent annual income statement, two fiscal years side by side with the change between them, a balance sheet and cash strip underneath, and templated commentary. Every figure comes from the market data provider's normalisation of the company's filed statements.

Above the statement sits a rules-based fundamentals grade, A to F with a score out of 100, built from seven factors: revenue growth, gross margin, operating margin, net margin, free cash flow, the direction margins are moving, and the balance sheet. Each factor is scored on fixed breakpoints and shown as its own chip with the value it was scored on, so you can see what produced the letter. A net loss, negative free cash flow or falling revenue caps the grade, and the cap is printed rather than applied silently.

The grade is a stated prior, not a fitted model, and it is not a rating or a price target. The breakpoints were chosen from reasoning about what good looks like, not trained on historical returns.

Banks and insurers are graded on fewer factors. Gross margin, operating margin and free cash flow describe deposit and reserve flows for these companies rather than a return to owners, so those three are left out and the tab says so. Exchange traded funds and any symbol with no filed statement produce a plain message instead of a table: there is nothing to show, and an empty grid would read as a fault.

At the foot of the tab is a link to the original filing on the Securities and Exchange Commission's EDGAR system, the most recent annual report on file. The figures above it are a data provider's normalisation, so this is the authoritative source to check them against.

The Notable Holders tab lists up to ten hedge funds and well known investors who report a substantial position in the company. Index funds, banks and pensions are left off, even when they are the largest holders on the filing. Each row shows the shares that manager reports, whether the latest filing increased the holding, decreased it, left it unchanged or opened it, by how many shares, and the report date. That date is the quarter the report covers. A holding worth under 50 million is left off. A smaller position outside the largest few hundred reported holders is not listed, so fewer than ten names is the result of that rule. The list is read from the published holder filings and uses no model.

The Suppliers tab lists up to ten companies that supply the company on screen. Each row gives the supplier's stock symbol (the word Private stands where the supplier is not publicly traded, and a symbol that trades in the United States opens that company when clicked), what it supplies, its annual purchases, the amount expected over the next three years, and where the row came from. Above the table sit the company's own description of its supply chain and, where it tags one, the total it has committed to buy.

Every row says where it came from. An Annual report row names a supplier that appears in the company's own latest annual report (the 10-K, or the 20-F for a foreign company). A name is accepted only if the report really says it, and the sentence it rests on is checked against the report's text and shown when you tap the label. When the report names fewer than ten, the list is filled with General knowledge rows: widely reported relationships that are not in the report. They are labelled as such, they never carry an amount, and they should be checked before you rely on them.

Most amount cells read Not disclosed, and that is the normal state, not a fault. Companies almost never publish what they spend with one supplier, so no free source can state it for most pairs. An amount appears in one of two ways. The company's own annual report may state one for that supplier; a share of purchases it gives (24% of purchases, say) is shown as the share and is not turned into money. Or the supplier's own annual report may say what share of its sales this company is (a sentence such as "NVIDIA Corporation contributed 16.3% of our revenues"), and that share times the supplier's sales for the same year is what this company spent with it. Those amounts are marked from the supplier's report, and tapping the label shows the sentence and the sum. Only a supplier that files its own annual report in the United States and names its customers by share can have one, which is a minority, so most cells still read Not disclosed. The next three years column exists only where there is an annual amount: it grows that amount at the company's own revenue pace over its last fiscal years, held between minus 20 and plus 40 percent a year, counting from the year the amount describes. That is arithmetic on the number shown, not a forecast and not a figure from any contract, and the table says so beneath it. Nothing in either amount column is estimated by a model.

Purchase commitments on file is a different, company wide figure: everything the company has contracted to buy from all its suppliers together, not only these ten, as tagged in its annual report, with the schedule by year when the report tags one. A company that does not tag it says so, and nothing is shown in its place.

Symbols come from a stock symbol search on the supplier's name, never from the model. Private means no listed company with that name, or a similar one, was found and the supplier is described as privately held. Not verified means no listed company with exactly that name was found but the supplier may still be public, because it is a unit of a listed group, goes by another name, or shares its first word with a listed company, so it is not called private. A company listed in several countries is shown on its United States exchange when it has one, otherwise on its home exchange. A supplier that is a division of a listed company shows the parent's symbol marked parent company. Symbols from other countries' exchanges are shown but do not open.

The first time a company is opened the list can take up to a minute, because the report is read and the symbols are looked up in stages. The tab shows the rows it already has and says what is still being worked on, then updates by itself, and Stop ends that. If the free AI allowance is used up it waits and tries again instead of showing an error. A fund, and any symbol with no annual report on file, shows a plain message instead of a table. Copy report and Read aloud work on this tab too.

Read aloud, at the foot of the popup, has the section on screen read to you. It reads whichever tab you are on, the same text Copy report copies, so what you hear and what you see are never different things. Click it again to stop, and reading stops on its own if you close the report, switch tabs or open a different company.

The Voice control beside it chooses which of your own device's voices does the reading. The most natural one installed is picked for you and your own choice is remembered, and the joke and 1980s voices most computers still carry are left out of the list. Better voices are a free download from your system settings, and they make far more difference than anything this page can do: on a Mac, Accessibility then Spoken Content then Manage Voices, where the ones marked Premium are the best; on Windows, Time and Language then Speech. Changing the voice while it is reading takes effect at the next sentence rather than starting the section again.

How to use it:
Read the Income Statement tab first: it is instant, deterministic, and tells you what the company actually reported. Then read the written report for the qualitative work around those numbers, what the business is, who it competes with, and where the moat is holding. Use Copy report at the bottom to take whichever tab you are on as plain text, or Read aloud to listen to it. Escape closes the popup.

Capital Compounding

Open Research Deep Dive and choose the Capital Compounding tab. It answers two questions from the company's filed statements: does the business turn the capital it invests into more profit, and does that profit reach you per share? Everything is read by fiscal year, so a seasonal quarter never distorts it.

These are readings, not a score. Each figure is shown with how it was built, and the only comparison made is against a stated 10% cost of capital, the same rate the DCF model's Base scenario uses. That rate is an assumption, not an estimate of this particular company's own cost of capital.

  • Return on invested capital: after-tax operating profit divided by the capital the business uses (shareholders' equity plus debt and lease liabilities, less cash), averaged over the start and end of each year. Shown in blue when above the 10% cost of capital and amber when below. The first fiscal year on file shows no return because it has no opening capital to average with.
  • Where the figures come from: for companies that file with the SEC, operating income, tax, equity, debt, leases and cash are read from the company's own 10-K reports, which gives six fiscal years and so five returns. Operating income is as filed, so it includes the charges and one-off gains an adjusted figure leaves out: Coca-Cola's 2024 return is lower here than on sites that use the adjusted number, and Boeing's 2025 return includes the gain on a business it sold. Lease liabilities count as capital because a store, restaurant or data-center business funds its locations with them. Free cash flow, stock pay and share count still come from the same statements feed as the rest of the app. Where the 10-K figures cannot be read reliably (a foreign filer, a company whose filings stop short of its latest year, or debt tags that come to far less than the company's reported debt) the tab uses that feed for everything, which carries about four fiscal years, and says so in its source line.
  • Tax rate: the company's own effective rate for that year. When it falls outside 5% to 40% (a tax credit, a one-off, a loss year), the 21% US statutory rate is used instead and the year is marked, so a one-off tax benefit does not inflate the return.
  • Return on new capital: how much after-tax operating profit the added capital produced, from the first fiscal year on file to the latest. When the company grew its profit while its capital shrank, the tab says so in words, because that ratio cannot be computed and does not need to be.
  • Reinvestment rate: the share of after-tax operating profit that went back into the business as new capital. Multiplied by the return on new capital, it gives the growth that reinvestment alone would fund, set beside the growth the profit actually showed.
  • Owner cash flow per share: free cash flow less stock-based compensation, per share. Stock pay is paid in new shares rather than cash, but it still costs existing owners. It is only shown where the company's stock pay is reported, never assumed to be zero.
  • Share count, buybacks and stock pay: whether the share count is rising or falling, and whether buybacks offset the new shares issued as pay.
  • Net debt: debt less cash, in years of operating income.

The latest year's return on invested capital also sits in the Fundamentals panel as the ROIC card, read from this same calculation, so the two always agree.

When it shows no figures, and why. Banks and insurers are not measured, because their capital is the balance sheet itself and operating income is not their earnings. Property trusts are not measured, because depreciation drives their book value. A company needs at least two fiscal years with both an income statement and a balance sheet on file, and a year whose invested capital is zero or negative shows no return for that year. In each case the tab says which applies.

Consumer Credit

Open it from DATA › Consumer Credit. It shows how many consumer loans at United States commercial banks are going bad, sourced from the Federal Reserve's own quarterly release on charge-off and delinquency rates, and places every reading against its own history so you can see whether today is ordinary or stretched.

A public version of the latest reading, no sign in required, is at quantamatica.com/consumer-credit.

It covers four loan types: credit cards, other consumer loans (auto, personal and other installment loans), all consumer loans together, and single-family mortgages. Each carries two measures:

  • Delinquent: loans 30 or more days past due, plus loans the bank has stopped accruing interest on, as a share of all such loans. This is where stress shows up first.
  • Charged off: loans the bank has written off as uncollectable, net of anything later recovered, as an annual rate. Banks write off a credit card at 180 days past due, an installment loan at 120, so this is where stress ends up.

The sections

  • Where each loan type stands: the latest rate, its percentile against every quarter published (the 90th percentile means only a tenth of quarters were higher), the long-run median, and a bar running from the lowest quarter to the highest with today marked in blue and the median in grey.
  • History: both measures for each loan type over every published quarter, with recessions shaded. A chart with a red border has a rate above its usual range, meaning higher than three quarters of its own history, and the line under its title names which one.
  • Does delinquency lead charge-offs: measured on the data rather than assumed. Each cell is how closely a change in delinquency matches the change in charge-offs that many quarters later. A blank cell is inside the noise floor. For credit cards and consumer loans the strongest match is one quarter later; for mortgages the two move in the same quarter.

What it does not cover. The release counts commercial banks only. Credit unions, finance companies, online lenders and federal student loans are outside it, so it understates stress where borrowers rely on those lenders. The figures arrive about two months after each quarter ends.

It is not a forecast. The page shows where consumer credit stands today against its own past. It does not predict the next quarter, and it does not predict the direction of any stock.

Conviction and Theses

Open Conviction, the row between Decision Card and Research Deep Dive. It brings the readings that decide whether a stock is worth owning into one view, and lets you write down why you own it in a form the app can check for you.

The readings sit side by side and are deliberately not combined into one score. They answer different questions, and a single number would hide a great business at a demanding price, or a cheap one that is shrinking.

  • The business: Q, business quality, and the Income Statement grade, the same numbers their own panels show.
  • Capital compounding: return on invested capital against a stated 10% cost of capital, return on new capital, owner cash flow per share and the share count, from the Capital Compounding tab. Full table opens that tab.
  • What the price expects: the yearly free cash flow growth today's price implies, solved at the DCF model's Base settings (10% discount rate, 2.5% terminal growth), beside the revenue growth of the last three fiscal years and the free cash flow margin. This is what the price already assumes, not a forecast.

Your thesis

Signed in, you can write a thesis on any stock: why you own or watch it, an optional date to review it by, and up to eight conditions that would prove it wrong. Each condition is a limit on one of the readings above, for example "Return on invested capital below 15%", "Yearly growth the price implies above 30%" or "Share price below 180". A sentence cannot be checked; a limit on a measured reading can.

AI draft thesis. In the editor, Draft an AI thesis (or Start from an AI draft when there is no thesis yet) writes a short thesis led by the company's competitive advantage: where its moat comes from (switching costs, network effects, scale, brand, patents and the like), whether pricing power and returns on capital show that moat in the numbers, what today's price asks, and what would most weaken the advantage. Every figure in it comes from the readings on this page; the AI uses general knowledge only to describe where an advantage comes from. If a reading is weak or missing, the draft is told to say so, and to call a moat unproven rather than invent one. Add to my thesis puts the draft at the top of your thesis so you can edit it and add your own words underneath; Don't use it leaves your thesis entirely your own. Nothing from the draft is saved unless it is in your thesis text when you press Save. One draft per stock is shared by every reader and refreshed every two weeks, and it carries the date it was written.

  • Then against now: the readings are frozen at the moment you write the thesis, so each condition shows its value then beside its value today.
  • Intact, Broken or Not measurable: a broken condition shows the date it first broke. Blue means intact, amber means broken.
  • Checked every weekday evening after the close. If you tick the email box, you get one email when a condition first breaks, not one every evening it stays broken. If it recovers and later breaks again, you are emailed again.
  • Review date: once it passes, the date turns amber as a reminder to reread the thesis. It sends nothing.
  • Editing keeps the date the thesis was written and its original readings. Closing keeps it as history on that stock, and you can then write a new one. One open thesis per stock.
  • Your theses at the foot of the view lists every open and closed thesis. Open ones show how many conditions were broken at the last check. Theses are private to your account.

Track record

Each thesis records the stock's price and the S&P 500's level (the SPY fund) on the day it is written, and again on the day it is closed. That gives every thesis an outcome: how the stock moved over those days, how the S&P 500 moved over the same days, and the difference in points. An open thesis shows the same figures up to today.

  • Closed and Open at the top of Your theses sum it up: how many theses were measured, their average return, how many beat the S&P 500, and the average difference. Every thesis counts once, because nothing records how much you put into each.
  • It measures the stock, not your trade. A thesis does not record whether you bought, sold, how much, or only watched, so this is how the stock did while you held the view, not your own profit or loss.
  • Price only. Dividends are left out of both the stock and the S&P 500, so a high-dividend stock reads slightly worse than a holder actually did.

When it shows no outcome, and why. On the day a thesis is written there is nothing to measure yet, so it says so rather than showing a flat zero, and a thesis written and closed on the same day has no return. If no price could be read when a thesis was closed, its return is not measured rather than guessed. A thesis written before the S&P 500 was recorded shows its own return with no comparison. None of these count toward the averages.

A bank's or insurer's income statement grade is labelled for reference only. The grade reads an income statement the way it reads any company. A bank or insurer is judged on book value, return on equity and leverage instead, which is why Q refuses it right below, and its Decision Card does not use the grade. It is shown, marked Not used for the verdict, shown for reference only; the grade itself is unchanged.

When it shows no figures, and why. A reading that cannot be measured for a stock is shown as not measured, never as zero. Banks and insurers have no return on invested capital, no free cash flow margin and no implied growth, because their cash flow is deposit and reserve flow. A company with zero or negative free cash flow has no implied growth to solve for. Funds have no filed statements. A condition on a reading that cannot be measured reads Not measurable: it is neither intact nor broken, and it never sends an alert, because an alert fired on missing data is worse than none.

DCF Valuation

DCF stands for Discounted Cash Flow: a method of estimating what a company is worth today based on its expected future earnings, discounted back to present value.

Access it via the DCF button in the top navigation. Enter or confirm the inputs and Quantamatica calculates the intrinsic value.

  • Base cash flow per share: Filled in from the company's filed free cash flow over the trailing four quarters, divided by shares outstanding. Where no filed figure is available it falls back to earnings per share as a stand-in, and the label beside the field says which one you are looking at. You can type your own number at any time.
  • Growth rates: Expected annual growth of that cash flow, one rate for years one to five and another for years six to ten. The model opens with both set to the growth rate today's price implies (see below), so it starts at the current price rather than at an answer the defaults made up. Where that rate cannot be solved, it opens on the company's recent revenue growth instead. The sliders run from minus 50% to plus 100% a year in steps of a tenth, the same range the implied rate is solved over, so any rate the model can solve can be set exactly. If a scenario would push a rate past either end, a note under the sliders says the value shown is not the one the scenario asked for.
  • Discount rate: The minimum acceptable rate of return (your hurdle rate). A higher discount rate gives a more conservative valuation.
  • Terminal growth: The rate the cash flow grows at forever after year ten, which sets the value of everything beyond the projection.
  • Banks and insurers are not modelled. Their free cash flow is deposit and reserve flow, not cash returned to owners, so a discounted cash flow value would describe nothing (earnings grown at revenue growth once printed a large bank at almost twenty times its price). The model shows a short explanation in place of a value for these companies, as Conviction and the implied-growth panel do. Payment networks, asset managers and exchanges are modelled normally.
  • Bear, Base and Bull: three preset scenarios measured from the model's opening growth rate. Base returns to that opening point; Bull raises growth and lowers the discount rate; Bear does the opposite. They are measured from the same starting point every time, so pressing one after another never compounds.

What today's price implies

The top of the results runs the same model backwards. Instead of asking what the stock is worth given your growth guess, it solves for the one growth rate, held for ten years, at which the model's value equals today's price. That rate is what the market is already paying for. It is arithmetic, not a forecast: nothing here predicts what the company will do.

  • Price implies: the solved growth rate for free cash flow per share, at the discount rate and terminal growth set on the left. Move either slider and it re-solves instantly.
  • Revenue growth and cash flow margin now: the company's recent record, from its filings, to set the implied rate against.
  • Two ways to read it: how large revenue must become in ten years if the cash flow margin stays where it is, and what the margin must become if revenue keeps its recent pace. Both describe the same requirement from different sides.
  • After stock compensation: a second basis that subtracts stock-based compensation, since it is paid in new shares rather than cash but still costs existing owners. For companies that pay heavily in stock the implied rate rises noticeably on this basis.
  • Use this rate in the model: sets both growth sliders to the implied rate, to a tenth of a percent, so the model on the left values the stock at today's price, a starting point for testing what changes the answer.

When it shows no rate, and why. Banks and insurers are not solved, because their free cash flow is deposit and reserve flow rather than cash returned to owners. A company with zero or negative free cash flow is not solved either, because a growth rate applied to a loss does not describe what the price expects. Funds and other symbols without filed statements have nothing to solve from. In each case the panel says which of these applies rather than showing a number.

Inputs
EPS (Owner Earnings)6.57
Growth Rate (Yr 1–10)10%
Discount Rate10%
Terminal P/E20×
Margin of Safety30%
→
Output: AAPL
Intrinsic Value260.40
Fair Value (after MOS)182.28
Current Price210.00
Valuation15.2% Overvalued
Sensitivity: why inputs matter:
Change the discount rate from 10% to 8% and intrinsic value rises from 260 to ~310, making AAPL appear undervalued at 210. The DCF is a tool for thinking, not a precise answer. Always test multiple scenarios and understand what assumptions you are making.

Decision Card

Open Decision Card, the row above Conviction. It is one dated call the site publishes and later grades: high-conviction buy, buy and watch, hold with no edge, sell, or insufficient evidence. Horizon is twelve months. The public list of those calls, and how they later did against the S&P 500, is the Decision Record (DATA menu, and quantamatica.com/decision-record, no sign in). The heading names the company for the symbol on the card. While the filings are still being read it shows that symbol and a loading line, and it does not keep the previous company's name or figures. A vendor call that fails comes back as a retry, not as insufficient evidence.

This is not your thesis. Conviction is still where you write why you own a stock. The Decision Card combines two readings the Conviction view leaves side by side: how durable the business looks from its filings, and how much growth today's price already assumes. The combination is written as stated weights, not fitted, and a language model does not set the verdict. Portfolio Analytics uses these verdicts (plus Conviction thesis exits) for its Add · Hold · Sell · Review lists; see Portfolio Analytics.

Who can see what. The public Decision Record page and its JSON feed are open without an account (audit and search). The live Decision Card for one symbol in the workspace needs a signed-in session when login is required; when login is off (guest access), the live card is open without an account too. Opening a published freeze from the Decision Record inside the app uses the same path. Your theses (Conviction) stay sign-in only either way.

  • Business durability, operating companies (rules v4, 0 to 100): return on invested capital (the latest fiscal year's, with the three-year average and direction shown beside it, see below), owner free cash flow per share, the share count, and the trailing free cash flow margin. Under two measurable parts the card abstains rather than guessing. A business earning below its cost of capital and shrinking cash per share is capped at 50, and the cap is named.
  • What the price already assumes, operating companies (0 to 100, demandingness): the reverse discounted cash flow at the model's Base settings (10% discount, 2.5% terminal). A high number means the price already assumes a lot of growth, not that the business is good. A price above the 100% growth bound is marked out of range, never clipped in silence.
  • Banks and lenders (rules bank-v4): return on equity (the last three fiscal years, weighted toward the latest, see below), the change in book value per share, the share count (a small weight, because book value per share already reflects dilution), and assets per dollar of equity. Equity here is common equity: shareholders' equity less preferred stock, with income measured after preferred dividends, because book value per share belongs to the common shareholders and the price is the price of the common shares. The preferred amount is the larger of what the company metrics and the company's own filings show for that date, since each is silent about some banks. Where it cannot be resolved for every year the bank is read on total equity and the card says so. Leverage stays on total equity, because preferred stock is part of the cushion under the assets. The price is read against the newest book value on file, the latest quarter rather than the last fiscal year, and the card prints its date. When the newest balance sheet comes from the company's filings and its quarterly report does not state the preferred stock amount (Bank of America's carry only the number of preferred shares), the last known amount is carried forward only if the number of preferred shares is unchanged, which is exact because preferred stock sits at a fixed amount per share; a changed or unknown count is refused and the older balance sheet is used. A share count taken from the report cover, dated up to 45 days after the balance sheet (Cincinnati Financial files none in the balance sheet itself), is accepted and the card names its date. Either is said in the reason line. The price is the return on equity it already requires, from the price-to-book identity at a 10% discount rate. Growth is held at 6% so that identity stays defined. A price under 0.8 times book while return on equity is below 10% is a writedown, not a bargain, and cannot read as a cheap price.
  • Insurance underwriters (rules insurer-v4): the same book reading, on common equity and the newest book value on file, with book value per share weighted ahead of return on equity, and filed revenue per dollar of equity in place of assets per dollar of equity. That revenue is premiums and investment income together. It is not a combined ratio.
  • Reported readings, not scored. A bank card also shows readings taken straight from the company's filings, beside the call and never part of it, and a property and casualty insurer's card shows its combined ratio the same way. The first is the efficiency ratio as filed: noninterest expense divided by net interest income plus noninterest income, for each of the last six fiscal years and the latest quarter. It is the ratio as the accounting statements give it, before any adjustment for one-time items, so it can differ by a point or two from the ratio a bank publishes itself, and two banks' ratios should be compared with that in mind. A lower figure means the bank spends less of each dollar of revenue running itself, and no threshold is applied. Each reading is frozen into the published row with the call, so the Decision Record shows the figures as they stood that day. A reading that cannot be read is listed as not shown, with the reason. Synchrony, for example, deducts retailer share arrangements from revenue in its own ratio, a line that is not among the standard filing lines, so a ratio from them would not match the company's.
  • Common equity tier 1 ratio is the second reading on a bank card: the capital behind the bank's loans and securities, set against its risk-weighted assets, as the bank itself reports it in its annual report. It is read from the report's own tagged capital table and only for the banks whose tables have been checked one by one: the holding company's figure (on the standardized approach where a bank files both approaches), never a subsidiary bank's and never a regulatory minimum. A figure is accepted only if its tagged entity and approach match the checked pattern exactly, so a look-alike from another entity or approach cannot be picked up, and each checked pattern passed a consistency test (common equity tier 1 does not exceed tier 1, which does not exceed total capital, and the risk-weighted assets implied by the two agree). It is dated: the annual report gives the last two year ends, and the newest quarterly report adds a later date for JPMorgan Chase, Wells Fargo, Goldman Sachs, Morgan Stanley, Schwab, Synchrony and Raymond James, which tag it in their quarterly reports. The other banks give their quarterly capital figures only as text or in a different layout, so their newest figure is the last year end and says so. Nothing is carried forward or estimated, and there is no threshold: the regulatory requirement differs bank by bank and changes by the year.
  • Net interest margin, as reported is the third reading on a bank card: what the bank earns on its loans and securities, less what it pays for its funding, as a share of the assets that earn it. It is the bank's own figure on the bank's own basis, not one rebuilt from the balance sheet, because banks do not measure it the same way: JPMorgan Chase reports a managed basis, fully taxable-equivalent, and a separate figure excluding its Markets business that the card does not use because it is a different measure; Bank of America reports a fully taxable-equivalent yield; Capital One, SoFi and Schwab report a margin on average interest-earning assets. The card names the basis. It is read from the text of the bank's latest annual report (the last three fiscal years) and its newest quarterly report (the quarter just ended), only for the five banks whose reports have been checked one by one: JPMorgan Chase, Bank of America, Capital One, SoFi and Schwab. A figure is shown only when the bank states it twice and the two agree, the table row and a sentence in the same report (for SoFi, the same row in two tables). If a report's layout changes so that this cannot be confirmed, the card says the margin is not shown, with the reason, rather than showing a number. There is no threshold: a margin describes how a bank earns, not how well, and banks that earn in different ways run very different margins, so compare a bank with its own history and with banks that earn the same way.
  • Combined ratio, as reported is the reading on a property and casualty insurer's card: the claims paid and set aside, plus the cost of writing and running the business, as a share of the premiums earned. Under 100 percent the insurer made an underwriting profit before investment income, and over 100 it lost money writing policies. It is the insurer's own figure, read from the text of its latest annual and quarterly reports for Travelers and Chubb, and it is shown only when the company's own components add up to it and the company states the figure a second time and the two agree: for Travelers its own headline sentence, for Chubb the row that closes its reconciliation table. The card prints the components of the latest year. Chubb's figure covers its property and casualty business only and excludes its life insurance, and the card says so, because a ratio rebuilt from consolidated totals would not match what the company reports. Other property and casualty insurers show the combined ratio as not read yet, because its wording has not been checked for them, and life and diversified insurers show none, because it is not their measure. A figure is never guessed.
  • Grades rate the business. The verdict prices it. The durability score, the income statement grade and the other readings on the card describe how good the business looks from its filings. The verdict is the one place the price enters: a strong business at a demanding price can still read hold, and a weak business at a low price is not made a buy by it. The line is printed under the verdict on the card and with every row of the Decision Record.
  • The return a bank or insurer call is built on is weighted toward the latest year (rules bank-v4 and insurer-v4). That is return on equity over the last three fiscal years on file: half the latest year, three tenths the year before and a fifth the oldest. With fewer than three years the weights are renormalized over the years there are and the card says so; with one year there is no average or direction and the card says that too. The Why section carries the line, for example: Return on equity: latest +5.7%, 3-year average +2.4%, weighted +4.0%, direction: improving. Direction is improving or deteriorating when the latest year is at least one percentage point (or five percent of the earlier years' mean, whichever is larger) away from the earlier years, otherwise flat. When the latest year and the three-year average are three points apart, or a quarter of the average if that is larger, the card says the call leans on the weighted figure. That one figure is what the score, the comparison with the return the price requires and the disconfirm conditions all read, so the card cannot score one number and print another. Before v4 a bank or insurer was read on the plain average, so a company that had just turned profitable after loss years read as a loss maker.
  • An operating company is still scored on its latest fiscal year's return on invested capital, as before v4. The card prints the average of the last three years and the direction beside it as a reading (Return on invested capital: latest +15.5%, 3-year average +2.8%, direction: improving. The call reads the latest year.) and never scores them. Weighting the earlier years into the operating score was built and measured on the S&P 500 and moved 23 verdicts, in both directions, with nothing to say which was right: it read a recovered return as its old self and a collapsed one as still healthy. A bank's old figure was a plain average, so weighting corrects it; an operating company's old figure was already the latest year, so it does not.
  • An input that looks wrong is checked before a call is issued. When the income statement grades B or better while that return is under 4 percent, the figure is not trusted yet. The latest year is recomputed from the company's own filed statements: net income over the average of the opening and closing equity for a bank or insurer, and the filed capital figures for an operating company. If the filing agrees (within one point, or three points for invested capital, whose capital definition differs between sources) the flag clears, the call proceeds and the card says it was checked. If it disagrees, the filed figure replaces the feed's and the card says it was corrected. If it cannot be checked, the card reads Input under review and abstains: no call is issued, nothing is written to the Decision Record, and any earlier published call is left as it was. A blank verdict there is this rule working, not a fault.
  • A call is not issued on stale filings. The card works out when the next quarterly or annual report was due, from the company's own fiscal calendar and filer status: a large accelerated filer has 40 days for a quarterly report and 60 for an annual report, an accelerated filer 40 and 75, any other filer 45 and 90. If that date plus a four day grace has passed and the newest filing the card read is still the earlier period, the card abstains in the same way and says why in words that are true: Data stale, awaiting the missing quarter's filing when the SEC's own record shows it has not been filed, Data stale, the filing is out but not yet in our data when it has been filed and our data has not caught up (most of the names flagged are this), and Data stale, the filing is not in our data when the SEC's record could not be read. Where the filer status is not on hand the longest deadlines are used, so a name is only called stale when it is stale under every status. Foreign companies that file annual reports only are not held to a quarterly schedule. Nothing already published is changed by this.
  • A quarter our data feed has not loaded yet is read from the SEC filing. The card's figures come from a financial data feed that can trail the SEC by weeks or months. When the SEC's own record shows a newer report than the feed has, the card reads the missing quarter (revenue, operating cash flow, capital spending, stock pay and the share count) straight from the filing, but only if the filing's figures for that company match the feed's on the earlier quarters both carry, within half a percent (two percent for the share count, which the two sources can date a few days apart). If any figure does not match, nothing is filled and the stale rule above applies as before. A filled quarter is named in the card's source line. Banks and insurers already read their own filings and are not filled this way.
  • Rules version 5 (operating companies). A High-conviction buy must show more than two good scores. It also needs a lasting return (return on invested capital with a median of at least 10% over the last three measured years and no year under 8%), debt the cash flow can carry (net debt of at most five years of free cash flow), and, for a cyclical company whose margins are in the peak zone of its own history, a High-conviction buy on its median margins too. A call that meets the scores but not these reads Buy, watch, and the card says which requirement it missed. Two inputs are also read more carefully: a one-off cash windfall (free cash flow over the last four quarters far above its usual share of revenue) is valued at the usual share on today's revenue, and revenue growth counts toward a cheaper reading only if revenue grew in at least two of the last three years, is not measured from a slump year (a year when revenue and profit margins both collapsed; a company that sold a business is not in a slump), and at most 25% a year. The card lists these under "How the figures were read". Brokers holding client cash and asset managers with an insurance business (Interactive Brokers, Robinhood, Apollo, KKR) get no call, because the free cash flow line does not describe them. Each rule was measured on the S&P 500 before it was adopted. A call published under version 4 stays on the record and is graded on its own; where version 5 reaches the same verdict, the call is re-issued under version 5 with the original kept.
  • Rules version 6 (operating companies). A jump in free cash flow is now told apart from a windfall by whether profit came with it. When operating margin rose by at least half as much as the cash margin, the cash is no more than about 1.1 times operating profit, and the company is not a cyclical business at the peak of its own history, the jump is read as the business improving and the price is read against today's cash flow. Cash that rises without profit (customers paying in advance, inventory being run down, a cut in capital spending) is still read at the usual share of revenue, as under version 5. Measured on the S&P 500, this changed two verdicts (Howmet and Hasbro, Hold to Buy, watch). Calls published under version 5 stay on the record and are graded on their own; where version 6 reaches the same verdict, the call is re-issued under version 6 with the original kept.
  • Cycle position. For a company in a cyclical industry (miners, oil and gas, chemicals and fertiliser, steel and metals, chip makers, solar, homebuilders and building products, autos, airlines and freight), the card shows where today's operating margin sits within the company's own filed years, up to fifteen, from its SEC filings: a bar from Trough to Peak with today's position marked, the margin and how many of those years it is at or above, the lowest, highest and median year, and a small chart of the years. Below a quarter of the years is the trough zone, above three quarters the peak zone. It also shows the verdict the card's own arithmetic gives if the company earned its median margins instead of the latest ones, the usual way to value a cyclical business: at a peak, trailing figures overstate what the business earns in an ordinary year; at a trough, they understate it. The median is used rather than the average so that one write-off year cannot drag it down. A buy verdict in the peak zone, or a weak verdict in the trough zone, is flagged in words. This is a reading of the company's own history, not a forecast, since a bottom or a top is only certain afterwards, and it never changes the verdict. It is not shown, with the reason, when the company has fewer than eight years of its own filings (a recent listing or spin-off), when its margins have not swung over those years, or when its filings do not use the standard labels for revenue and income. A company that files no operating income line is read on pretax income, and the card names which. Direction: an arrow shows which way the margin is moving: ▲ toward Peak or ▼ toward Trough when the trailing four quarters' margin moved a point or more over the last two quarters, Steady when it moved less. It is a near-term reading, and the card says how far it holds: measured over 101 S&P 500 cyclical companies' filings, a move like this continued over the next two quarters about 7 times in 10, and it said nothing about the following year, because cycles turn. Near a trough a fall continued only about 6 times in 10, and the card says so when that applies. A fund's arrow is its holdings' margin changes weighted by their share of the fund, and each holding's change is listed. A fund's card also draws a chart like a company's: the read holdings' yearly margins weighted by their share of the fund, by the calendar year each fiscal year ends in (a year is drawn only when holdings making up at least half of the read weight report it), with the median year dashed and today marked.
  • Funds. The Decision Card scores companies from their own filings. A fund (an exchange traded fund or a mutual fund) files no income statement or balance sheet of its own, so it is never scored: its card says so in those words, shows no "verdict last changed" date, and the chart shows no V for it. In place of a verdict a sector fund gets a Sector cycle position, read through its holdings: each of its top holdings is placed in its own cycle exactly as above, and the positions are averaged by each holding's share of the fund. Holdings outside a cyclical industry, or with too few filed years, are listed but not counted, and the card says what share of the fund the reading covers. A leveraged or inverse fund (for example a fund that aims for three times its index's daily move) carries a warning: it resets every day, so over months its result depends on the path prices take, and it can lose value in a choppy market even when its index ends flat. Such a fund holds most of its exposure through swaps on its index, so the stocks it lists directly are only a sample: where an ordinary fund tracks the same index (NAIL and ITB, TQQQ and QQQ, SOXL and SOXX, and others), the reading uses that fund's holdings and names it. The section loads a moment after the card; if the holdings cannot be read just then it says so and tries again by itself.
  • V markers on the price chart. Wherever a symbol's Decision Card verdict changed over the past year, a V in the verdict's colour sits above the price on that day: green High-conviction buy, yellow Buy, watch, white Hold, no edge, red Sell, exit, grey Insufficient evidence. The first V on the chart is the verdict the year starts with. Calls from the Decision Record are a heavy V. Before the first published call the record has nothing to show, so those changes are reconstructed and drawn as a thinner V: today's rules re-run on each trading day, using only the filings that were public by then (a quarter counts from 45 days after it ends and a fiscal year from 90 days, the latest the rules allow, or from the day the newest report was actually filed with the SEC when that is sooner, so no figure is used before it existed and the last V matches today's card) and that day's closing price. A reconstructed change counts once the new verdict has held three trading days, so a score sitting on the edge between two verdicts does not scatter markers. Reconstructed points are never written to the Decision Record, which is not backfilled. Their limits: the figures are today's copy, so a later restatement is read back into earlier days, and the second-source input check is not re-run. Hover a V to see which kind it is. The card's Verdict last changed line is the date of the last V on the chart, read from the same list, so the two always agree (when that list takes a moment to work out, the line fills in a few seconds after the card opens); for a symbol with no published call (one outside the S&P 500) the date comes from the reconstruction and the line says so. The markers are permanent: once a change has been worked out it is kept and stays on the chart for good, and new changes are added as they happen, a newly published call from the Decision Record appearing the next time the chart is opened. Markers show on daily, weekly and monthly charts, not on intraday ones, and not in Compare mode. Banks and insurers show published calls only, and a stock split inside the year starts the reconstruction after the split.
  • Data: filings through is the third line under the verdict date and the price date. It is the period end of the newest filing the call actually read (for example Q2 2026, June 30), not the day the data was fetched, and it is frozen with the call. For a company whose fiscal year does not end in December the quarter is named by its own fiscal calendar and the date is always printed beside the name.
  • Exactly one verdict. High durability at a price that does not already assume more than the filings is the only high-conviction buy. A weak business whose price still assumes a lot is the only sell. Everything else is hold or buy-and-watch. Property trusts, insurance brokers, a filing that is missing a required figure, a missing price, a missing filed share count, and negative free cash flow on an operating company all read insufficient evidence. bank-v4 and insurer-v4 are separate standards: they do not amend an operating-company call.
  • Missed gate. When the call is one notch below High-conviction buy (Buy, watch), the card names the single missed gate and the score against its cutoff: demandingness below 40 (low), or durability of 70 or above (high). The same pattern applies when Hold, no edge is one notch from Sell, exit (demandingness of 65 or above, or durability below 45).
  • Why cites the filed figures and capital-compounding readings that drove the call (return on invested capital, owner free cash flow per share, the growth the price implies against revenue on file), not generic band language. Prefer two real reasons over a manufactured third; a third line appears only when it adds a distinct company-specific input.
  • Must remain true and Would disconfirm are the same facts, stated both ways. Each line is an input crossing: a named metric against a stated threshold (for example return on invested capital falling below the 10% cost of capital, or owner free cash flow per share turning negative). Composite scores moving between bands are never the alert. If a threshold is already crossed on the latest filings (return on invested capital already below the hurdle, or owner free cash flow per share already negative), the card flags it under Already broken at build time rather than leaving a silent true condition. Already-broken watch conditions are alerts: they do not by themselves change the published verdict. Buy and watch with an already-broken watch condition stays buy and watch; the flag sits beside the call so it cannot be read as voiding it.
  • Call weakening is a boxed notice on the card, and a tag beside the call on the Decision Record and in the Add · Hold · Sell · Review lists. When two or more of a call's own disconfirm conditions are already broken on the latest filings (the count is a single setting, now two: at one the notice would have shown on nearly half of all calls), the card says how many of its conditions are broken and which. A single broken condition is still listed under Already broken, as before. It never changes the verdict, a score or the list a holding sits in: the rule that an already-broken condition does not by itself change the published verdict stands. It exists because an already-broken condition used to be one line further down the card, easy to read past. It appears only on a call written under v4 or later: a call published earlier is shown as it was.
  • Debt is stated on every card with a call: how many years of free cash flow it would take to repay net debt, and how many times operating profit covers the interest paid. When net debt is more than 10 years of free cash flow and interest is covered less than 3 times, the card shows a boxed Heavy debt notice: a downturn or higher rates would press on that company first. Like call weakening, it never changes the verdict or a score; it is there so a Buy, watch or Hold on a heavily borrowed company says so. (A High-conviction buy already needs net debt of at most 5 years of free cash flow.) Where the filings feed carries no interest figure, the card says coverage is not shown rather than guessing. Banks and insurers are not given this reading: borrowing is their business, and their standard reads leverage as assets per dollar of equity.
  • Share count is the filed outstanding ordinary shares. A quote-path figure that differs by more than 2% is reported; it is never averaged in.
  • No Graham or generic discounted-cash-flow intrinsic for banks and insurers on the analysis page. The Decision Card now scores those names on equity, and the Insight Intrinsic Value box and the forward DCF model still refuse them, so the page cannot show an "undervalued" cash-flow number beside a card that is not a cash-flow call.

The Decision Record

Each published call is frozen on that calendar day, with the share price and the S&P 500 (the SPY fund) that day, plus the rationale and the measured inputs. The weekday scan covers the S&P 500. A name that stays on the same call is one row, not one per session. A later change of call is a new day's row; the original is left as written. Opening a Decision Card from the chart is a live reading; opening a ticker from the Decision Record shows the published freeze. The public HTML page rebuilds after each journal write (a new freeze, an amendment, a supersede, or a graded close); it is not a once-an-hour snapshot that can lag the live Decision Record API.

Every call is listed. The public page lists every published call, 50 to a page, in two tables: open calls, newest first, and graded calls, newest graded first. Previous and Next sit above and below each table, each table says how many calls it holds and which it is showing, and the page says when the journal was read. A name appears more than once when a change of verdict left its earlier call open, because each of those is a call that was published. The Decision Record inside the workspace lists every call too, 50 at a time: each table says how many calls it holds and how many are shown, and a Load more button under it brings in the next 50 until all are there. For analysis, the JSON feed at /api/decision-record returns every call a page at a time. It can be filtered by rules version, verdict, durability, demandingness or symbol (up to 50 symbols at a time, for example tickers=VRSK,GL, every call on each of those names), and ranked by either score, and each entry carries the verdict, both scores, the frozen share price, the frozen S&P 500 entry and the rules version the call was written under. Rules versions are not scored on the same footing, so restrict the feed to the version you mean to compare.

How a call is graded

Verdicts are made from business durability, what the price already expects, and measurable disconfirming conditions. Grading comes later.

  • Grading is relative to the S&P 500: the frozen share price on the row versus the frozen S&P 500 (SPY) entry already on that row, never today's prices or an absolute return alone.
  • A high-conviction buy or a buy-and-watch is a hit if the stock beat the S&P 500 over twelve months.
  • A sell is a hit if the stock lagged the S&P 500 over twelve months.
  • Hold is a written abstention from grading: it counts toward coverage of the S&P 500 and is never a hit or a miss.
  • Coverage is unique written names divided by the S&P 500 universe. A refusal is not written, so it does not count. A bank, lender or underwriter that receives a real call does count. Property trusts stay refused.
  • Returns are price only. Dividends are left out of both the stock and the S&P 500.
  • Each frozen row shows its rationale, the input snapshot at freeze time, an honest price-as-of label (a weekend or holiday publication dates the price to the last NYSE session, never the calendar day of publication), and the frozen S&P 500 entry price, so relative performance can be audited.
  • Rationale amendments: when the wording of reasons or disconfirmers is upgraded, a new freeze is written that preserves the original rationale and shows the amended text separately with a dated stamp and rules version. The prior open freeze is superseded so it does not count again in the track record. If the original freeze cannot be recovered from the journal, the record says so rather than claiming the text was never rewritten. The amended rationale uses the same reason list as the live card for that rules version. The preserved original is labelled with its rules version (for example "at freeze, v1"), never left as an unlabeled generic block.
  • Rules versions: frozen originals are never rewritten. A rules bump that leaves a call's verdict unchanged amends it; one that changes the verdict writes a new dated call and leaves the earlier call exactly as published, graded on its own. v1 used generic band-language rationale, with no already-broken flags and calendar-day price labels. v2 switched to concrete Why citing filed figures, already-broken watch conditions, and NYSE session-close price labels. v3 is the live operating-company standard: the public rationale matches the live two-reason preference (a third line only when it adds a distinct company input). bank-v3 and insurer-v3 are parallel standards for banks and lenders, and for insurance underwriters. They do not amend a v3 call. v4, bank-v4 and insurer-v4 are the live standards. What changed from v3: a bank's or insurer's return on equity is weighted toward the latest filed year (an operating company is still scored on its latest year, with the average and direction shown as a reading); an input that looks wrong beside the income statement is checked against the filings before a call is issued; a call is not issued on stale filings; the card states the period its filings run through; the scores legend is printed; a call with two or more of its own conditions already broken shows call weakening; and the bank and insurer book value can use a June 30 balance sheet whose preferred stock amount is carried forward (share count unchanged) or whose share count is the report cover's. Why: a company that had just turned profitable read on an average that was mostly its loss years, a single bad feed figure could decide a call with nothing to catch it, a call could be issued on data a quarter old with no sign of it, and Bank of America and Cincinnati Financial were priced on a March 31 balance sheet with June 30 filed.
  • Why prefers two real reasons over a manufactured third. A third line appears only when it adds a distinct company-specific input not already stated.
  • Already broken at freeze on a public row states the same alert rule as the live card: the flag does not by itself change the published verdict.
  • A hit rate is shown only after thirty directional calls have been graded over a full twelve-month horizon. Until then the dated list is the record, not a summary.
  • Nothing is written back into an old call. A missed weekday shortens the record rather than filling it in later. Opening a Decision Card never publishes; only the weekday scan writes.

When it shows no call, and why. Two guards added in v4 also read insufficient evidence: an input under review that could not be checked against the filings, and filings gone stale (both above). A property trust's book is depreciated, so the card abstains. An insurance broker is not an underwriter, and the card does not put that broker on the operating-company cash-flow standard either. A filing that lacks a required figure is refused rather than guessed. A quarterly statement that does not answer does not withhold the card when the annual filings are on hand, because the call is scored on those annual figures. The card still retries, and does not guess, when an annual statement failed or when the company's industry could not be read, which is what keeps a bank or a property trust off the operating-company standard. When the quote feed has no industry and the SEC filing record shows a sector that is not financial and not real estate, that sector is used so the card can be read. A fetch that fails is a retry, and it is not written as insufficient evidence. A bank or underwriter with fewer than two years of positive equity and a share count also abstains, and the reason says so. So does one whose price reads as an implausible multiple of its filed book value per share: that happens when the filed share count belongs to a different share class than the price. Berkshire Hathaway files its count in Class A equivalents while its Class B shares trade at a small fraction of a Class A share, which reads about 0.001 times book, so the card shows no call rather than a number. A symbol the S&P 500 list does not carry can still show a card in the workspace, but it is not written to the public record. If the journal table has not been created, the public page says so rather than showing an empty table as if it were a poor record.

Opening and loading. The card reads the filings when it opens, which can take up to twenty seconds for a symbol nobody has opened lately; it says Loading the Decision Card for the symbol until the call arrives, and if it cannot be read it says so with a Retry button rather than showing an empty card. Tick Open Decision Card for this symbol automatically when analyzed to have that symbol's card open by itself when you analyze it; the choice is remembered in that browser. The Decision Card button keeps its place: the boxes listing your positions in the symbol sit below the three buttons, so they cannot push it down as they arrive.

Portfolio list. In the list of the active portfolio, a stock whose published call is High-conviction buy has a green background, and a stock whose published call is Sell, exit has a red background. Nothing else is written on the row. See Portfolios.

Trend marker and last changed. When the return the call reads (return on equity for a bank or insurer, return on invested capital otherwise) has been falling over the filed years, a small Trend falling marker sits beside the verdict with the latest year against the average. It is a reading only: it does not change the verdict or any score, and the call changes only through the conditions listed under Would disconfirm. Verdict last changed is the date of the last V on the chart: the published call when there is one, otherwise the reconstruction, and the line says which. Every card shows it; when the live reading differs, the line says so.

Peers. Under the card, up to six other names in the same industry that have a call on the Decision Record, each as its newest published card stands: verdict, durability, demandingness, return on equity and price to book, with the stock you are reading highlighted. Sorted by durability, then by the less demanding price. Return on equity and price to book are on a card only when it is judged on book value (banks and insurers), so for other companies those cells are empty. Nothing is fetched to build it. With fewer than three peers on the record the section is hidden rather than showing a comparison too thin to mean anything.

Distribution Yield

The TTM distribution yield (trailing twelve month distribution yield) is the one yield the whole site uses. It is on the Fundamentals dividend card, in the Compare table, in the Monitor's TTM Distribution Yield column, and behind the income figures in Portfolio Analytics. They all read the same result, so one holding cannot show two different yields in two places.

What it measures

Add up every cash distribution per share whose ex-dividend date falls in the last twelve calendar months, then divide by the share price. The window starts the day after the same date a year earlier and ends on the day of the price. For twelve monthly distributions of 0.30 and a price of 72, that is 3.60 divided by 72, exactly 5.00%.

  • Ex-dividend dates, not payment dates. The date is read in the security's own market time, so a distribution is never counted a day early or late because of the time zone you are in.
  • Per current share. The amounts are adjusted for stock splits, and the price is the unadjusted market price, so the two are on the same footing. If the amounts look unadjusted after a split, no yield is shown.
  • Every cash component of a fund. A fund's capital gain distributions are included, and shown apart from its ordinary dividends in the hover text. They are parts of the total, never added on top of it. The data sources report most funds' distributions as one cash total, and then the hover text says the split into income, capital gains and return of capital is unavailable. A return of capital is not earned income.
  • A special or unscheduled distribution is counted once. It is identified from the dates and sizes (the sources do not label it), named in the hover text, and left out of the forward yield below.
  • A distribution announced for a future ex-date is not counted. Only ex-dates up to the date of the price are.

It is a historical measure: what the share paid out over the last year at today's price. It is not a forecast, not cash received on payment dates, and not a promise of future income. A distribution with an ex-date today may not be posted by the data provider until later, and the card says so when the provider's own summary names a date the history does not have yet.

Three other yields, kept apart

  • Forward yield is the latest regular payment multiplied by the payments a year, over the price (0.312 a month is 3.744 a year). It is shown only for an established regular schedule inferred from the dates, and never from a special or capital gain distribution. It differs from the trailing yield whenever payments have changed.
  • 30-day SEC yield (the Securities and Exchange Commission standardized yield) is the fund issuer's own figure, net of expenses. No free data source we use publishes it, so it reads Unavailable. It is never calculated from distribution history, because a figure built that way would not be the issuer's number. When a source does state it, a negative value is shown as it is.
  • Reported yield appears only for a money market fund, which accrues income daily and has no per share payments. It is the number the data provider reports, and the provider does not say whether it is the seven day yield or an annualised rate.

One is never put in the place of another. If the trailing yield cannot be shown, the forward yield is not offered as a substitute. Measures a bond fund publishes, such as yield to maturity and yield to worst, are not shown at all: no free data source we use carries them, and none is worked out from the distributions. A fund that accumulates its income pays nothing out, so a confirmed 0.00% for it says nothing about the income its holdings earn, and that portfolio income is never shown in its place.

Why a yield is sometimes missing, and what it says

A yield built from a history that is missing a payment would look right and be wrong, so a number appears only when the history has been checked. When it has not, the row reads Unavailable with a short reason, and the hover text gives the full one.

  • History incomplete. The distribution dates have a gap that does not fit their own schedule (for example, a monthly payer with six months missing), or the data stops short of the window. Whether a payment really was skipped is checked in a second source and by a second look at the first, a limited number of times. A pause the sources agree on is real, and so is one where the data provider's own summary total matches the payments found to within half of the smallest payment (a missing payment would put the two a whole payment apart). The yield then counts what was actually paid. Where they differ, nothing is shown. Some large companies' payment history at the provider really does lack payments, and the yield then reads Unavailable until the gap is filled.
  • Cannot be verified. The schedule cannot be established (an irregular payer, or too few payments), the provider names an ex-dividend date the history lacks, a stock split's adjustment could not be confirmed, or a price is quoted in a fraction of a currency unit. Some foreign companies listed as American depositary receipts land here, because the data omits their payments.
  • No price, or a currency that does not match. No conversion is guessed.
  • Stale. The number is kept, in amber, when the price or the stored history is old, with the reason. An ex-date that was announced but is not yet in the history reads Latest distribution not posted yet.

A 0.00% appears only when the whole twelve months were covered, no cash distribution was found, and a second signal agreed (the provider's own summary also shows none). Otherwise a blank history reads Unavailable, never zero. A listing younger than twelve months shows Distribution yield since inception, which is the payout so far over the price and is not annualised, and is not ranked with the trailing figures. A recent listing with no distribution yet reads Unavailable, because a zero cannot be confirmed.

Where the numbers come from

The dated distributions come from the Yahoo Finance chart, one request that returns every event in the window. Where that history looks incomplete, a second free source (the Alpha Vantage dividend list, for securities priced in US dollars) is asked, but its payments are added only after its amounts are shown to match the first source’s on the payments they share, because that list does not state its currency or whether amounts are adjusted for splits. Where a stock split comes between a payment and today, that list's amount is also compared after dividing it by the split the first source reports, and the converted amounts are used only if every shared payment then matches. The data provider's own pre-computed yield and annual rate fields are not used: they have no stated definition and were measured to disagree with the same provider's dated payments (for one bond fund, 2.15 a year against 3.89, which put the screen at 2.78% where the issuer reported about 5%). They are kept for audit only. The hover text shows the window, the price and its date, the source, and how old the history was when it was calculated.

A calendar window counts every ex-date inside it, and a payment's ex-date moves by a day or two from year to year. When last year's ex-date sits a day inside the window start, the window briefly holds one more regular payment than a year of the schedule. When it went ex exactly a year ago it has just left the window and this year's is not in yet, so the window briefly holds one fewer, and the figure reads low for a few days. The hover text says which, and the forward yield beside it is the run rate.

Where it is used

  • Portfolio Analytics, Annual Div: each holding's trailing twelve month distributions per share times the shares held. A holding whose history could not be established is named in a note and left out of the total, never estimated and never counted as zero.
  • Monitor: the column sorts by exactly the figure it shows. Unavailable sorts last.
  • Compare: two rows, the yield and the distributions per share behind it.

Index levels, futures, currencies and cryptocurrencies have no per share cash distribution, so no yield is shown for them.

Valuation Drivers

Click the P/B Ratio metric card in the Fundamentals panel to open Valuation Drivers. A price to book number on its own tells you a company re-rated; it does not tell you whether the price ran or the book value behind it went backwards, and those are two very different businesses to own. This chart separates them.

Three lines, all set to 100 at the base quarter so their relative moves sit on one scale. The base is named under the chart and you can change it, because the same company tells a different story measured from a different starting quarter.

  • Blue: share price. What the market pays for one share. This is the line most people watch, and on its own it says nothing about value.
  • Green: book value per share. The company's net assets, what it owns less what it owes, divided by the shares outstanding. This is the equity actually accumulating behind each share. It grows when the company earns and retains, and it shrinks when the company loses money or issues shares.
  • Purple: price to book. Blue divided by green. It is an identity, not a separate measurement, which is why the three lines can never contradict each other. When purple rises it is only ever because blue outran green.

The best case, and what it looks like

The constructive arrangement for someone buying or holding is green on top, blue in the middle, purple at the bottom: the business is building equity faster than the market is bidding the shares up, so each dollar invested buys more of the company than it did at the base quarter.

Best case arrangement of the three Valuation Drivers lines Book value per share in green rises fastest and finishes on top. Share price in blue rises less and finishes in the middle. Price to book in purple falls below the starting level and finishes at the bottom. Base quarter = 100 base latest Book value per share 235 · TOP Share price 175 · MIDDLE Price to book 74 · BOTTOM
All three start together at 100. Purple is blue divided by green, so 175 over 235 is 74: the shares are a quarter cheaper against book value than they were at the base quarter, even though the price itself is up 75 percent.

What each position is telling you

  • Green on top is the engine. Book value per share compounding means retained earnings are landing on the balance sheet and are not being given away through share issuance. A company can raise its share price with a story; it cannot raise book value per share without actually earning money and keeping it.
  • Blue in the middle means you are being paid, but the market has not run ahead of the business. Your return is coming from what the company built rather than from other buyers agreeing to pay a higher multiple.
  • Purple at the bottom is the consequence of the first two. A falling price to book means each share now carries more net assets per dollar of price than at the base. If the business keeps compounding, this is the arrangement that pays twice: once from the equity that accumulates and again if the multiple ever returns to where it started.

The arrangement to be wary of

Turn the picture upside down and you have purple on top, blue above green: the price ran far ahead of the book value behind it, and the whole move came from the market agreeing to pay a higher multiple. That is a re-rating. It is not automatically wrong, and fast-growing companies re-rate for good reasons, but it is a different kind of return from the one above, because a multiple that expanded can contract. When the chart looks like this, the rest of the platform is where the question gets answered: the operating strip under the chart, the Income Statement tab, and the Pricing Power and Q readings.

The flattest warning sign is green falling. Book value per share going down while the price holds up means the equity behind each share is shrinking, through losses or through issuing new shares, and the price to book line will be rising for the worst of reasons.

The strip underneath

Below the chart the panel prints the latest quarter in raw numbers rather than indexed ones: price to book, share price and book value per share, then the operating context the ratio sits in: revenue growth, free cash flow margin, net cash and share count. Read them together with the lines. Green rising alongside positive free cash flow and a falling share count is equity being built and concentrated; green rising while the share count climbs is a company growing its book by selling more of itself.

The grade

At the end of the strip sits a valuation grade from 1 to 100, one reading for the three lines together. It is built from three components: how fast book value per share is compounding, how dear the shares are against book right now, and how much of the move since the base was a re-rating rather than the business. A hundred is the arrangement described above: equity compounding faster than the price being paid for it.

The weights change with the business type, and that is the point. Book value is the valuation anchor for a bank, where the figure is close to what the assets would actually fetch, so the level of the multiple carries the most weight there. For a software or brand company the worth sits off the balance sheet entirely, so the level counts for very little and what matters is whether equity per share is genuinely compounding. An asset-heavy industrial sits between the two. A property trust is not graded at all, because depreciated book value understates its buildings and the ratio stops describing anything.

Two situations cap the grade rather than merely lowering it: book value per share shrinking caps it at 55, and a share count growing more than five percent a year caps it at 70, because book value that was bought by issuing more shares is not the same as book value that was earned. Any cap that applies is printed under the strip rather than applied silently. Hover the grade to see each component's own score and the weight it carried.

The weights are stated priors, not a fitted model. They were chosen by reasoning about what book value means in each kind of business, not trained on historical returns, and the grade is not a rating, a recommendation or a price target.

Where it does not apply:
Book value is a meaningful anchor for banks, insurers and asset-heavy companies, and a poor one for asset-light businesses whose worth sits in brands, software and people. A company that buys back a lot of stock can shrink its own book value per share while getting stronger, which sends this chart the wrong way for the right reason. Where book value per share is negative there is no meaningful price to book at all, and the panel says so instead of drawing a line. Exchange traded funds have no book value and are refused outright.
How to use it:
Start with the purple line. If it is roughly flat, the price has simply tracked the value behind it and there is no re-rating to explain. If it has moved, look at which of the other two caused it: green moving is the business, blue moving is the market. Then change the base quarter to a date you care about, such as when you bought, and read the same three lines from there.

Short Interest

The Short Interest card in the Fundamentals panel shows the latest reading of how many shares are still borrowed and sold. Hover or click it to open a five-year history over the news card, the same popup the other metric chips use.

The card itself prints percent of the free float where the float is known, because twelve percent of the shares available to trade being short means something a raw share count does not. Where the float is not published, the card shows the share count instead and says so underneath, which is what an exchange traded fund such as SPY does. The line under the number is days to cover: how many days of that name's own average volume it would take to buy back every share currently held short.

A reading of five percent of the float or more tints the number amber; fifteen percent or more uses the stronger amber. Amber rather than green or red, because a short position is a direction of positioning, not a gain or a loss.

The two lines

The history is two series on two scales, and the pair is the point. Neither line answers the question on its own.

  • Amber: shares held short. The position, counted twice a month. Rising means more shares have been borrowed and sold than were bought back; falling means shorts are covering.
  • Dashed blue: share price. The closing price on or before each settlement date, so the two series share a time axis even though one is daily and the other is twice a month.

A short position building while the price climbs is a different picture from one being covered into a rally.

Two ways the short interest and share price lines can move together Left panel: shares held short in amber and share price in dashed blue both rise, a short position building into a rally. Right panel: share price rises while shares held short fall, shorts covering into a rally. Building into a rally older latest Shares short rising Price rising Covering into a rally older latest Shares short falling Price rising
The same rising price, two opposite short positions. On the left, more shares are being borrowed and sold into the advance. On the right, those shares are being bought back. The amber line is what tells them apart.

What this is, and what it is not

Short interest is the position, not the flow. It is the number of shares still borrowed and sold, counted twice a month. It is not short volume, which is the share of a single day's trades that were marked as shorts, most of it routine market-maker hedging. A stock can print half its volume short-marked while carrying almost no short interest. This chart is the first of those two measurements.

The reading is published twice a month and lands about eight business days after the settlement date it describes. That is why it lives in this popup and is not drawn on the main price chart: that axis is daily or intraday, and on an intraday view this series would be a flat line describing a fortnight that ended a week earlier.

Percent of the free float is given for the latest reading only. The float moves with buybacks, issuance and lockup expiries, and no free source carries its history, so dividing an old short position by today's float would draw a line describing nothing. The share count is the honest series over time.

The source is the Financial Industry Regulatory Authority's own consolidated short interest file, the same figures the market data vendors republish. A name with a long listing history carries roughly a hundred and twenty settlements over five years.

When the card is not there

A symbol that source does not cover loses the card entirely, the same way Pricing Power removes itself, rather than showing a hole. Indices have no short interest. A newly listed name with fewer than two published settlements is refused until there is enough history to draw. An unexplained blank is a fault; a missing card is a real answer.

How to use it:
Start with whether shorts are building or covering, then look at what the price did over the same settlements. Building into a falling price is the ordinary bearish case. Building into a rising price is a squeeze being loaded. Covering into a rally is the squeeze already underway, or shorts simply giving up. Days to cover says how long that covering would take at this name's own volume: a high number means the exit is slow even if everyone wanted out on the same day.

Value Graph

The Value Graph (the button above the chart) compares the share price with a fair value built from earnings per share and a multiple, over 3, 5, 10, or 15 years. Fair value is a model estimate, not a price target.

  • White line: the share price. Earlier points are the monthly close nearest each reported fiscal period. The last point, when it is dated as a day rather than a year, is the live quote. A year with no close is left blank, and the line does not bridge that gap.
  • Orange line: fair value. For a reported year that is the reported earnings per share for that fiscal period, times the fair multiple. The current point uses forward earnings per share for the next twelve months, times the same multiple. Today's earnings figure is not copied onto earlier years. The segment into the live date is dashed, and that point is a diamond, because the earnings figure changes there. A jump on that segment is a change of earnings.
  • Blue line: reported earnings per share times this stock's own normal multiple, the trimmed average of its reported period-end price to earnings ratios. The current point applies that same multiple to forward earnings per share, so the line reaches the live date along with the price and the fair value. The average itself uses only the reported years. Reported years stay dashed. The segment into the live date is dotted, and that point is a diamond, for the same change of earnings. The line is omitted when fewer than three reported years can support that average.
  • Green area: the region under the fair value line. A missing fair value is left blank rather than drawn as zero.
How to read it:
The valuation in the summary uses the current point only: share price divided by fair value, minus one. A positive gap reads as a percent overvalued. A negative gap reads as a percent undervalued, without a minus sign. A gap that rounds to 0.0% reads as fairly valued. Upside to fair value, when shown, is fair value divided by the share price, and it is a different figure from the undervalued percent. The last segment of fair value and of the normal multiple multiplies forward earnings per share, so those lines can jump at the live date even when the price does not. Fair value is dashed on that segment and the normal multiple is dotted, and both live points are diamonds. The price line stays solid.

A price to earnings ratio from another source, such as a trailing figure, is not the current price to earnings in this view. If forward earnings per share, the share price, or the fair multiple is missing, zero, or negative, the summary says price to earnings valuation is unavailable and does not substitute another earnings figure.

The fair multiple comes from the five-year earnings growth rate when that rate is on record, otherwise from growth in reported earnings per share over the window. It is at least 15. Earnings growth that is not on record leaves the fair value line off rather than assuming a growth rate.

Loading, and a reading from an earlier day. The graph draws on four sources: reported earnings and the growth rate, the monthly closes, forward earnings per share, and the live price. Each one is kept on its own. When one does not answer just now, the figures that depend on it read Loading while the page asks again by itself for about two and a half minutes, then Unavailable, and the sentence under the figures says which source is missing. Select the years again to try once more. When a source has answered before, its last reading is used and the same sentence gives that reading's date, for example forward earnings per share from the day before. Forward earnings per share are reused this way for up to seven days, the reported earnings and the monthly closes for up to forty-five. The share price is never reused: the current point always uses the live price, and without it the current point is left off.

News & SEC Filings

News Tab: Aggregates company-specific headlines from three sources: Finnhub, GNews, and TheNewsAPI. Updated every 15 minutes per ticker. Each article shows the source, the date and time it was published (in your own time zone, for example "October 22, 4:12 PM"; hover it for how long ago that was), and the headline. Every news item in the app and on the phone carries a date and time the same way: the market-moving banner, Social Arbitrage's recent news and the Market Briefing included. A briefing card written from several headlines has no single publication time, so it shows when the briefing was written ("Updated ..."). The market events marked on the chart are a fixed timeline of dates and show the date only. Click a headline for a short reading of that article. When the headline is the loaded company's own quarterly results, the reading is written from the company's earnings press release as filed with the SEC (revenue, earnings per share, margins, orders and backlog, guidance) together with the reported against expected figures in the results table, rather than from the publisher's short summary. The reading names the article and includes the stocks and facts the article states. A headline about specific stocks uses the names in the article, and the article can be opened from the reading. If the page cannot be read, the reading says which article could not be read.

What to watch for:

  • Earnings reports and guidance changes
  • Analyst upgrades or downgrades with new price targets
  • Product launches, partnerships, or regulatory approvals
  • Executive changes (especially CEO or CFO departures)
  • Legal or regulatory issues

SEC Tab: Shows the 20 most recent electronic filings submitted to the SEC by the company. Color-coded by filing type:

  • 10-K: Annual report. The most comprehensive disclosure a company makes. Read this to understand the business deeply.
  • 10-Q: Quarterly report. Three of these per year between 10-Ks. Shows quarterly financials and updates.
  • 8-K: Material event. Filed within 4 business days of any significant event: earnings, mergers, executive changes, legal settlements. High-priority reading.
  • 4: Insider transaction report. Filed when a corporate insider buys or sells shares. See the Insider section for more.

Notes

Under Key Levels on the main chart column, a Notes box lets you keep private text for your account: reminders, ideas, or anything else you want handy. The note is saved as you type, so a refresh keeps it. There is no separate save button.

  • One note for your account: the same text stays as you switch symbols. It is not tied to a ticker. Notes written beside a symbol before this change are copied into the box once, each under its symbol, when the account note is empty.
  • Syncs across devices when signed in: your note is stored with your account and appears on every browser you use while signed in. A reload or a site update does not clear it. The saved note becomes blank only when you delete the text yourself. Signed-out (guest) notes stay in that browser only.
  • Waits for your saved note: while your note is on its way the box is read only and says “Loading your notes…”, so nothing typed in that moment can replace it. A browser that already holds your note opens with it at once. If the note cannot be loaded the box stays locked with a message instead of letting you type over a note you cannot see; reload to try again.
  • Earlier versions: each time a save deletes the note, cuts it to under half its length, or changes it after ten quiet minutes, the text it replaced is kept (the sixty most recent). An Earlier versions link under the box lists them with their time, size and first words, and Restore puts one back. The text a restore replaces is kept too, so a restore can be undone. Your browser also keeps, on that device, the text that another copy replaced: when a note from another device arrives, when another device deletes it, or when you delete it here (the eight most recent, listed as “kept on this device”). The link shows whenever there is something to bring back. Ordinary typing is not recorded one keystroke at a time, so a version is the note as it stood before a larger change.
  • Private to you: not shared publicly, not visible to administrators, and never sent into AI analysis. A browser copy is kept as a cache so the field still works if the network blips; the next successful load reconciles with the account copy.
  • If two devices edit at once: the later edit wins (by the time it was saved). The other device picks up that version on its next load or save.
  • Last edited: when a note has been saved, the box shows the most recent edit time in Eastern Time.
How to use it:
Use it for personal reminders or scratch notes while you research. An empty box is the normal starting state: there is no sample text.

Insider Transactions

The Insider tab shows recent buy and sell activity by company executives, directors, and major shareholders: people who know the business better than anyone.

  • Insider buying: Executives buy stock for one reason: they believe the stock will go up. Cluster buying (multiple insiders buying near the same time) is a particularly strong signal.
  • Insider selling: Has many possible explanations: diversification, tax planning, personal expenses. Selling alone is not necessarily bearish unless it's heavy and clustered.
Example:
Three separate directors purchase shares within 30 days at prices between 142 and 148. The stock is currently at 151. This cluster of insider buying suggests insiders believe 140–150 is a strong value level and that the company's prospects are positive.

The Top Insider Buy/Sell Ratio row at the bottom of the page ranks stocks across the market by the ratio of insider purchases to sales: the higher the ratio, the more insiders are buying relative to selling.

Market Scanner

The Market Scanner is the left panel. When no portfolio is active, it shows your recent search history, stocks you've analyzed, with live prices updating every 5 minutes.

  • Keeps up to 20 recently searched tickers
  • Always includes four pinned defaults at the bottom: MSFT, TSLA, NVDA, AAPL
  • Shows: current price, day high/low, dollar change, and percent change
  • Click any row to load that stock instantly
  • Hover a row to reveal the ✕ (remove from history) button
Tip:
Use the scanner to monitor a short list of setups you're watching. If you analyzed AMD, NVDA, and MSFT earlier in the day, they stay visible so you can see at a glance which one is moving most.

Search history persists in your browser's local storage: it survives page refreshes but resets if you clear your browser data. For a persistent, named list, use a Portfolio.

Portfolio X-Ray

Open it from Portfolio Analytics › Portfolio X-Ray. It describes what bet your portfolio is actually running and which holdings would hurt most in a known stress. It is descriptive only: it gives no trade signal, and it does not say whether you will beat the S&P 500, the same restraint the Decision Record shows by hiding its hit rate until enough calls are graded.

What is in it. Stocks and funds only. Options, cash and sweep balances, bonds and anything that could not be priced are left out and listed. Every figure uses today's weights held constant over the window, so it describes how this book would have behaved, not what you actually earned. Hover the ⓘ beside any number for its window, method and date.

  • Effective bets: how many equally sized bets your risk is really spread across, counted two ways, plus the number of independent drivers behind the book. 40 holdings that all move together can be fewer than five bets. Concentration sets the five largest positions' share of variance beside their share of capital.
  • Risk concentration: each position's share of capital next to its share of the book's variance. A negative share (purple) means that position offsets risk held elsewhere, such as an inverse fund against a stock book.
  • Factor tilts: how the book leans against the market, growth versus value, size, momentum, quality and the 10-year yield, from a regression of the book's daily return over 252 trading days with a 63-day reading beside it. Each beta shows its window (n = 252 days, ending the date) and a short-window tag under 200 days. Market, growth, size, momentum and quality are betas to the factor; rates is the percent move in the book per 1 percentage point change in the 10-year yield, or "No measurable rate sensitivity (t = -0.8)" when it cannot be told from noise. The shaded band is neutral. A tilt whose statistic is too small to tell from zero is greyed and labelled "Not significant" (hover for the full wording) rather than shown as a verdict. Factors are measured with exchange-traded fund proxies, so every estimate carries error.
  • Sector gap: your sector weights against the S&P 500's, over the part of the book that has a single sector. Funds with no single sector (labelled "Funds (no look-through)"), credit funds and unclassified names are shown apart, with their share of capital, and a line says what share of the book the gap is based on. If the index weights cannot be read, the book's own mix is still shown with the reason. Funds with no single sector, and credit funds, are shown apart and not called over or underweight. Where a sector is known for under half the book the panel says so.
  • Selloff behavior: how strongly your holdings move together on the worst 15% of SPY days over the last 252 (about 38 days) against all other days, among the names with a return on at least 60% of those days. A plain line always says what it found: "Names moved together more in selloffs (0.52 vs 0.31)" or "No meaningful convergence in this window (0.12 vs 0.17)"; a gap under 0.05 is no convergence. Conditioning on the worst market days narrows the shared market move, so a steady relationship reads lower in a selloff, never higher: only a real rise shows. With 10 to 19 stress days the numbers are shown greyed with "Only N stress days in this window"; under 10 it says "Not enough stress days to say".
  • Regime read: four axes, each with a backdrop side and a book side: risk appetite (SPY against its 200-day average, against the book's market beta and growth tilt), rates (the 10-year's three-month change and the 2s10s spread, against the book's rate sensitivity), credit and liquidity (credit funds and funds that behave differently, against the shape of the curve) and sector leadership (sectors leading on relative strength against where the book is overweight; ETF fund flows appear only as a labelled secondary note). Each axis reads aligned, misaligned, neutral or unavailable. The verdict is taken from every axis that has data and says how many that was: Aligned (3 of 4 axes), Mixed, Misaligned, and with only one axis Partial read (1 of 4 axes), never a bare "Aligned". The axis that disagrees is named, for example "Rates: book is sensitive to falling yields; the 10-year is up 0.75 pp in 3 months". A small line lists any axis that is unavailable and why. A mismatch indicator from stated rules, not a forecast and not a signal.
  • Scenario replay: press a button (COVID crash, the 2022 rate shock, 2018 Q4, the 2008 crisis) or enter your own window of up to ten years. Each holding's actual adjusted-close return is multiplied by today's weight, showing every name's contribution in percentage points, SPY, QQQ and IWM over the same window, and which names account for the loss. The figures run when you press, not when the section opens.

Why some things are blank. The book return is built each day from the names that have a return that day, with weights restated over them, so a recent listing never shortens the window for anything else. A holding with 60 to 119 days stays in the book return and the tilts but is left out of the variance matrix; under 60 days it is left out of both. They are listed with their weight, and the variance figures say what share of capital they cover. Under half coverage a scenario leads with a caution and the figure if the uncovered names had moved with SPY. In a scenario, a holding that did not exist for the whole window is not assumed flat and not assumed to track the market: the headline states what share of the book it covers, the names without data are listed, and the "if they had moved with SPY" figure is labelled as an assumption. Funds that behave differently from their label (inverse, leveraged and option-income funds) stay in the concentration and scenario figures but are left out of the factor tilts, where their betas are unstable. With fewer than two positions there is nothing to analyse.

Where sectors come from. A few companies whose sector the sources disagree on are pinned (IREN is read as Technology: it moved from finance to AI computing). When the quote source returns a company's sector, that is used. When it does not, the sector is read from the company's own filing record at the Securities and Exchange Commission, which classifies every operating company by an industry code. That code is an approximation of the sector labels the market uses: roughly 85 to 90 percent of companies land in the same sector, and the misses are things like instrument makers filed as industrial companies or cruise lines filed as shipping. Wherever a sector came from the filing record, the Sector Gap panel and the portfolio donut say how many did. Funds and trusts have no company record and stay in Diversified, Fixed Income or Multi-sector, never given a guessed sector.

Options change the real risk of a book (a short put adds assignment risk, a covered call caps the upside) and are not included, so a persistent note says so whenever you hold any. The 10-year yield history comes from Treasury.gov and can take a few seconds the first time each day; if it is late the rates axis is left out and fills in on its own. Price history for the book is kept in memory. After a site update the first open fetches it again, so a large book takes longer that once.

Portfolios

Portfolios let you track named groups of stocks separately from your recent search history. When a portfolio is active, the scanner shows only that portfolio's tickers. Up to 10 portfolios, each with up to 500 symbols. If you add a symbol when the list is full, rows without a share quantity are removed first to make room. If all 500 rows have share quantities, create another portfolio.

Creating a portfolio:

  • Click the dropdown arrow next to PORTFOLIOS
  • Select + New Portfolio and give it a name (e.g. "Tech Plays", "Earnings Watch")
  • Analyze a symbol, then press + Add shares and enter the shares (and, if you like, the cost) to add it to the active portfolio

Analyzing a symbol never adds it to a portfolio. It goes to your recent searches. While a portfolio is active, the symbol on screen appears below the holdings under Viewing, not in this portfolio, with an + Add shares button; it is not stored and not counted. A row exists only once you enter shares (or record a trade). A stock row with no shares and no trade record, left by an earlier version, is removed automatically. Shares typed without a cost are kept.

Decision Card on the row. A stock holding is tinted from its published Decision Card. High-conviction buy is a green background. Sell, exit is a red background. Buy and watch, hold, and a name with no published call stay the ordinary background. Options, cash, and the symbol under Viewing, not in this portfolio are never tinted. Opening the live Decision Card for a holding updates that one box for the rest of the visit, so the list matches the card on screen. A plain box is the ordinary case: most holdings are not a high-conviction buy or a sell.

The symbol's colour. Each stock holding's symbol is also coloured by its Decision Card verdict, the same scheme as the mobile app's Monitor: green for High-conviction buy, yellow for Buy, watch, white for Hold, no edge, red for Sell, exit, and grey for Insufficient evidence. Blue means the verdict has not been worked out yet; the list checks again by itself every few seconds while any are missing. Hover a symbol for its verdict; a grey one also says what it is instead (a fund's distribution yield, or a company's Q score and cash runway). The colour comes from the live Decision Card, the one you see when you open it, while the background above comes from the published record, so on the rare day the two differ the colour shows today's reading.

Removing a row is permanent. The removal is remembered, so a phone or another browser that still holds the old row cannot bring it back when the portfolios sync. Adding the symbol again afterwards (entering shares) brings it back on purpose.

Each browser remembers its own portfolio. The portfolio you last picked in this browser is the one it opens on, after a reload or a fresh sign-in. Picking a portfolio on your phone or in another browser does not switch this one. A browser that has never picked one opens on the account's last choice, and if the remembered portfolio was deleted or renamed elsewhere it falls back to that too.

Bulk Import: Add many tickers at once without searching one by one.

  • Open the portfolio dropdown → Bulk Import, or click the button inside an empty portfolio
  • Stocks: paste tickers separated by commas, spaces, or new lines: AAPL, MSFT, NVDA, TSLA
  • Optional shares and average cost per share on each stock line: NVDA 50 102.50: pre-fills Portfolio Analytics. You may use commas in share counts (e.g. PATH 2500 12.40 or PATH 2,500 12.40).
  • Options (US equity, standard multipliers): one per line, AMD 04/24/2026 165.00 P -2 1.62 (underlying, expiration, strike, P or C, contracts, entry premium per share). Negative contracts = short. Pricing uses OCC symbols via the same live quote feed as stocks.
  • Broker CSV (drag and drop): Schwab and Thinkorswim position exports are recognised. Thinkorswim Positions exports use Cost/Share (entry premium or stock cost), Price (mark), Gain $ (open profit and loss), and Day Chng $ (day profit and loss). Price and Day Chng $ are stored on each row so Net Liq can still value a symbol when a live quote misses it. Older Thinkorswim Statement layouts use Trade Price, Mark, and P/L Open (not P/L Day) the same way. Schwab uses Average Cost / Price / Gain/Loss $. Thinkorswim Account Statement rows that split Symbol / Expiration / Strike / Type into separate columns import as options, not as a stock with the same quantity. A blank Qty skips the row.
  • Cash & Sweep Vehicle: CASH 2500.00 (balance at unit price 1), or CASH USD 842.10 for a currency label. Broker CSVs that list "Cash & Cash Investments", "Cash & Money Market", or "Futures Cash" are imported the same way (multiple cash lines in one file are combined). Cash has no tax lots. Day profit and loss on cash is 0 unless a real quote exists for a listed money-market fund ticker (for example SNAXX or SWVXX), which imports as a stock.
  • Purchase dates come from a cost basis export, not a positions export. A broker Positions export (Schwab's included) lists what you hold today and carries no purchase dates, so positions imported from it show the purchase date as not on record and the holding period as Unknown, rather than the day you imported them. To fill in the real dates, also import the broker's cost basis file. On Schwab: Accounts › Unrealized Gain/Loss, choose the account, expand to lot details, and export. Any CSV with a per-lot date column (Open Date, Date Acquired, Purchase Date) is read lot by lot, with each lot's date, shares, cost per share and, where given, the broker's own Long Term or Short Term label, and it replaces that stock's cost basis. You can also add a date to any position with the edit button.
  • Transaction history files add purchase dates. A broker transaction history (Schwab's has Date, Action, Symbol, Quantity, Price, Fees and Amount columns) cannot rebuild your holdings by itself: it starts on a date, so shares bought or transferred in before then are missing, and it carries no unrealized profit or loss. So import the Positions file first, then drop the transaction history on the same portfolio. Bulk Import shows how many holdings it can date before anything changes, and pressing Import adds purchase dates to the positions already there. Share counts and cost basis are never changed. Shares the history cannot account for (bought before it begins, transferred in, or from a merger or spin-off) stay not on record rather than getting a guessed date. Option assignments are counted once, splits and broker corrections are followed, and a sale of shares older than the history is not read as a short sale. Positions dated from a cost basis export, and positions whose trades you entered by hand, are left as they are. Export on Schwab from Accounts › History, choosing the widest date range available: a history covering only this year dates only the shares bought this year.
  • Append vs Replace: Append adds to the current portfolio. Replace clears that portfolio first, then writes the import. When you are signed in, Replace is the source of truth for that portfolio on every other signed-in device: they drop tickers the import no longer lists, instead of merging the old book back in beside it.

Editing a position:

  • Hover any portfolio row → click the ✎ (pencil) button at the bottom-right of the row
  • Enter your shares held and average cost basis per share
  • The purchase date starts at today. When you enter shares and a cost without adding a transaction row, a purchase date sits under the cost. It starts at today. Change it to the day you bought the shares, then save. Saving stores that date, so the position list shows the day bought instead of a date that is not on record. A position imported from a broker file that carried no purchase date stays not on record until you enter one. Options and manual balances have no purchase date.
  • The price starts at the current quote. The average cost box starts at the stock's current quote as soon as you open it, and when you add a buy or sell row, its price starts at the quote and its date at today. Change either to what actually happened, and whatever you type is left alone. A cost already on file, and the prices of transactions you saved earlier, are never replaced. The quote is only a starting point: if you save without any shares, no cost is recorded, so a stock you only looked at is never saved with a price you did not pay. A row needs both shares and a price to count when you save. Options and manual balances have no quote to start from, so those boxes start empty.
  • Once at least one position has both shares and cost entered, the Portfolio Analytics row appears
Tip:
Create separate portfolios for different strategies: one for swing trade setups, one for long-term holdings, one for earnings-week stocks. Switch between them instantly from the dropdown.

Monitor: Open it from the MONITOR tab. It opens on Options. Stocks is the other tab, and it loads only when you open it, so option quotes and stock prices are not fetched together. Each tab keeps its own prices for five minutes. ↻ refreshes the tab you are on. The portfolio menu includes All portfolios, which lists every book on the tab you are on and adds a Portfolio column. Each open row has an edit button and a remove button.

On Options, the figures are that tab's own: market value (marked premium times contracts times 100, long adds and short subtracts), cost basis, total profit and loss, the day's change, and the contract count. Remaining premium and one chip per expiration sit under the heading. Market value is also a column. Net Liq appears on a tab only after both Options and Stocks have been opened for that portfolio. It is the whole book, cash included, and it matches Portfolio Analytics. Until then each tab shows only its own totals, so a figure is never a partial sum wearing the name Net Liq.

On Stocks, the figures are equity and cash, cost basis, unrealized profit and loss, today's change, and the position count. Capital gains this year (short-term, long-term, and combined) is on this tab: recorded sales in the current calendar year through December 31. Unsold shares are not included. A loss disallowed by the wash sale rule is deferred, not counted here. January 1 starts a new year at zero.

Closed positions: a stock you have sold out of stays on the Stocks tab, in its own Closed positions section under the holdings, with its purchases and sales, until December 31 of the year it was closed. On January 1 it leaves the Monitor; the record itself is kept. A Bulk Import in Replace mode no longer deletes these, and a holding that was in the portfolio but is missing from the new broker file is recorded as closed rather than removed. A positions file does not say what the shares were sold for, so that sale uses the last known price and is marked estimate. It is left out of Capital gains this year until you enter the actual sale price with the pencil on that symbol in the portfolio list, which removes the mark. The edit and remove buttons on the Monitor are for open rows. If you replace with a partial file, holdings that are not in it are recorded as closed too; remove any you did not sell with the remove button on that row in the portfolio list.

A holding that cannot be priced is named in an amber note and left out of every total rather than counted at zero. Loading: reopening the same tab within five minutes, with nothing on that tab added, removed or edited, shows it at once from the prices it already has. Otherwise it shows the last prices at once and refreshes them in the background; the full loading bar appears the first time that tab has no prices yet. An edit on one tab does not make the other tab fetch again. While the Monitor is open it watches for changes on the tab you are looking at.

Positions across portfolios: When the loaded symbol is held in one or more of your portfolios, a Your positions in this symbol strip appears under the quote area with one card per portfolio (quantity, average paid, unrealized and today). Hover a card (or tap on touch) to see that portfolio's recorded transactions for the symbol: buys and sells with dates when you have entered them, or open purchase lots when only lots are on file. If neither exists, the tip says so rather than showing a blank. The tip is fixed to the page so it is not clipped by the panel.

Cross-device sync: When you are signed in, portfolios sync through your account, including the Quantamatica iPhone app. A save never replaces a newer copy saved on another device: when something changed elsewhere first, the two are combined. A holding or portfolio added on either side is kept, one removed on either side is removed (unless it was changed on the other side since), and a holding changed on both keeps the newer change. A Bulk Import Replace on one device becomes the book on the others after the next sync pull (Realtime, tab focus, or within about a minute). Signed-out use stays in that browser only.

Portfolio Analytics

When an active portfolio has at least one ticker with both shares and cost basis entered, a ◈ Portfolio Analytics row appears below the Analytics Intelligence row. Click the header to expand it.

The badge in the header shows Net Liq: the current total portfolio value, including Cash & Sweep Vehicle balances, equities, and option marks. That total is meant to match a broker account summary of market value plus cash (Schwab "Total accounts value", Thinkorswim Net Liq). Live quotes are preferred; when a quote is missing, the mark imported from the broker CSV is used so the row is not dropped from the sum. An amber asterisk on Net Liq means at least one position still has neither a live quote nor an imported mark and is excluded. Cash & Sweep rows under different placeholder tickers (CASH, USD, and similar) are coalesced into one balance so the same broker cash is never counted twice; listed money-market funds such as SNAXX stay as their own stock rows at net asset value 1. Beside Net Liq, P/L is the open profit and loss on the positions held: current value minus cost, in dollars and percent, the same Unrealized P&L and Total Return as Portfolio Summary. Cash held at its own price is inside Net Liq and adds nothing to that figure. Day is the change since the previous session, dollars and percent (for example +125.00 / +1.20%), using the same previous-session value as Portfolio Analytics: day profit and loss divided by the book value before today's move. Live quote moves are preferred; for CSV-only marks it uses the broker's Day Chng $ from the import. A Schwab account-summary day change taken later in the session will not match a Positions CSV exported at midnight, and option day moves from Yahoo are often zero, so day change can disagree with the broker even when Net Liq aligns. The vs picker lets you choose a benchmark for comparison: S&P 500, NASDAQ, or Russell 2K. When the book has priced options, open profit and loss, the day's change, and premium remaining sit on their own line under Net Liq, so each figure stays on one line.

Sections calculate from live scanner prices and your local position data. Add · Hold · Sell · Review is the one that also reads Decision Card and Conviction (see below). Click a row in those lists to open that ticker's Decision Card (the same reasoning as the Decision Card button above Conviction).

  • Portfolio Summary: Six KPI cards, Total Value (includes cash), Total Cost, Unrealized P&L, Total Return %, Today's P&L (dollars and percent), and number of positions.
  • Add · Hold · Sell · Review: Four lists for equity holdings in the active portfolio only. Options and Cash & Sweep Vehicle balances are excluded. Every equity with shares and cost appears in exactly one list; nothing is silently dropped. Classification comes from Decision Card verdicts and Conviction thesis exit signals, not a separate scoring model:
    • Add: Decision High-conviction buy only, and only when Decision is not already-broken. Buy, watch is never Add (one notch below high-conviction).
    • Hold: Decision Hold, no edge; Buy, watch (clear or already-broken); or High-conviction buy with Decision already-broken (an alert, not an Add). Hold means the engine issued a real verdict that is not an Add and not a Sell. Deliberate Decision abstentions never sit here.
    • Sell: only when Decision says Sell, exit, or your active Conviction thesis has at least one condition currently broken (checked live when the lists load, not only from the evening thesis check). Decision "Already broken" alone never puts a name here (that flag does not change the published verdict). A missing quote does not trap a broken thesis in Review: Conviction exit still wins. Sell rows are ordered by portfolio weight, largest first.
    • Call weakening tag: a row whose Decision call has two or more of its own disconfirm conditions already broken carries an amber Call weakening tag with the count (for example 2 of 4), beside its reason. It is a notice only. It moves no holding between lists and changes no reason: the existing rule that an already-broken condition keeps a High-conviction buy out of Add is unchanged. Review rows have no call to weaken, so they carry none. A name reading Input under review or Data stale sits in Review with that short reason: the card could not stand behind a call on those filings.
    • Review: held equities where Decision has no opinion, and no Sell signal: deliberate abstentions (banks, insurers, property trusts, negative free cash flow, and similar stated refusals), incomplete filed figures, a transient vendor error, or classification still in flight. Deliberate abstention tickers render in white in this column so they stand out from incomplete or waiting rows (which keep the default blue ticker). Each row carries a one-line reason so a blank never reads as a fault. While classification is still running, an empty Add, Hold, Sell, or Review column shows Wait with a moving ellipsis instead of claiming there are no names; only after every equity has a final bucket does an empty column say No Add / Hold / Sell / Review names in this portfolio.
    Each row also shows the Decision as-of date (the session close the card's price belongs to), portfolio weight, and unrealized profit or loss percent (no currency symbol), the same figures Portfolio Summary uses, so size and entry context sit beside the call. Guests (login off) see Decision-only classification; sign in to include Conviction thesis exits. The Portfolio Analytics panel paints immediately from cached scanner prices; Add / Hold / Sell / Review fills in the background in batches so Summary and P&L are not blocked. The lists fill a few names at a time, so a large book takes longer than a small one and names appear as each batch finishes. A short working note stays up while names are still pending, and empty columns show Wait until every equity has a final list, then the finished empty wording. If a batch runs long, or shared capacity is busy, that batch is tried again. Names already classified stay in Add, Hold or Sell, and a slow batch is not written into Review as an error.
  • Unrealized P&L: Table showing each position: shares, avg cost, current price, market value, unrealized gain/loss in dollars and percent.
  • Position Weights: Horizontal bars showing each position's % of total portfolio value, tells you where your capital is concentrated. Cash & Sweep Vehicle lands in the Cash & MM sector slice.
  • Today's Performance: Dollar gain/loss and percent for each position today, sorted by contribution, plus a portfolio total for the session. Cash day change is 0 unless a listed money-market fund has a live quote.
  • Benchmark Comparison: your portfolio against the chosen index over 1 day, 1 week, 1 month, 3 months, year to date and 1 year, with a one-year line chart of the two paths. The benchmark is the adjusted closing price of SPY (S&P 500), QQQ (NASDAQ 100) or IWM (Russell 2000), switched with the picker in the header; futures are not used. The portfolio side is holdings-based: today's equity weights are held constant (and rebalanced daily) back through each period, so it shows how this book would have behaved, not your actual time-weighted return. The 1 day row is the exception: it is the live figure for the whole book, including options and cash, and matches Today's Performance and the Net Liq badge exactly. A position that did not exist at the start of a period (a recent listing) is left out of that period, the rest are reweighted, and the row shows how much of the book it covers. The last column is the difference in percentage points; over a single period it is a difference, not alpha.
  • Top & Bottom Performers: Your best and worst positions by total unrealized return %, useful for identifying where to add or trim.
  • Return Attribution: Each position's contribution in percentage points to the total portfolio return. Shows which holdings are the biggest drivers of your gains or losses.
  • Tax Planning: Scans every portfolio for stock positions with unrealized losses, then runs an AI pass that ranks which to sell and when. It factors in the wash-sale rule (30-day repurchase window), how close year-end is, and whether the loss is large enough to bother. Options and Cash & Sweep are left out. The summary line shows how many loss positions there are and the total unrealized loss across them (sum of each position's market value minus cost, never a count), formatted like other profit and loss figures. Click Run Tax Analysis to generate the table: Portfolio, Ticker, Priority, Timing, Action, Rationale, and a suggested repurchase date. When there are many losses, the model ranks the largest twenty-five and the header says so. Check the Done box when you execute a trade. If there are no loss positions, the AI is rate-limited, or the run times out, the section says so plainly with Retry rather than spinning forever.
Example reading:
Total Value: 142.3K · Total Cost: 118.6K · Unrealized P&L: +23.7K (+20.0%) · Today: +840 / +0.59% · vs S&P 500 today: -1.73% → You're up 0.59% while the market is down 1.73%, an alpha of +2.32% today.

Benchmark Comparison is built from daily adjusted closes and today's holdings. Options, cash and bonds are not in the period rows, and the real return you earned depends on when you bought, which the app does not hold for most positions.

Top Gainers & Unusual Volume

Top Gainers Today: The 8 biggest percentage gainers in the US market today. These are stocks with the strongest price momentum on this session. Updated every 5 minutes.

What causes stocks to appear here:

  • Earnings beats with strong guidance
  • Analyst upgrades with significant price target increases
  • FDA approvals, contract wins, or major partnerships
  • Short squeezes (heavily shorted stocks moving violently upward)

Top Portfolio Gainers Today: Up to 8 names from your active portfolio (the same holdings the left panel uses), ranked by day percent change. Uses prices already loaded for that portfolio; it does not run a separate market scan. Unpriced positions and flat or down names are skipped. If nothing qualifies, the row says so rather than inventing names.

Green border: When a market Top Gainer is also a holding in your active portfolio, that chip gets a green border. That name is then left out of the Top Portfolio Gainers row so it is not listed twice. Portfolio-only movers fill the portfolio row instead.

Unusual Volume: Stocks trading at significantly higher volume than their normal average. Volume is the fuel of price moves. A stock breaking out on 3× or 4× normal volume is a much more reliable signal than one moving on light volume.

How to use these together:
A stock appearing in both Top Gainers AND Unusual Volume is showing confirmed momentum: the move is backed by real participation, not just a few large orders. This combination warrants closer investigation. A green border on Top Gainers means the same name is already in your book; look to Top Portfolio Gainers for other holdings moving strongly that did not make the market list.

GEX Scanner

The GEX Scanner (Gamma Exposure Scanner) reads the options market structure across your watchlist and recent searches to identify where market makers are positioned, and what that positioning means for how each stock is likely to move.

Open it from the Analytics Intelligence panel via the GEX Scanner button, or from the main toolbar.

Why GEX Matters

Market makers sell options and then hedge their exposure by buying or selling the underlying stock. The direction and size of that hedging creates real, mechanical price pressure, it's not sentiment, it's actual order flow. GEX tells you where that pressure is and whether it's working for or against a trend.

Column Reference

  • Regime (POS / NEG): The current GEX regime. POS means market makers are net long gamma, they buy dips and sell rips to hedge, which dampens volatility and keeps price in a range. NEG means they are net short gamma, they hedge by trading in the same direction as price, which amplifies moves and allows trends to accelerate.
  • Flip: The Gamma Flip level, the exact price where the regime changes from POS to NEG or vice versa. This is the single most important level in the scanner. Long bias when price is above the Flip. Short bias when price is below it.
  • Δ Flip: How far the current price is from the Flip level, expressed as a percentage. Rows highlighted in amber are within 3%: a regime change is imminent. These are the highest-conviction setups to watch.
  • Max Pain: The price at expiration where options buyers collectively lose the most money. Price tends to gravitate toward this level as expiration approaches due to options hedging mechanics.
  • Δ Pain: Distance from current price to Max Pain. A large positive reading means price is well above max pain and may face gravitational pull downward into expiry. A large negative reading is the reverse.
  • Call Wall: The strike above spot with the heaviest call open interest. Market makers hedge by selling the stock near this level, creating mechanical resistance. A useful ceiling for near-term price action.
  • Put Wall: The strike below spot with the heaviest put open interest. Market makers hedge by buying the stock near this level, creating mechanical support. A useful floor for near-term price action.
  • P/C: Put/Call open interest ratio. Above 1.2 indicates heavy put positioning (bearish lean). Below 0.8 indicates heavy call positioning (bullish lean). Extreme readings can signal crowded trades that are prone to reversals.

How to Use It

Reading the scanner:
1. Sort by Δ Flip (default) to see which stocks are closest to a regime change.
2. Amber rows are within 3% of the Flip: watch these for a break above (long setup) or break below (short setup).
3. Check the Regime badge: NEG regime stocks in a downtrend tend to move faster and further. POS regime stocks are range-bound candidates.
4. Use Call Wall as your upside target and Put Wall as your downside target when sizing a trade.
5. Click any row to instantly open a full analysis for that ticker.

Data is sourced from CBOE options chains with a 15-minute delay. The scanner pulls from your recent searches and pinned defaults (MSFT, TSLA, NVDA, AAPL) and refreshes automatically.

Earnings Results in the News Card

On the day a company reports, its results are pulled to the top of the news card and stay there until the market has had a full trading session to price them. A morning report holds through that evening; a report released after the closing bell holds until the following session closes, because its own session had already ended before a single share traded on the news.

What you will see

  • EARNINGS badge: marks the articles carrying the results, so the reordering is visibly deliberate rather than the feed losing its sort.
  • Verdict chip, bottom left of the item: Bullish when both earnings per share and revenue beat consensus, Bearish when both miss, Neutral when the company lands in line or beats one measure and misses the other. A result within half a percent of consensus counts as in line. Hover the chip to see the figures it was read from.
  • Arrow on the price chart, in the same colour, on the bar carrying the release. Below the price for a beat, above it for a miss. On a daily chart with after-hours data the arrow sits on the bar nearest the actual announcement, which is usually the after-hours move.
  • Results table: click a flagged article to open it, and the reported quarter appears above the article, showing revenue and earnings per share against both the year-ago quarter and the Wall Street estimate.

Why a verdict is sometimes missing

The badge can appear with no chip and no arrow. That is deliberate, not a fault. For the first hours after a company reports, the data vendors often list the event without yet publishing the actual figures, and Quantamatica will not guess a verdict it cannot source. The chip fills itself in within about twenty minutes of a vendor posting the numbers.

Earnings per share is shown on the vendor's own basis, and the actual is always compared against that same vendor's estimate. Different publishers report the same quarter on different accounting bases, so a figure you see quoted elsewhere may not match. Comparing across two sources produces a surprise percentage that describes nothing real.

The year over year column is deliberately blank for earnings per share, for the same reason: the only year-ago series available is on a different accounting basis. Revenue has no such split, so it carries the comparison.

Treasury Yields

Open it from DATA › Treasury Yields. The page covers the 2-year, 10-year and 20-year, sourced from the United States Treasury's own daily par yield and inflation-protected yield curves.

The page never forecasts a yield, and that is a deliberate design decision. Yield direction does not persist: measured across more than a thousand sessions, the correlation between one day's direction and the next is statistically indistinguishable from a coin flip. Any tool putting an arrow on a future yield level is showing you a confident number with nothing behind it. What the page shows instead is what the market has already priced.

A public version of the curve, forwards and shape, no sign in required, is at quantamatica.com/treasury-yields.

The sections

  • Headline tenors: the 2-year, 10-year and 20-year with the day's move in basis points.
  • The curve today: par yield at every tenor the Treasury publishes, with your three highlighted.
  • What the curve already prices: implied forward rates. These are the rates today's curve makes equivalent over a future window, reached by arbitrage rather than opinion. If the ten year rate ten years forward reads well above today's ten year, the market is pricing higher rates ahead. It is the market's forecast, not Quantamatica's.
  • Where each level comes from: each nominal yield split into the inflation-protected real yield and the breakeven inflation rate implied by the gap. This is where a long end move explains itself, a rising 20-year driven by real yields is a very different signal from one driven by inflation expectations.
  • Curve shape: the slopes, each shown against its own history as a percentile, so you can see whether today is ordinary or stretched.
  • Volatility regime: how violently each tenor is moving and how sticky that state has been. Direction does not persist but magnitude does, so this is the part of "what happens next" that can honestly be measured. Each row is shown against the base rate for that state; where there is no lift over the base rate the page says so rather than presenting a non-finding as a finding.
  • Catalysts: Federal Reserve meeting dates, what the fed funds futures market implies for the policy rate, and the live Treasury auction schedule. This is the one genuinely forward-looking part of the page, and it involves no inference at all, these dates are published in advance.
  • Track record: every volatility regime call is written down on the day it is made and graded ten sessions later against what actually happened. The percentages elsewhere on the page are measured from the same history that produced them, so this is the out-of-sample record. It accumulates forward and nothing is backfilled.
  • Sensitivity to the front end: how far each tenor has actually moved for a given move in the 3-month bill. Near one means policy sets the level. Well under one means term premium does, which tells you which tenor a policy surprise will really hit.

The first load takes around twenty seconds while several years of curve history are fetched, then it is cached for an hour.

Gold Futures

Open it from DATA › Gold. It analyses the COMEX gold futures contract (100 troy ounces), not spot gold, and produces a fixed report: market overview, buy setups, sell setups, no-trade zones, and execution notes.

Setups are built from market structure and are discarded rather than softened. A setup that does not clear the reward-to-risk floor or the structural stop rule is not shown at a lower confidence, it is not shown at all. "No high-probability setup right now" is a valid and expected output, and a page that always produces a trade would be worth less, not more.

Three further inputs adjust the confidence of a setup and can never create or suppress one on their own, with every adjustment shown alongside its reason: the Commitments of Traders report, the term structure across listed contracts, and options positioning. Note that the positioning data is several days old by construction, it is a swing risk filter, never an entry trigger, and its age is stated on every response.

Position sizing is calculated from your account size and risk percentage, entered at the top of the page. Where a structural stop would exceed your risk budget on a full contract, the page also sizes the micro contract and tells you when that is the only correct instrument.

Next Session

Open it from DATA › Next Session. The top of the page is four Autopilot hold lists, Grok Portfolio then DeepSeek Portfolio then Wolff's Flagship Fund then Jim Simons Tracker, each copied from that book's last published names. Hold the names on a list. A name that leaves stays on the table for a day with a red line through it, marked Sell. All four update once a day at 10:00 Eastern. The title of each list carries the date of that book. Delayed appears only when that date is older than the last day the market was open. Each row shows when the name was included, the price on that date, the price when you opened the page, and the difference. The profit / loss line under each list is the weight-weighted move of those names since they were included. They are not Quantamatica scores, and they are not the next-session setups below them. A published book is sometimes marked incomplete; the page shows what Autopilot has disclosed, not a padded fifteen-name sleeve. The Simons list follows Renaissance Technologies' latest public filing, the fifteen largest positions.

Below that list are names where a large move in the upcoming regular session is already being priced or is scheduled to hit, and where a second independent reading agrees. That board is not a forecast of which five stocks will rise tomorrow.

A name appears only when two of these three channels fire: a confirmed earnings window (a same-vendor surprise, or a dated window with no verdict yet), an extended-hours print already up, or volume running well above that name's own average. Sign comes from the tape or a bullish surprise. A window with no figures never invents a direction. Setups that fail those rules are discarded, not softened. No next-session setup right now is a valid and expected output, and a page that always produced five names would be worth less, not more.

The list is ordered by the size of the move already observed, not by business quality. Quality scores, price-to-earnings-to-growth, and the longer-horizon forecast are deliberately left out. Click a symbol to analyze it.

Each call is written down and graded after the target session closes: the return has to clear one and a half times that name's own twenty-session daily volatility, and it has to beat the S&P 500. Apply the journal SQL once; until then the page omits the record rather than showing an empty one. Nothing is backfilled.

The Confirmation backtest tab is the reconstructable half only: an up regular session plus unusual volume at that close, then the next regular close. Extended-hours prints and the live earnings window are not in any free daily archive, so they are left out. That tab is not a backtest of the live board. The journal is the record for the rules you actually see.

Under the live board, Impulse lab is the experimental half of the page. It tests a different object: a sourced driver that is already extended, an asset that should take that impulse (Bitcoin, gold, long-term Treasuries, or a sector with a measured sensitivity), and that asset already printing in the claimed direction. A scheduled Federal Reserve date or Treasury auction is listed and does not invent a sign. The formula on this lab will change and is not written to the journal.

Out-of-the-Money Put Income

Open it from DATA › Options Scanner, then expand Sell out-of-the-money puts: monthly income. It ranks up to twenty high-volatility companies that also clear a selectable EFM score floor, and for each one picks a put you could sell about a month out.

What each row shows

  • Live put (about 80% finish out of the money): the listed put nearest about 30 days to expiration (21 to 45 day window) whose Black–Scholes chance of finishing out of the money is closest to 80%. That chance is the standard normal CDF of d-two under the same rate convention the rest of the options tools use. The row shows premium, strike, expiration, days left, yield as premium over spot, the finish-out-of-the-money percent, and delta.
  • Historical stress (85% strike): a separate strike implied by an 85% finish-out-of-the-money reading at the scan-time price and at-the-money implied volatility. That strike is read as a distance below today’s price (for example 13% below). The column then looks at every 30-day stretch in the past year, starting from each trading day, and counts how many fell that same distance below the price the stretch started at, at any point along the way. Each stretch is measured from its own start, so a stock that simply rose during the year is not counted as falling. Stretches overlap, so one sharp drop appears in several of them; hover the cell for the strike and how many separate episodes there were. Touching the level at some point is roughly twice as likely as finishing below it, so a reading near 30% is about what the 85% pricing implies, and much higher means the stock has fallen that far more often than its options suggest. The live put uses 80%; the historical count uses 85%. They are labelled separately on purpose.
  • Expired below strike: the put in the table replayed over the past year. Its strike is read as a distance below today’s price and its days to expiration as trading days; for every trading day in the year, a put sold at that close, that far below, for that long, is checked at the close on its last day. The cell shows how many ended below the strike, which is how often the seller would have had shares put to them. The option prices imply about 100 minus the Finish OTM figure (around 20%); the cell is plain at or under that, amber up to one and a half times it, red beyond. Hover the 85% touch cell for the same finish reading at the 85% level.
  • How the board is ranked: by monthly return, the premium divided by the strike (the cash a cash-secured put ties up per share), scaled to a 30-day month so a 21-day and a 45-day put compare fairly. That return is weighted by IV / realized: the options' implied volatility over how much the stock has actually moved in the last 21 sessions, capped between 0.5 and 1.5. Premium that runs ahead of the stock's real movement is worth more than premium that merely matches it. These weights are stated choices, not fitted to past results. Names below 25% implied volatility are skipped so the board stays on options that pay meaningful premium.
  • Buy price if assigned and discount: the strike minus the premium you keep, which is what you pay per share if the stock is put to you, and how far that sits below today's price.
  • Bid and premium: the bid is what you can be sure of receiving; the premium column is the midpoint, which a limit order near the middle often gets when the market is tight. Only puts with a two-sided quote, a bid-ask gap no wider than a quarter of the midpoint (or ten cents), and open interest of at least 50 are offered, so the premium shown is one you can actually trade. A company whose only near-80% puts fail that test is left off rather than shown with a premium nobody fills at.
  • Earnings: a ⚠ and the date mean the company reports before the put expires. The premium is high partly because a gap on the report is priced in, which is the largest single risk to this trade. Those rows are listed after all others, and Hide earnings on the section removes them. A ? means the earnings calendar could not be read for that scan, so the row is not assumed to be clear.
  • Minimum EFM score: a dropdown on the section (65, 55, or 45; default 65). Only names scoring above the chosen floor on the EFM factor model board in memory are evaluated. Changing it re-fetches the board for that floor. The scanner does not re-score EFM. After a site update, until the next weekday morning scan, that board is the names from the signal journal (the ones that reached the threshold), or it is empty if the journal has none. If no name clears the floor, the section stays empty and says so.

When the board is empty

An empty board is a valid answer. Common reasons: no name above the selected EFM floor also clears the 25% implied-volatility floor, or no listed put near the 80% target has a tight, two-sided market. Lowering the Minimum EFM score (to 55 or 45) usually unlocks more names when the default 65 leaves the table thin. The section will not invent a trade to fill the table.

The board is built once each weekday at 10:45 Eastern, after the morning EFM scan, and every reader of this running site sees the same board, stamped with the time it was scanned. It does not change when you refresh the page or reopen the section. A site update clears it until the next weekday build, or until the section is opened and it builds once. An administrator can also run a new scan. The refresh control re-reads the board held for this run.

Sign-in

Email and password is the ordinary sign-in. When an authenticator is enrolled on the account, the next step asks for the six-digit code from that app. Google and Apple are their own sign-in and do not also ask for that code.

An administrator can mark one account so email and password finish the sign-in, with no authenticator code, on the website and in the mobile app. Every other account is unchanged. If the code step never appears for you, that account has been marked this way. The mark is per person, and it can be turned back on, after which the code is asked for again.

Changing the password can still ask for the authenticator when one is enrolled. That check belongs to the account itself and is separate from this sign-in mark.

Email link asks only for your email when an account already uses it. Name, country and state are asked for only when no account uses that email, to create one.

Stay signed in keeps you signed in for 10 days from your last visit on that browser. While the page is restoring a stored sign-in it says Restoring your session instead of showing the sign-in form; if that takes longer than usual, a link offers the form. Clearing the browser's site data, signing out, or 10 days without a visit ends it. Private windows keep nothing once closed.

Social Arbitrage

Open it from DATA › Social Arb. It looks for the gap between how much a company is being talked about and how far its price has actually responded, on the reasoning that attention often moves before price does.

The ranked board scores each name on social momentum, the size of that information gap, and a set of risk measures including a manipulation check. Click any row for the detail behind a name.

The scoring weights are stated priors, not fitted values. They were chosen from reasoning about what should matter, not trained on historical returns, and the page does not claim otherwise. The accompanying backtest deliberately covers only the price-confirmation part of the score, because no historical archive of social data exists to test the social part against. That record is instead accumulated forward from the day the signal journal is installed.

The symbol open in the workspace sits at the top of the board, labelled Analysis stock, with the same columns as the ranking. If that symbol is already on the board, the row shows its rank. If it is not, it is scored on its own and the rank cell stays empty. The information gap stays empty until a board scan exists to compare it with, because that gap is a comparison across names, not a property of one symbol.

Clicking that row opens the same detail as any other name, plus a table of where the conversation sits. StockTwits is the share of the newest batch that was tagged bullish. Reddit is this week's posts, and the cell stays blank when there are not enough of them to measure. News tone is the headlines collected for this view, about thirty days when the feed answers. The blend uses only the venues that could be measured. Attention is how many messages actually came back. There is no feed for X, so X is not a row. A cell with nothing to measure is left blank rather than filled with a guess.

Under the table, a written note covers what the bullish messages are saying, what the skeptical ones are saying, how to read the disagreement, and a bottom line. It uses only those messages, headlines, and the measured table. It does not add a price target, a firm comment, or a lawsuit that was not in them, and it is not a trade. If the note cannot be written, the table still shows.

Pricing Power Index

A 0 to 100 score on the Fundamentals view measuring whether a company can raise prices without losing customers. Four components: the level of gross margin, how well that margin holds relative to peers when input costs rise, whether revenue still grows while margin holds, and margin stability. Peers act as the control for cost shocks, which is what makes the score meaningful without an inflation data feed.

Peers are companies of comparable size. The peer list starts from the company's industry, then keeps only companies whose market value is between a tenth and ten times its own. Without that, a very large company can be compared against small specialists with a different cost structure and faster growth from a small base, which says more about the mismatch than about pricing. When fewer than three comparable peers remain, the score is measured on the company's own margins instead, and says so. The card's tooltip lists any peers left out for size.

Margin history comes from the company's own filings with the Securities and Exchange Commission. Hover the card to see up to twenty quarters of history; the most recent point is the headline score, so the chip and the chart can never disagree. A score of 85 or higher gives the card a green border, the same mark the Rev Growth and ROIC cards use for a standout reading.

Some companies are refused outright. Banks, insurers and property trusts have no meaningful gross margin, so no score is produced for them, and the card removes itself rather than showing a number that would be nonsense. Declining revenue caps the score, and the cap is always reported rather than applied silently.

Sector Flow

Open it from DATA › Sector Flow. It tracks capital rotation between sectors on a Relative Rotation Graph, plotting relative strength against the momentum of that relative strength. A sector's position on the graph shows whether it is leading, weakening, lagging or improving against the broad market, and the trail shows the path it took to get there.

Relative strength is not fund flows. The four quadrants (Leading, Improving, Weakening, Lagging, each against SPY) are built from prices alone: how a sector's price compares with the market, and whether that comparison is improving. They say nothing about money entering or leaving a fund. Where this page speaks of an inflow or outflow it means the measured ETF flow numbers, shown in the small table under the rotation graph for 1, 5 and 21 days. A sector counts as an inflow only when its 21-day flow is positive and its 5-day flow is not negative, and as an outflow only when the 21-day flow is negative and the 5-day flow is not positive. The two can disagree, and when they do the table and the summary at the top say so: for example, a sector leading on relative strength while ETF flows were net negative over 21 days.

The summary at the top is written from that structured data. If the wording it produces ever contradicts the flow numbers for a sector, the page replaces it with a plain template built straight from the data, so a blank or plainer summary is a deliberate safeguard and not a fault. Flow data accumulates forward from when recording started, and a sector with no flow figure is described on relative strength only.

Alongside the eleven standard sectors it carries four themes: Clean Energy, Bitcoin, Ethereum and Quantum Computing. Quantum Computing is tracked through the Defiance Quantum fund (QTUM). That fund holds about seventy companies in equal amounts, most of them cloud and chip businesses rather than quantum ones, so its expanded board lists quantum computing companies directly instead: the companies whose main business is quantum computers or quantum-safe security. The largest technology companies with quantum programmes of their own are left off on purpose: at their size they would fill the whole heatmap for a business line that is a small part of what they sell.

The rotation always runs clockwise, and that is worth understanding rather than reading into: momentum is defined as the rate of change of the ratio, so anything plotted this way circulates clockwise, including data with no real pattern in it at all. The direction is not a finding, the position is: a sector actually in the Leading quadrant is measured to be outperforming with rising strength. The Sector Performance Heatmap table below prints both numbers directly, RS-Ratio and RS-Momentum, so you can see why two sectors can land in different quadrants even when one has the higher ratio: the quadrant depends on both readings together, not on either alone.

Analyst Revision Breadth shows what analysts are doing to their earnings estimates across each fund's ten largest holdings: how many were raised, how many cut, and the share of companies whose numbers are rising. It is a reading of what is happening now, not a prediction of which sector will lead. No source publishes a history of revisions, so the measure cannot be tested against the past the way price signals can, and the one test the data allowed came back inside its own noise floor. The record builds forward from the day it starts, and the two right-hand columns show how breadth has shifted since.

Sector Fund Flows shows the capital actually entering and leaving each sector fund. Everywhere else on the page, flow is inferred from price. Here it is measured. For most sector funds the number comes from the change in shares outstanding, which move only when the fund creates or redeems units, so it is capital and nothing else. For the few funds whose issuer does not publish that, the figure is estimated from the change in fund assets with the price effect removed, and those rows are marked. Figures are shown over the latest session, five sessions and twenty one, each with its size as a share of the fund so a large fund and a small one can be compared. The record has to build up from the day it starts, because no source publishes a history of fund assets, so it reads as empty at first and says so.

Sector Sensitivity, further down the page, answers a different question: which sectors move when a macro driver moves. Each cell reads as "this sector moves this much against the market per 10 basis points on the 10-year yield", or per 1 percent on crude, the dollar or credit, or per 1 point of volatility, measured over five years of daily data. Blue means the sector rises with the driver, amber means it falls. A blank cell means the relationship is inside the noise floor, so nothing is claimed, and a question mark means the direction is not stable across the sample.

It is deliberately not a ranking of what to buy next. Sector leadership does not persist: measured over 45 non-overlapping months, last month's strongest sectors beat the weakest by -0.05% the following month, which is indistinguishable from zero. The table is useful paired with a view of the driver itself, such as what the Treasury Yields page shows is already priced for rates.

The Catalyst Map below it lists the macro catalysts that move sectors, and the direction each sector is expected to go relative to the market when a catalyst fires: crude rising, an inflation print above consensus, a credit spread widening, a policy shift. These are expected directions from economic reasoning, not measured forecasts, so each one is checked against the five-year data above where that data exists, and marked where the two disagree. Each catalyst carries a tier that says how much sits behind it, from a measured driver, through a series we have not wired up yet and a scheduled release, down to reasoning alone. It also carries a rank for whether it can be acted on ahead of the move: high only where the catalyst itself trends or arrives on a known date, low where the response is already priced or the theme plays out over quarters. Rows are grouped by family by default; click a sector column to rank every catalyst by its effect on that sector, or the Catalyst heading to sort by name and back.

Both the rotation graph and the Relative Strength Momentum bars below it can be played back over the last year. Press Play on either and it steps through one trading session at a time, taking about two minutes end to end: on the graph you watch sectors rotate through the four quadrants, on the bars you watch them reorder as they gain and lose strength. The two play independently. Pause stops one where it stands, and the slider scrubs to any date.

While either plays, its scale is held fixed, so a bar getting longer or a dot moving right means the sector really is gaining rather than the axis having moved. On the graph the dots are also drawn at one size during playback: dot size normally shows volume against its 20-day average, and that is a reading for the current day only.

The legend under the rotation graph has a checkbox for each sector, all ticked to start. Uncheck one and it drops out of the graph and out of the playback, so you can narrow the view to the few sectors you want to compare without the rest of the field in the way. The axes do not move when you do this, they are still set by the full list, so the sectors you keep stay exactly where they were. The choice is remembered between visits.

Click any sector row to expand it. It opens on a day heatmap of that sector: one tile per company, tile area set by market capitalisation, tile colour by how far the company moved today, grouped under the industry it belongs to. Each tile carries the price change and the percent change, and the smallest tiles carry only what fits, so hover for the rest. Colour saturates at three percent in either direction, so a deep red or deep green tile is a large move rather than an unusually large company. Hovering gives the full name, last price, market capitalisation and both change figures. Below the map, the same companies are listed with the scoring that ranks them.

The ten companies are the sector fund's own ten largest holdings, so the map shows what actually drives that sector rather than a selection of our own. The Fund weight column gives each one's share of the fund, while the ordering of the table is our score. The two crypto funds hold coins rather than shares, so those sectors fall back to a curated list of crypto-related companies. A company whose market capitalisation is not published is named under the map rather than being drawn at a guessed size.

Anything you hold in your active portfolio is shown here too. Its symbol is blue, on the map and in the table, so your own positions stand out among the fund's. A holding the fund does not own is added to the sector it belongs to and has no fund weight; a holding the fund already owns is simply marked. Switch the active portfolio in the left panel and the marks follow it. With no portfolio selected, the board says so under the map and shows the fund's ten on their own.

Mobile App

The Quantamatica app for iPhone is free. It does not need a website subscription, a free trial or a payment method. You create a free account in the app, or sign in with the account you already have, and your portfolios are saved to that account on our servers.

One account, one set of portfolios

The app and quantamatica.com use the same account. A portfolio you build in the app is the same portfolio on the website, and the other way round. Nothing is copied or imported, and nothing waits for a subscription: if you subscribe on the website later, your portfolios are already there. The app signs in with your email and password. Sign in with Google and Sign in with Apple appear in the app only while we have them switched on, and they are not part of the first release. If your account uses a passkey, the app asks for a code we email you instead, because a phone app cannot use the website's passkey step.

A new account needs its email confirmed. The link in that email opens quantamatica.com and tells you to go back to the app and sign in. Creating an account in the app does not subscribe you to anything, and accounts made in the app are not sent marketing email.

Face ID

On an iPhone with Face ID (or Touch ID) set up, the app asks for it when you open the app after it has been closed, so someone who picks up your phone does not see your portfolios. It is on by default, and you can turn it off or on under Account in the app. Your iPhone checks your face or fingerprint; the app is told only whether it matched, and Quantamatica never receives or stores it. If it does not match you can try again, or sign in with your password.

Alerts and signing out

Alert notifications keep arriving while the app is closed or locked behind Face ID. Signing out stops them on that phone: the app tells the server to forget the phone, so your alerts are not shown on the lock screen of a phone you have signed out of (one you lent, sold or share). Your alerts themselves are kept with your account, and they come back to the phone when you sign in again and open the Alerts tab. This needs app version 1.0.16 or later; on an earlier version, alerts can still reach a phone after signing out until the account is signed in elsewhere on it or deleted.

Signing in with Apple

When it is switched on, the app offers Sign in with Apple on iPhone beside Google. If the email Apple shares is the email on your Quantamatica account, you land in that account with the same portfolios. If you choose Apple's Hide My Email, Apple gives us a private address that is not the one on your Quantamatica account, so it opens a separate new account; choose Share My Email to use the account you already have. Apple sign-in, like Google, does not ask for a second code. The button appears only on iPhone, and only while we have it switched on.

When you delete an account that signs in with Apple, the app asks you to confirm with Apple once more, and Quantamatica then ends its link to your Apple ID, as Apple requires. If that last step cannot be completed at that moment, your account is still deleted, and you can remove Quantamatica yourself under your Apple ID settings, Sign in with Apple.

What you can do

  • Up to three portfolios. Create, rename and delete them. Deleting asks you to type the portfolio's name, because it removes its positions and transactions from your account everywhere. The limit counts every portfolio on the account. If your account already has more than three (the website allows ten), you keep every one of them; the app only declines to create another.
  • Add a position one at a time with the symbol, the number of shares and the price you paid. Fractional shares are fine, to six decimal places. A symbol we cannot find a price for is asked about before it is saved, in case it was mistyped.
  • Record purchases and sales with their dates. A sale takes the oldest shares first (first in, first out). Its sale price is kept apart from what you paid, so the shares still held and their cost always add up to the same figures. The realized profit or loss is shown for closed shares only.
  • Correct a quantity, price or date. A position with no history, or with one purchase, can be edited directly: that is an opening balance, an undated purchase, and the app does not invent a sale or a purchase to make an edit work. With more history you edit the transaction that was wrong.

When the app declines, and why

  • "You can create up to 3 portfolios." The cap on creating portfolios in the app. There is no upgrade: the app is free for everyone.
  • A sale of more shares than you held. It is refused, with the date and the number you held, because the app does not support short selling. The same check runs when you correct a purchase or delete one: a change that would leave a later sale without its shares is refused, and nothing is saved.
  • Options, cash, short positions and positions imported from a broker file are shown in the app but changed only on the website. Rather than guess at their history, the app leaves them exactly as they are.
  • "You have reached today's limit for this view." A few views (the Today feed, implied growth, the options book) are limited per person per day, because each one costs us a model call or a market data request. It resets at midnight Eastern time.

The research drawer

Swipe up on the menu at the bottom of the app, or tap the small handle above it, to open two more rows: Decision (the Decision Card), Conviction, Deep (Research Deep Dive), 13F IO (13F institutional ownership), Analysts (analyst consensus), Fundamental (the Fundamentals readings, momentum and industry deals), Metrics (the AI reading of price, levels and scores), EFM, Graham (intrinsic value by Benjamin Graham's formula) and Inflation Calc (the inflation adjusted profit / loss calculator). Each opens on the symbol of your latest Get a quote on the Today screen, and you can type another symbol at the top of the screen. They read the same figures as the website, so the two never disagree.

Where the website refuses, the app does too, and says why: Graham is not estimated for banks and insurers, the Decision Card abstains when the evidence is insufficient, and a Research Deep Dive that is still being written tells you so and tries again by itself. Research Deep Dive and Metrics can start an AI model call, so they have a tighter daily limit than the others. The inflation calculator does not need a symbol: it compares a purchase and a sale against the Consumer Price Index.

Symbol colours on the Monitor

On the Monitor's Equity list each stock's symbol is coloured by its Decision Card verdict: green for High-conviction buy, yellow for Buy, watch, white for Hold, no edge, red for Sell, exit, and grey for Insufficient evidence (funds, and companies whose filings the card cannot score). A symbol in the usual blue has no verdict yet: the card is worked out in the background the first time a name is seen, a handful at a time, and the colours fill in as you pull down to refresh. Once worked out, a colour is kept and shows at once the next time. The verdict is the same one the Decision Card on the website shows, worked out from the filings and the price, and is held for a few hours.

A grey symbol has no verdict, so the line under it says what it is instead. A fund reads Fund · 8.0% distribution yield, the checked trailing twelve month yield; it reads just "Fund" when no yield can be established yet (a fund listed less than a year ago that has not paid), and a money market fund reads "Money market fund". A company that the card cannot score reads its Q business quality score and, when it is spending more cash than it brings in, its cash runway: cash and equivalents divided by the past year's free cash flow burn, so "Cash runway 2.2 years" means today's cash covers about two years at that rate (short-term investments are not counted). These readings never change the colour, which always means the Decision Card verdict, and the Decision Card itself is unchanged. Closed-end funds with very high yields, such as CLM and CRF, pay a large part of their distributions by returning capital, so a high yield there is not income in the usual sense.

What it is not

The app keeps a record you type in. It does not place trades, it does not connect to a broker yet, and it is not tax reporting: realized figures are for your own recordkeeping. Deleting your account in the app (Account, then Delete account) deletes it on the website too, because it is one account, and cancels an active website subscription first.

More Data Pages

The rest of the DATA menu:

  • Decision Record: dated Decision Card calls on S&P 500 companies, graded twelve months later against the S&P 500. The public page is at quantamatica.com/decision-record.
  • Options Scanner: flagged options orders (unusual volume across 600+ tickers), plus the out-of-the-money put income board (high-volatility names above a selectable Minimum EFM score) and the in-the-money put tool for buying shares at a discount. The flagged orders board is held in memory and shared for this run of the site: opening the page shows the last scan, the same for everyone, stamped with when it ran. A site update clears it until someone presses Scan now (a scan takes several minutes, one runs at a time, and there is a ten-minute pause after each). From 9:31 Eastern each trading day the time stamp turns amber if the board is from before that morning's open, which is the cue to scan. A scan that finds no orders, such as on a closed market, keeps the previous board. The AI market feed above it is written once per scan and shared for that same run.
  • High Frequency Trading: a reference view on high frequency market structure and how it shapes the order flow behind the prices you see.
  • Big Blocks: large block trades, the prints big enough to indicate institutional rather than retail activity.
  • Gov. Contracts: federal contract awards from USAspending, so you can see which public companies are winning government money.
  • Global: the world index comparison chart, covered above under Global Indices.
  • QuantOne: the quantitative research area.
  • Portfolio: the full-page portfolio view, covered above under Portfolios.

Version Number

The version number sits in the top navigation bar, immediately to the right of INVITE, and reads as V. followed by three decimals.

It advances every time a change is released, so it identifies exactly which build you are running. If you contact support, read this number out first. It is the fastest way to establish whether you are on the current release or your browser is holding an older cached copy, which resolves a good share of reported problems on its own.

Buffett Criteria

This scanner runs a two-stage Discounted Cash Flow analysis on every S&P 100 company each morning at 9:40 AM ET, and shows only the stocks that pass all five quality gates AND are trading below their calculated fair value.

The five quality gates (all must pass):

  • ROE ≥ 15%: Return on Equity. The company generates at least 15 cents of profit for every dollar of shareholder equity. Warren Buffett considers sustained ROE above 15% the hallmark of a durable competitive advantage.
  • Debt/Equity ≤ 0.8: The company has manageable debt. Buffett avoids companies that rely heavily on borrowed money to generate returns.
  • Net Profit Margin ≥ 8%: The company keeps at least 8 cents of every dollar of revenue as profit. High margins signal pricing power.
  • Revenue Growth > 0%: The business is growing, not shrinking.
  • EPS positive 3 consecutive years: The company has been consistently profitable, not relying on one-time gains.

The DCF calculation:

  • Stage 1 (years 1–5): Company's own analyst consensus growth rate
  • Stage 2 (years 6–10): 15% fixed (mature growth phase)
  • Discount rate: 10% (Buffett's hurdle rate)
  • Terminal multiple: 20× P/E
  • Margin of safety: 30% below calculated intrinsic value
Example: AMD:
Owner Earnings: 4.17 · Growth (Stage 1): 25% · Stage 2: 15% · Discount: 10%
Intrinsic Value: ~197 · After 30% margin of safety: ~138
If AMD trades below 138, it appears in the Buffett Criteria row as a potential long-term buy.

The list is intentionally short. In a fairly valued or expensive market, few or no stocks may appear. That itself is useful information: it tells you quality companies are not on sale.

This is a quantitative screen, not a buy recommendation. Always research a company fully before investing.

EFM Signal

EFM is Quantamatica's proprietary multi-factor signal engine. Every weekday morning it scores all five hundred stocks in the S&P 500, in three passes between 10:00 and 10:30 AM ET once the opening volatility has settled, and flags the names with the strongest combined technical and fundamental setup for the week ahead. The three passes merge into one board rather than replacing each other, so a name flagged at 10:00 stays up while the rest of the list fills in. The full scored list is held in memory. After a site update, until the next weekday morning scan, the list on screen is the names already written to the signal journal: the ones that reached the threshold on the last scan. That is a shorter list than the full five hundred, and it is not a blank board.

The score runs 0 to 100 and is a weighted blend of ten factors in three groups:

  • Technical: price against the 50-day moving average, RSI entry zone, MACD crossover (read on the latest bar and the one before it, so a fresh cross still counts), and volume against its 10-day average.
  • Fundamental: the valuation slot described below, earnings per share growth, revenue growth, and operating cash flow growth measured year over year on the last full fiscal year.
  • Sentiment: insider buying against selling, and the Fear & Greed environment.

The valuation slot adapts to the company. For a normal operating company it is the PEG ratio. For banks, insurers and consumer lenders, where PEG carries no meaning, it switches to price-to-book. For property trusts it is set aside entirely. It stays one slot with one weight: only the metric behind it changes.

A factor that does not fit a business is set aside, not scored as a zero. A bank has no meaningful gross cash flow growth, so that factor is dropped for banks and the remaining weights are spread back out to total 100 over what is left. In the breakdown table those cells read Financial instead of a number, and the WT column shows the effective weight each factor actually carried after that adjustment, so it still adds up to about 100.

When a stock scores above the EFM threshold, its symbol drops into the search field in light blue: a standing alert that this name has a strong multi-factor setup right now.

Signal history. Every name that reaches the threshold is written to a journal, so past signals survive restarts and releases. The EFM tab carries a Signal history list, global across all tickers and newest first, showing the date, time and score of each past signal; click a row to load that name. On the price chart, a dashed line marks every past EFM signal on the loaded ticker within the visible range. The list accumulates forward from the day the journal is switched on.

What EFM is designed for:
Weekly swing trades: positions held 3 to 7 days, entering after the first-hour noise has resolved, targeting names where technicals and fundamentals line up at the same time. It is not an intraday scalping tool.

The universe is the S&P 500, refreshed once a year at the June index reconstitution; a renamed or delisted ticker drops itself when its data stops resolving. The weights behind the score are stated priors, set and adjusted by Quantamatica's research team from what has historically produced quality setups, not fitted to past returns. The model is built to evolve as new factors are added.

Q, Business Quality

Q, business quality, is shown next to the EFM score. It is a separate 0 to 100 reading of how good the underlying business is, and it is never blended into the EFM score: the two answer different questions and are kept side by side on purpose. Businesses Q will not score, such as banks, insurers and property trusts, show a dot rather than a number.

Disclaimer

For informational purposes only, not financial advice. For full legal terms and limitations, see Terms of Use.

© 2026 Quantamatica Financial Services. Terms · Privacy