View as markdown
Concepts

Signals

The column axis of the state table: 421+ computed signal columns on every ticker row, from raw price to RSI to insider activity. Each is referenceable by bare name across the entire API.

Prefer to browse them interactively and watch a signal fire on a chart? Open Explore →

What a signal is

A computed column, not a raw feed.

A signal is one column of the computed state table: a value our pipeline derives from market data and keeps current across the 20,798+ tickers in the universe — NULL on rows it doesn't apply to. Some are the record itself (price, volume_today), most are computation on top of it — rsi_14, above_sma_200, relative_volume, insider_cluster_buy. You don't compute anything: the indicator math, the windowing, and the refresh already ran by the time you query.

Signals come in two shapes. Fields carry a value (numeric, string, date). Flags are booleans with a published condition over other columns — shown on the flag's reference page, so what "firing" means is not a black box.

One name works everywhere: the same identifier is the field on a ticker response, the column in a scan WHERE clause, the series on a history pull, and the condition on a webhook. If you know a signal's name, you know how to use it everywhere it's carried.

Three tenses

Signal state is the noun; there are three ways to read it.

Live — the current row, recomputed on each column's own cadence, up to every minute. As-of — the row as it stood at a past moment, via ?asof= on the same reads. Webhook — the future tense: subscribe to a condition and get pushed when it becomes true. Every signal speaks the live and webhook tenses; most are historized for as-of too — each reference page states exactly which reads carry it.

The catalog

Every live signal, grouped by how far it is derived from the raw tape. Click any name for its full reference page — definition, cadence, history, and runnable queries.

Signals are organized by how far they are derived from the raw tape: the record itself (Price, Volume), behaviors recognized directly from it (Price action), signals computed through a named indicator (Technicals) — then the company side: Fundamentals (reported), Events (calendar), Profile (reference), Analyst ratings (opinion), and News (text). Every signal row on /v2/signals carries its group and category, and the same tree ships in the response's taxonomy block.

Price

Price levels and records: quotes, bars, session levels, and rolling highs & lows — plus the signals those levels own (at / above / approaching / breaking).

Trades & quotes

Last trade and the current quote: price, bid/ask, and depth.

ColumnTypeDescription
asknumericBest ask from the consolidated NBBO at the most recent snapshot tick.
universe all tickers · cadence 1 min · mkt hrs
ask_sizeintegerRound lots at the ask. Raw count — NOT multiplied by 100.
universe all tickers · cadence 1 min · mkt hrs
bidnumericBest bid from the consolidated NBBO at the most recent snapshot tick.
universe all tickers · cadence 1 min · mkt hrs
bid_sizeintegerRound lots at the bid. Raw count — NOT multiplied by 100. Multiply by 100 to get share count.
universe all tickers · cadence 1 min · mkt hrs
pricenumericMost recent trade price.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d

Latest bars

OHLC of the latest minute bar and the prior session's daily bar.

ColumnTypeDescription
min_closenumericCurrent minute bar’s most-recent close (last print).
universe all tickers · cadence 1 min · mkt hrs
min_highnumericCurrent minute bar’s running high.
universe all tickers · cadence 1 min · mkt hrs
min_lownumericCurrent minute bar’s running low.
universe all tickers · cadence 1 min · mkt hrs
min_opennumericCurrent minute bar’s open. Updates every snapshot tick during market hours.
universe all tickers · cadence 1 min · mkt hrs
prev_day_highnumericPrevious trading day’s session high.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d
prev_day_lownumericPrevious trading day’s session low.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d
prev_day_opennumericPrevious trading day’s official open.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d
previous_closenumericOfficial prior-session close.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d

Session levels & position

Today's session levels (open, high, low) and where price sits relative to them and yesterday's landmarks.

ColumnTypeDescription
session_highnumericHighest trade so far today.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
session_lownumericLowest trade so far today.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
session_opennumericToday’s opening print.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
above_premarket_highstateClose above the pre-market session high.
close > max(price[04:00..09:30])
universe all tickers · cadence 1 min · mkt hrs · firing continuous
above_session_openstateClose above today’s session-open price.
close > open_0930
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
above_yesterday_closestateClose above the prior session’s close.
close > close_prev
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
above_yesterday_highstateClose above the prior session’s intraday high.
close > high_prev
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
at_session_highstateAt today’s intraday session high (within tolerance).
price >= session_high * 0.999
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
at_session_lowstateAt today’s intraday session low (within tolerance).
price <= session_low * 1.001
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
below_premarket_lowstateClose below the pre-market session low.
close < min(price[04:00..09:30])
universe all tickers · cadence 1 min · mkt hrs · firing continuous
below_yesterday_lowstateClose below the prior session’s intraday low.
close < low_prev
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
tested_session_high_recentstatePrice touched today’s session high within the last 5 minutes.
max(close, last 5 min) >= session_high * 0.999
universe all tickers · cadence 1 min · mkt hrs · firing continuous
tested_session_low_recentstatePrice touched today’s session low within the last 5 minutes.
min(close, last 5 min) <= session_low * 1.001
universe all tickers · cadence 1 min · mkt hrs · firing continuous

Highs & lows

Rolling-window highs and lows (5-day, 20-day, 52-week), their dates and distances, and the at/approaching/breaking signals those levels own.

ColumnTypeDescription
days_since_52w_highintegerTrading days since the most recent 52-week high.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
days_since_52w_lowintegerTrading days since the most recent 52-week low.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
high_20dnumericHighest trade in the trailing 20 trading days.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
high_20d_eodnumericHighest close over the last 20 trading sessions. Close-basis. For the intraday-wick variant use `at_20d_high`.
universe all tickers · cadence post-close daily
high_52wnumericHighest trade in the trailing 52 weeks (live, includes today).
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
high_52w_datedateDate the trailing-52-week high was set. Useful for "fresh 52w highs in the last 30 days" scans.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
high_52w_eodnumericHighest close over the trailing 52 weeks. The `_eod` distinguishes from the canonical intraday `52_week_high` (which captures wicks).
universe all tickers · cadence post-close daily
high_5dnumericHighest intraday high over the last 5 trading sessions, inclusive of the current session.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
high_5d_eodnumericHighest close over the last 5 trading sessions. Close-basis (no intraday wicks) — pair with `high_5d` to distinguish.
universe all tickers · cadence post-close daily
last_20d_high_datedateDate the trailing-20-day high was set.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
last_20d_low_datedateDate the trailing-20-day low was set.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
low_20dnumericLowest trade in the trailing 20 trading days.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
low_20d_eodnumericLowest close over the last 20 trading sessions. Close-basis.
universe all tickers · cadence post-close daily
low_52wnumericLowest trade in the trailing 52 weeks (live, includes today).
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
low_52w_datedateDate the trailing-52-week low was set.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
low_52w_eodnumericLowest close over the trailing 52 weeks.
universe all tickers · cadence post-close daily
low_5dnumericLowest intraday low over the last 5 trading sessions, inclusive of the current session.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
low_5d_eodnumericLowest close over the last 5 trading sessions. Close-basis.
universe all tickers · cadence post-close daily
pct_from_52w_highnumericPercent below the 52-week high. Always >= 0 (use the `at_52w_high` flag to test highs).
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
pct_from_52w_lownumericPercent above the 52-week low. Always >= 0.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
position_in_52w_rangenumericWhere the live price sits in the 52-week range, 0–100. 0 = at low, 100 = at high.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
52_week_highstatePrice printed a new 52-week high today.
high > max(high) over the prior 252 sessions
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d · firing sticky
52_week_lowstatePrice printed a new 52-week low today.
low < min(low) over the prior 252 sessions
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d · firing sticky
approaching_52w_highstatePrice is within 5% of the 52-week high.
close >= high_52w * 0.95 AND close < high_52w AND (close > sma_20 AND close > sma_50, OR >= 3 of last 5 days up) AND volume > avg_volume_10d
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
approaching_52w_lowstatePrice is within 5% of the 52-week low.
close <= low_52w * 1.05 AND close > low_52w AND (close < sma_20 AND close < sma_50, OR >= 3 of last 5 days down) AND volume > avg_volume_10d
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
at_20d_highstatePrice is at or above the 20-day high.
close >= high_20d
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
at_20d_lowstatePrice is at or below the 20-day low.
close <= low_20d
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
at_52w_highstatePrice is within 0.5% of the 52-week high.
close >= high_52w
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
at_52w_lowstatePrice is within 0.5% of the 52-week low.
close <= low_52w
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
breaking_above_20d_higheventBreaking above its 20-day high on elevated volume.
Price at or above the 20-day high with session volume at least 2x the 10-day average.
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1d · firing sticky
breaking_below_20d_loweventBreaking below its 20-day low on elevated volume.
Price at or below the 20-day low with session volume at least 2x the 10-day average.
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1d · firing sticky

Volume

How much traded: absolute quantities and averages, and activity relative to baseline.

Volume & averages

Absolute trading quantities: today's and prior volumes, dollar volume, averages, bar-level counts.

ColumnTypeDescription
avg_volume_10dbigint10-day trailing average daily volume.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d
avg_volume_30dbigint30-day trailing average daily volume.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d
day_dollar_volumenumericToday’s cumulative dollar volume traded.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
min_day_accumulated_dollar_volumenumericToday’s cumulative dollar volume across the session so far.
universe all tickers · cadence 1 min · mkt hrs
min_day_accumulated_volumebigintToday’s cumulative shares traded across the session so far (4 AM ET onward).
universe all tickers · cadence 1 min · mkt hrs
min_dollar_volumenumericCurrent minute bar’s dollar volume (close × volume approximation).
universe all tickers · cadence 1 min · mkt hrs
min_trade_countintegerCurrent minute bar’s number of trades.
universe all tickers · cadence 1 min · mkt hrs
min_volumeintegerCurrent minute bar’s accumulated shares traded.
universe all tickers · cadence 1 min · mkt hrs
prev_day_volumebigintPrevious trading day’s total volume (raw shares).
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d
volume_todaybigintShares traded so far today.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d

Relative & unusual volume

Trading activity relative to baseline: relative volume, bursts, unusual-volume flags, liquidity conditions.

ColumnTypeDescription
relative_volumenumericRatio of today’s pace-adjusted volume to the 10-day average. 2.0 means 2× normal.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
volume_change_vs_avgnumericRatio of today’s pace-adjusted volume to its 10-day average. Numeric surface of the same denominator `relative_volume` uses.
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1m/1h/1d
volume_trend_5dtextSlope of daily volume regressed over the last 5 trading days. Positive = building, negative = drying.
universe all tickers · history partial · cadence post-close daily · intervals 1d
high_volume_alerteventToday’s volume is at least 2× the 30-day average.
minute_volume > 5 x (avg_volume_10d / 390), i.e. this minute's volume exceeds 5x the typical per-minute pace from the 10-day average
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky
illiquidstateThinly traded — 10-day average volume is under 100k shares.
avg_volume_10d < 100000
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing continuous
low_volume_regimestateThis name is in a sustained quiet stretch.
avg(volume, 10) <= 0.75 * avg_volume_10d
universe all tickers · cadence 1 min · mkt hrs · firing continuous
quiet_minutestateA sustained quiet stretch — 10-minute volume average well below recent baseline.
avg(volume, 10m) < 0.5 * avg(volume, prior 30m)
universe all tickers · cadence 1 min · mkt hrs · firing continuous
volume_burst_3xeventCurrent minute volume ≥ 3× recent average.
volume >= 3 * avg(volume, 30 min prior)
universe all tickers · cadence 1 min · mkt hrs · firing continuous
volume_burst_5xeventCurrent minute volume ≥ 5× recent average.
volume >= 5 * avg(volume, 30 min prior)
universe all tickers · cadence 1 min · mkt hrs · firing continuous

Price action

How price is moving: behaviors recognized directly from the price record — changes, gaps, momentum episodes, range structures — with no indicator in between.

Performance & change

Price change over standard horizons — today through 1 year — plus streaks and day-mover flags.

ColumnTypeDescription
change_1mnumericPercent change vs. close ~21 trading days ago. Daily; see `change_1w` for note.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
change_1wnumericPercent change in close vs. the close 5 trading days ago. Computed post-close; does NOT update intraday — use `from_open_pc` + `day_change_pct` for intraday-aware change.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
change_1ynumericPercent change vs. close ~252 trading days ago.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1m/1h/1d
change_3mnumericPercent change vs. close ~63 trading days ago.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
change_6mnumericPercent change vs. close ~126 trading days ago.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1m/1h/1d
change_ytdnumericPercent change since the first trading day of the calendar year.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
day_changenumericAbsolute change vs `previous_close`.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
day_change_pctnumericPercent change vs `previous_close`. Expressed as a decimal fraction (0.05 = 5%), not a whole percent.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
days_downintegerConsecutive trading days closing lower than the prior close. Resets to 0 on an up day.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
days_upintegerConsecutive trading days closing higher than the prior close. Resets to 0 on a down day.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
from_open_pcnumericIntraday: percent change from today’s session open to the latest snapshot price. Resets at session boundary.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
price_down_3pcteventIntraday move of -3% or worse vs prior close.
day_change_pct <= -3
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky
price_up_3pcteventIntraday move of 3%+ vs prior close.
day_change_pct >= 3
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky
top_gainerstateAmong the session's top 20 gainers.
Ranks in the top 20 by day_change_pct among active tickers with price above $1 and session volume above 100k shares.
universe all tickers · cadence 1 min · mkt hrs · firing continuous
top_loserstateAmong the session's top 20 losers.
Ranks in the bottom 20 by day_change_pct among active tickers with price above $1 and session volume above 100k shares.
universe all tickers · cadence 1 min · mkt hrs · firing continuous

Gaps

Opening gaps: size, direction, extremes, and intraday fill.

ColumnTypeDescription
gapnumericOvernight gap as percent: `(today_open − prev_close) / prev_close`. Signed — positive = gap up, negative = gap down. Use this for custom gap thresholds; the boolean shortcuts `gap_up` (≥3%) and `gap_up_extreme` (≥10%) cover the canonical levels.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
gap_pctnumericPercent change of `session_open` vs `previous_close`. One value per session.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
gap_downeventToday opened 3%+ below prior close.
(close_prev - open) / close_prev >= 0.03 AND price still below close_prev (gap has not been reclaimed)
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky
gap_down_extremeeventToday opened 10%+ below prior close.
(close_prev - open) / close_prev >= 0.10
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky
gap_filled_todayeventToday’s opening gap was closed by an intraday move.
Opened with gap >= 0.5% AND intraday range straddled close_prev.
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky
gap_upeventToday opened 3%+ above prior close.
(open - close_prev) / close_prev >= 0.03 AND price still above close_prev (gap has not been filled negative)
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky
gap_up_extremeeventToday opened 10%+ above prior close.
(open - close_prev) / close_prev >= 0.10
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky

Intraday momentum

Directional strength read straight off the session's bars: drives, drifts, spikes, rallies, exhaustion.

ColumnTypeDescription
afternoon_drift_upstateAfternoon session net up.
close_1600 > close_1200
universe all tickers · cadence 1 min · mkt hrs · firing sticky
last_hour_rallyeventFinal hour of session net up.
close_1600 > close_1500 * 1.005
universe all tickers · cadence 1 min · mkt hrs · firing sticky
last_hour_selloffeventFinal hour of session net down.
close_1600 < close_1500 * 0.995
universe all tickers · cadence 1 min · mkt hrs · firing sticky
microspike_downeventSingle 1-minute candle return ≤ −1%.
(close - open) / open <= -0.01
universe all tickers · cadence 1 min · mkt hrs · firing continuous
microspike_upeventSingle 1-minute candle return ≥ +1%.
(close - open) / open >= 0.01
universe all tickers · cadence 1 min · mkt hrs · firing continuous
momentumstatemomentum present
universe all tickers · cadence 1 min · mkt hrs · firing continuous
momentum_downstateSustained downward momentum on the daily bars.
Three or more consecutive down days whose average daily move exceeds about 1%.
universe all tickers · cadence 1 min · mkt hrs · firing continuous
momentum_exhaustion_downeventDownward momentum showing signs of exhaustion.
rsi_14 < 30 AND days_down >= 5
universe all tickers · history never fired yet · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky
momentum_exhaustion_upeventUpward momentum showing signs of exhaustion.
rsi_14 > 70 AND days_up >= 5
universe all tickers · history never fired yet · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky
momentum_strong_downeventStrong downward momentum across multiple measures.
days_down >= 3 AND volume_trend_5d = 'increasing'
universe all tickers · history partial · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky
momentum_strong_upeventStrong upward momentum across multiple measures.
days_up >= 3 AND volume_trend_5d = 'increasing'
universe all tickers · history partial · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky
momentum_upstateSustained upward momentum on the daily bars.
Three or more consecutive up days whose average daily move exceeds about 1%.
universe all tickers · cadence 1 min · mkt hrs · firing continuous
morning_strengthstateFirst two hours of session net positive.
close_1130 > open_0930
universe all tickers · cadence 1 min · mkt hrs · firing sticky
opening_drive_downeventFirst 5 minutes of session down < −0.5%.
close_0935 < open_0930 * 0.995
universe all tickers · cadence 1 min · mkt hrs · firing sticky
opening_drive_upeventFirst 5 minutes of session up > +0.5%.
close_0935 > open_0930 * 1.005
universe all tickers · cadence 1 min · mkt hrs · firing sticky
pre_close_drift_downeventLast 10 minutes before close net down.
close_1600 < close_1550
universe all tickers · cadence 1 min · mkt hrs · firing sticky
pre_close_drift_upeventLast 10 minutes before close net up.
close_1600 > close_1550
universe all tickers · cadence 1 min · mkt hrs · firing sticky
pre_earnings_driftstateStock has moved ≥5% (absolute) over the trailing week with earnings within 7 days — a setup the literature shows often continues through the report.
days_to_earnings BETWEEN 1 AND 7 AND ABS(change_1w) >= 0.05
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing continuous
rapid_move_down_5mstatePrice down more than −0.5% in the last 5 minutes.
(close - close_5m_ago) / close_5m_ago <= -0.005
universe all tickers · cadence 1 min · mkt hrs · firing continuous
rapid_move_up_5mstatePrice up more than +0.5% in the last 5 minutes.
(close - close_5m_ago) / close_5m_ago >= 0.005
universe all tickers · cadence 1 min · mkt hrs · firing continuous
three_down_hoursstateThree consecutive lower hourly closes.
close < close_1h_ago < close_2h_ago < close_3h_ago
universe all tickers · cadence 1 min · mkt hrs · firing continuous
three_up_hoursstateThree consecutive higher hourly closes.
close > close_1h_ago > close_2h_ago > close_3h_ago
universe all tickers · cadence 1 min · mkt hrs · firing continuous

Ranges & reversals

Range structures and their resolution: opening range, breaks, consolidation, pullbacks, reversals, unusual range width.

ColumnTypeDescription
above_opening_rangestatePrice is trading above the first 15-minute opening-range high.
close > or_high (OR = first 15 min after 09:30 ET)
universe all tickers · cadence 1 min · mkt hrs · firing continuous
below_opening_rangestatePrice is trading below the first 15-minute opening-range low.
close < or_low (OR = first 15 min after 09:30 ET)
universe all tickers · cadence 1 min · mkt hrs · firing continuous
consolidating_15mstateLast 15 minutes traded in a tight range.
high_15m - low_15m < 0.5 * ((max(close, 30m) - min(close, 30m)) / 15) (ATR-30m proxy, not true ATR)
universe all tickers · cadence 1 min · mkt hrs · firing continuous
consolidationstatePrice is range-bound — the last 5 sessions span less than 5%.
(max(high) − min(low)) / midpoint < 0.05 over 5 bars
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1d · firing continuous
expanded_hourly_rangestateThis hour’s range is unusually wide.
(high - low) > 1.5 * atr_hourly_20
universe all tickers · cadence 1 min · mkt hrs · firing continuous
hourly_reversal_bearisheventHigher high, lower close than the prior hour.
high > high_1h_ago AND close < close_1h_ago
universe all tickers · cadence 1 min · mkt hrs · firing continuous
hourly_reversal_bullisheventLower low, higher close than the prior hour.
low < low_1h_ago AND close > close_1h_ago
universe all tickers · cadence 1 min · mkt hrs · firing continuous
in_opening_rangestatePrice is inside the first-hour high/low range.
or_low <= price <= or_high (OR = first 15 min after 09:30 ET)
universe all tickers · cadence 1 min · mkt hrs · firing continuous
narrow_hourly_rangestateThis hour’s range is unusually narrow.
(high - low) < 0.5 * atr_hourly_20
universe all tickers · cadence 1 min · mkt hrs · firing continuous
pullbackstatePullback to the 20-day moving average within an uptrend.
in_uptrend (sma_50 > sma_200 AND price > sma_200) AND price below the 20-day or 50-day SMA by < 2% AND price down >= 2% from the 5-day high. Live evaluation at minute resolution.
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1d · firing continuous
range_break_15m_downeventBroke below the prior 15-minute low.
close < min(low, prior 15 min)
universe all tickers · cadence 1 min · mkt hrs · firing continuous
range_break_15m_upeventBroke above the prior 15-minute high.
close > max(high, prior 15 min)
universe all tickers · cadence 1 min · mkt hrs · firing continuous
range_expansioneventToday's true range > 2 × ATR(14) with volume — direction-agnostic regime-change tag.
true_range > 2 * atr_14 AND volume > 1.5 * avg_volume_10d AND volume > 100,000
universe all tickers · history never fired yet · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing sticky
repeated_test_of_highstateTested today’s session high three or more times — failed-breakout setup.
Close within 0.1% of the session high (close >= session_high * 0.999) on at least 3 minutes this session.
universe all tickers · cadence 1 min · mkt hrs · firing continuous
repeated_test_of_lowstateTested today’s session low three or more times — failed-breakdown setup.
Close within 0.1% of the session low (close <= session_low * 1.001) on at least 3 minutes this session.
universe all tickers · cadence 1 min · mkt hrs · firing continuous
sticky_breakoutstateLatches on when price makes a 52-week high and stays on until the nightly reset — a persistent breakout tag.
set on a 52-week-high breakout; reset each night
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1d · firing continuous

Technicals

Named technical indicators (SMA, EMA, VWAP, RSI, stochastics, MACD, ADX, Bollinger, ATR) and every signal computed through one. The test: a named mathematical object sits between the bars and the signal.

Moving averages & VWAP

SMAs, EMAs, and VWAPs, with the distances, above/below states, and crosses they own.

ColumnTypeDescription
day_vwapnumericToday’s session volume-weighted average price.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
ema_12numeric12-day EMA. Fast-side input of canonical MACD (`macd = ema_12 − ema_26`).
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
ema_21numeric21-day EMA. Often paired with `ema_9` for short-trend bias; also serves as a dynamic-support reference.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
ema_26numeric26-day EMA. Slow-side input of canonical MACD (`macd = ema_12 − ema_26`).
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
ema_9numeric9-day exponential moving average of close. Most-recent-weighted; reacts faster than the same-period SMA. Commonly paired with `ema_21` for short-trend bias.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
min_vwapnumericCurrent minute bar’s volume-weighted average price.
universe all tickers · cadence 1 min · mkt hrs
pct_from_sma_10numericPercent difference between current close and `sma_10`. Positive = above MA, negative = below. Continuous version of the `above_sma_10` boolean.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
pct_from_sma_100numericPercent difference between current close and `sma_100`. Daily-cadence because the slow MA changes slowly.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1m/1h/1d
pct_from_sma_20numericPercent difference between current close and `sma_20`. Continuous version of the `above_sma_20` boolean.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
pct_from_sma_200numericPercent distance from the 200-day SMA. Negative when price is below the average.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1m/1h/1d
pct_from_sma_50numericPercent distance from the 50-day SMA. Negative when price is below the average.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
pct_from_vwapnumericPercent distance from today’s VWAP.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
prev_day_vwapnumericPrevious trading day’s session VWAP.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d
sma_10numeric10-day simple moving average.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
sma_100numeric100-day simple moving average of close. Slower than `sma_50`, faster than `sma_200` — useful for intermediate-term trend.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1d
sma_20numeric20-day simple moving average.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
sma_200numeric200-day simple moving average.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1d
sma_50numeric50-day simple moving average.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
vwapnumericDaily volume-weighted average price from market open through the most recent print. Updates intraday with each new tick.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
above_sma_10statePrice is above the 10-day simple moving average.
close > sma_10
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
above_sma_20statePrice is above the 20-day simple moving average.
close > sma_20
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
above_sma_200statePrice is above the 200-day simple moving average.
close > sma_200
universe all tickers · history full · since 2004 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
above_sma_50statePrice is above the 50-day simple moving average.
close > sma_50
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
above_vwapstatePrice is above today’s volume-weighted average price.
close > vwap
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
above_vwap_minutestateCurrent price above session VWAP.
close > vwap_session
universe all tickers · cadence 1 min · mkt hrs · firing continuous
death_crossevent50-day SMA crossed below 200-day SMA today.
Yesterday: sma_50 ≥ sma_200. Today: sma_50 < sma_200.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1d · firing sticky
death_regimestateLong-term downtrend regime — 50-day SMA below 200-day SMA.
sma_50 < sma_200
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1m/1h/1d · firing continuous
golden_crossevent50-day SMA crossed above 200-day SMA today.
Yesterday: sma_50 ≤ sma_200. Today: sma_50 > sma_200.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1d · firing sticky
golden_regimestateLong-term uptrend regime — 50-day SMA above 200-day SMA.
sma_50 > sma_200
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1m/1h/1d · firing continuous
held_above_vwap_30mstatePrice has stayed above session VWAP without dipping for at least 30 minutes.
close > vwap_session for every minute in the last 30
universe all tickers · cadence 1 min · mkt hrs · firing continuous
held_below_vwap_30mstatePrice has stayed below session VWAP without lifting for at least 30 minutes.
close < vwap_session for every minute in the last 30
universe all tickers · cadence 1 min · mkt hrs · firing continuous
sma_10_crossed_above_50_todaystateThe 10-day SMA crossed above the 50-day SMA today — a short-term bullish cross.
sma_10 crossed above sma_50 vs. the prior session
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d · firing sticky
sma_10_crossed_below_50_todaystateThe 10-day SMA crossed below the 50-day SMA today — a short-term bearish cross.
sma_10 crossed below sma_50 vs. the prior session
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d · firing sticky
vwap_cross_downeventCrossed below session VWAP this minute.
close_prev_min >= vwap_session AND close < vwap_session
universe all tickers · cadence 1 min · mkt hrs · firing sticky
vwap_cross_upeventCrossed above session VWAP this minute.
close_prev_min <= vwap_session AND close > vwap_session
universe all tickers · cadence 1 min · mkt hrs · firing sticky

Oscillators

Bounded momentum oscillators: RSI and stochastics, with their threshold flags.

ColumnTypeDescription
rsi_14numericRelative Strength Index, 14-period. Range 0–100.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
rsi_7numericRelative Strength Index over 7 periods - a faster, more sensitive RSI. Range 0-100.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
stochastic_dnumericStochastic oscillator %D: 3-period smoothing of %K.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
stochastic_knumericStochastic oscillator %K: where price sits within its recent high-low range, 0-100.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
rsi_overboughtstateRSI(14) is in overbought territory.
rsi_14 > 70
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
rsi_oversoldstateRSI(14) is in oversold territory.
rsi_14 < 30
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous

Trend & direction

Trend direction and strength: MACD, ADX/±DI, SMA-based trend reads, and reversal composites.

ColumnTypeDescription
adx_14numericAverage Directional Index (14-period): trend strength from 0 to 100.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
macd_histogramnumericMACD line minus signal. Positive when bullish, negative when bearish.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
macd_linenumericMACD line (12-EMA minus 26-EMA).
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
macd_signalnumericMACD signal line (9-EMA of MACD line).
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
minus_dinumeric-DI (14-period): the bearish directional-movement component of the ADX system.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
plus_dinumeric+DI (14-period): the bullish directional-movement component of the ADX system.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
trend_longtextLong-term trend classification from `sma_200` slope. One of `uptrend`, `downtrend`, `sideways`.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1m/1h/1d
trend_mediumtextMedium-term trend classification from `sma_50` slope. One of `uptrend`, `downtrend`, `sideways`.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
trend_shorttextShort-term trend classification from short-MA slope. One of `uptrend`, `downtrend`, `sideways`.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1m/1h/1d
in_downtrendstateStacked downtrend across short, medium, and long horizons.
close < sma_50 AND sma_50 < sma_200
universe all tickers · history full · since 2004 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
in_uptrendstateStacked uptrend across short, medium, and long horizons.
close > sma_50 AND sma_50 > sma_200
universe all tickers · history full · since 2004 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
macd_above_signalstateMACD line is above its signal line.
macd > macd_signal
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
macd_below_signalstateMACD line is below its signal line.
macd < macd_signal
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1d · firing continuous
trend_reversal_bearish_todayeventTrend flipped from up to down today.
Yesterday: sma_50 > sma_200. Today: macd_bearish AND rsi_14 < 50.
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1d · firing sticky
trend_reversal_bullish_todayeventTrend flipped from down to up today.
Yesterday: sma_50 < sma_200. Today: macd_bullish AND rsi_14 > 50.
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1d · firing sticky

Volatility & bands

Volatility measures and deviation envelopes: ATR, Bollinger machinery, VWAP σ-bands.

ColumnTypeDescription
atr_14numeric14-day Average True Range.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
atr_percentnumericATR(14) as a percent of price. Useful as a volatility filter.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
bollinger_lowernumericLower Bollinger band (20-period, 2σ).
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
bollinger_middlenumeric20-day SMA — the centerline of the Bollinger band. `bollinger_upper` and `bollinger_lower` are already documented; this fills in the missing middle.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
bollinger_pct_bnumericPosition within Bollinger bands. 0 = at lower band, 1 = at upper band, >1 = outside.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
bollinger_uppernumericUpper Bollinger band (20-period, 2σ).
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
bollinger_widthnumeric`(bollinger_upper − bollinger_lower) / bollinger_middle`. Normalized width — measures volatility regime. Narrow widths often precede expansion (see `bollinger_squeeze` in flags.ts).
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
vwap_lower_bandnumericVWAP − 2 standard deviations. Dynamic support reference.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
vwap_upper_bandnumericVWAP + 2 standard deviations of intraday price action. Dynamic resistance reference.
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d
at_bollinger_lowerstatePrice has reached the lower Bollinger band.
abs(close - bb_lower) / close < 0.02 (within 2% of the lower band, above or below)
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
at_bollinger_upperstatePrice has reached the upper Bollinger band.
abs(close - bb_upper) / close < 0.02 (within 2% of the upper band, above or below)
universe all tickers · history full · since 2003 · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
bollinger_squeezestateBollinger band width compressed to a multi-week low — volatility is contracted.
bollinger_width < 0.04
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d · firing continuous

Fundamentals

Company financials: statement lines as reported, ratios derived from them, market-price multiples on top of them, share structure, and short positioning.

Income statement

Income-statement lines as reported, EPS, and their growth rates.

ColumnTypeDescription
basic_earnings_per_sharenumericBasic EPS for the most-recently reported quarter. Signed.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
benefits_costs_expensesbigintBenefits and post-employment costs line item, where reported. Mostly insurance / utility issuers.
universe all tickers · cadence post-close daily
cost_of_revenuebigintCost of goods sold for the quarter.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
costs_and_expensesbigintTotal costs and expenses reported on the income statement (COGS + opex).
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
diluted_eps_ttmnumericTrailing-12m diluted EPS.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
earnings_growth_yoynumericYear-over-year EPS growth percent from the most recently reported quarter vs. the same quarter prior year. Signed; positive = growth.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
ebitdabigintEarnings before interest, taxes, depreciation, and amortization (TTM).
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
epsnumericEarnings per share (trailing twelve months).
universe all tickers · history partial · cadence post-close daily · intervals 1d
gross_profitbigint`revenues − cost_of_revenue` for the quarter.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
gross_profit_ttmbigintTrailing-12m gross profit.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
income_loss_from_continuing_operations_after_taxbigintAfter-tax income from continuing operations for the quarter.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
income_loss_from_continuing_operations_before_taxbigintPre-tax income from continuing operations for the quarter.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
income_tax_expense_benefitbigintIncome tax expense (positive) or benefit (negative) for the quarter.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
income_tax_expense_benefit_deferredbigintDeferred portion of income tax. Rare line item.
universe all tickers · cadence post-close daily
net_income_lossbigintBottom-line net income/loss for the quarter. Signed.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
net_income_loss_attributable_to_noncontrolling_interestbigintPortion of net income attributable to minority owners of consolidated subsidiaries. Usually 0 for non-conglomerates.
universe all tickers · history partial · cadence post-close daily · intervals 1d
net_income_loss_attributable_to_parentbigintNet income attributable to the parent entity (excludes noncontrolling interest).
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
net_income_loss_available_to_common_stockholders_basicbigintNet income available to common shareholders — numerator for basic EPS.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
nonoperating_income_lossbigintNon-operating income/loss (interest income, gains/losses on investments, etc.) for the quarter. Signed.
universe all tickers · history partial · cadence post-close daily · intervals 1d
operating_expensesbigintSum of operating costs reported on the income statement for the quarter (excludes COGS).
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
operating_income_lossbigintOperating income or loss for the quarter. Signed.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
research_and_developmentbigintR&D spend for the quarter. NULL for companies that don't report R&D as a line item.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
revenue_growth_yoynumericYear-over-year revenue growth: most-recent quarter vs same quarter prior year. Signed; positive = growth.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
revenue_growth_yoy_quarterlynumericYoY quarterly revenue growth. Signed.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
revenue_per_share_ttmnumericTrailing-12m revenue divided by diluted shares outstanding. USD per share.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
revenue_ttmbigintTrailing-twelve-month revenue.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
revenuesbigintTotal revenue for the most-recently reported quarter, from filed income statements.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
selling_general_and_administrative_expensesbigintSG&A for the quarter.
universe all tickers · history has gaps · cadence post-close daily · intervals 1d
wagesbigintWages and salaries line item, where reported. Rare — most companies fold this into SG&A.
universe all tickers · cadence post-close daily

Balance sheet

Balance-sheet lines as reported.

ColumnTypeDescription
accounts_payablebigintTrade payables to suppliers as of the quarter end.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
assetsbigintTotal assets on the balance sheet as of the most recently reported quarter.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
book_valuenumericTrailing-12m book value per share. Computed from `equity_attributable_to_parent / diluted_average_shares`.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
cash_on_handbigintCash plus cash equivalents — the most-liquid balance-sheet line.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
current_assetsbigintAssets expected to be converted to cash or used up within 12 months.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
current_liabilitiesbigintLiabilities due within 12 months — accounts payable, short-term debt, accrued expenses.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
equitybigintTotal shareholders' equity.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
equity_attributable_to_noncontrolling_interestbigintEquity attributable to minority shareholders of consolidated subsidiaries. Usually 0 for non-conglomerates.
universe all tickers · history partial · cadence post-close daily · intervals 1d
equity_attributable_to_parentbigintEquity attributable to the parent entity's shareholders (excludes minority interest).
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
fixed_assetsbigintProperty, plant, and equipment (PP&E), net of accumulated depreciation.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
inventorybigintInventory on hand. NULL for service and financial companies that don't carry inventory.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
liabilitiesbigintTotal liabilities on the balance sheet.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
liabilities_and_equitybigintTotal liabilities + total equity. Should equal `assets` (balance-sheet identity). Documented for completeness — useful as a sanity check rather than a scan target.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
long_term_debtbigintLong-term debt obligations. Often NULL because issuers fold this into `noncurrent_liabilities` instead of breaking it out.
universe all tickers · cadence post-close daily
noncurrent_assetsbigintLong-lived assets — property, plant, equipment, intangibles, long-term investments.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
noncurrent_liabilitiesbigintLiabilities due beyond 12 months — long-term debt, deferred taxes, pension obligations.
universe all tickers · history has gaps · cadence post-close daily · intervals 1d
other_current_assetsbigintCurrent assets not separately broken out (prepaid expenses, short-term receivables, etc.).
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
other_current_liabilitiesbigintCurrent liabilities not separately broken out.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
other_noncurrent_assetsbigintNon-current assets not separately broken out (intangibles, deferred tax assets, etc.).
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d

Cash flow

Cash-flow-statement lines and free cash flow.

ColumnTypeDescription
free_cash_flowbigintOperating cash flow minus capital expenditures. Cash the business generates above what it needs to maintain operations.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
net_cash_flowbigintSum of operating + investing + financing cash flow — period change in cash.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
net_cash_flow_continuingbigintTotal cash flow excluding discontinued operations. Rare line item — populated only for companies in active discontinued-ops winddown.
universe all tickers · cadence post-close daily
net_cash_flow_from_financing_activitiesbigintNet cash from financing (debt, dividends, buybacks).
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
net_cash_flow_from_financing_activities_continuingbigintFinancing cash flow excluding discontinued operations.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
net_cash_flow_from_investing_activitiesbigintNet cash from investing activities (capex, acquisitions). Negative for net spend.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
net_cash_flow_from_investing_activities_continuingbigintInvesting cash flow excluding discontinued operations.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
net_cash_flow_from_operating_activitiesbigintNet cash from operations for the quarter.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
net_cash_flow_from_operating_activities_continuingbigintSame as `net_cash_flow_from_operating_activities` but excludes discontinued operations.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d

Margins & ratios

Ratios computed entirely from statement lines — margins, returns, liquidity, leverage. No market price in the formula.

ColumnTypeDescription
current_rationumericCurrent assets ÷ current liabilities. Short-term liquidity. >1 = able to cover short-term obligations from current assets.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
debt_to_equitynumericTotal debt divided by total shareholders' equity. Common leverage ratio; lower = less leveraged.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
gross_marginnumeric`gross_profit / revenues` for the quarter.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
operating_marginnumeric`operating_income_loss / revenues` for the quarter.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
operating_margin_ttmnumericTrailing-12m operating margin.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
profit_marginnumericNet income ÷ revenue. Quarterly.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
profit_margin_ttmnumericTrailing-12m profit margin.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
quick_rationumeric(Current assets − inventory) ÷ current liabilities. Stricter liquidity — assumes inventory isn't quickly convertible.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
return_on_assetsnumericNet income ÷ total assets. Quarterly figure.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
return_on_assets_ttmnumericTrailing-12m return on assets.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
return_on_equitynumericNet income ÷ shareholders' equity. Quarterly figure.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
return_on_equity_ttmnumericTrailing-12m return on equity.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
high_marginstateTrailing-twelve-month profit margin is above 20%.
profit_margin_ttm > 0.20
universe all tickers · history partial · cadence post-close daily · intervals 1d · firing continuous
profitableclassificationMost-recently-reported quarter had positive net income.
net_income_loss > 0
universe all tickers · history partial · cadence post-close daily · intervals 1d · firing continuous

Valuation

Metrics crossing market price with financials — cap, EV, multiples, yield, beta — plus the size/style tags they own (cap tiers, beta tags, value_stock).

ColumnTypeDescription
betanumericTrailing beta vs SPY. Null for issuers with insufficient price history.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1d
cap_classtextMarket-capitalization tier. One of `nano` (<$50M), `micro` ($50M–$300M), `small` ($300M–$2B), `mid` ($2B–$10B), `large` ($10B–$200B), `mega` (≥$200B), or `unknown` when `market_cap` is null. Updates daily post-close as `market_cap` moves. Preferred over the legacy `nano_cap/micro_cap/small_cap/mid_cap/large_cap/mega_cap` boolean columns (which remain in sync as backward-compat shortcuts).
universe all tickers · cadence post-close daily
dividend_yieldnumericForward dividend yield as a fraction (0.025 = 2.5%). Null for non-payers.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1d
enterprise_valuebigintMarket cap + total debt − cash.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
ev_to_ebitdanumeric`enterprise_value` ÷ `ebitda`. Capital-structure-neutral profitability multiple.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
ev_to_salesnumeric`enterprise_value` ÷ `revenue_ttm`. Capital-structure-neutral revenue multiple.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
forward_penumericForward price-to-earnings ratio using next-12m consensus EPS. Lower = cheaper on forward basis.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
market_capbigintMarket capitalization. Updated daily; intraday change derived from `price` × `shares_outstanding`.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
pe_rationumericPrice-to-earnings ratio (trailing twelve months). Null for unprofitable issuers.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
peg_rationumericPE ratio divided by EPS growth rate. Sparsely populated — PEG is only computed for tickers with positive earnings growth and analyst coverage.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
price_to_booknumericCurrent price ÷ `book_value`. Common value-investing metric.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
price_to_cash_flownumericCurrent price ÷ operating cash flow per share. Less manipulable than P/E.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
price_to_free_cash_flownumericCurrent price ÷ `free_cash_flow` per share. Strictest cash-based valuation.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
price_to_salesnumericCurrent price ÷ `revenue_per_share_ttm`. Often used when companies have no earnings.
universe all tickers · history full · since 2010 · cadence post-close daily · intervals 1d
high_betaclassificationBeta above 1.5: moves more than the market.
beta > 2.0.
universe all tickers · history recent only · cadence post-close daily · intervals 1d · firing continuous
high_dividend_yieldclassificationDividend yield above 4%.
dividend_yield >= 0.04.
universe all tickers · history partial · cadence post-close daily · intervals 1d · firing continuous
large_capclassificationMarket cap between $10B and $200B.
market_cap >= 10B AND market_cap < 200B.
universe all tickers · history partial · cadence post-close daily · intervals 1d · firing continuous
low_betastateBeta below 0.5 — moves much less than the market.
beta < 0.5
universe all tickers · history recent only · cadence post-close daily · intervals 1d · firing continuous
mega_capclassificationMarket cap above $200B.
market_cap >= 200B.
universe all tickers · history partial · cadence post-close daily · intervals 1d · firing continuous
micro_capstateMarket cap between $50M and $300M.
50e6 ≤ market_cap < 300e6
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing continuous
mid_capclassificationMarket cap between $2B and $10B.
market_cap >= 2B AND market_cap < 10B.
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing continuous
nano_capstateMarket cap below $50M.
market_cap < 50e6
universe all tickers · history partial · cadence post-close daily · intervals 1d · firing continuous
small_capclassificationMarket cap between $300M and $2B.
market_cap >= 300M AND market_cap < 2B.
universe all tickers · history partial · cadence post-close daily · intervals 1d · firing continuous
value_stockclassificationTrades at a value-style P/E.
pe_ratio > 0 AND pe_ratio < 15.
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing continuous

Share structure & ownership

How the equity is divided and held: share counts, float and its tags, insider/institutional ownership, ETF holders.

ColumnTypeDescription
basic_average_sharesbigintWeighted-average basic shares outstanding for the quarter. Denominator for basic EPS.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
diluted_average_sharesbigintWeighted-average diluted shares outstanding for the quarter. Denominator for diluted EPS.
universe all tickers · history full · since 2009 · cadence post-close daily · intervals 1d
etf_holderstext[]ETFs that hold this ticker, ordered by the ticker's weight within each (the reverse of ETF holdings). Filter with array operators in /v2/scan, e.g. `'SPY' = ANY(etf_holders)` to find SPY constituents. Refreshed nightly post-close.
universe all tickers · cadence post-close daily
float_sharesbigintPublic float (shares available to trade).
universe all tickers · history recent only · cadence post-close daily · intervals 1d
free_float_percentnumericPercent of shares outstanding actually available for trading (excludes insider / restricted holdings).
universe all tickers · history recent only · cadence post-close daily · intervals 1d
percent_insidersnumericPercent of shares held by company insiders (executives, directors, founders).
universe all tickers · history recent only · cadence post-close daily · intervals 1d
percent_institutionsnumericPercent of shares held by institutional investors (mutual funds, ETFs, pensions).
universe all tickers · history recent only · cadence post-close daily · intervals 1d
shares_outstandingbigintTotal shares outstanding.
universe all tickers · cadence post-close daily
weighted_shares_outstandingbigintWeighted shares outstanding from the latest 10-Q / 10-K. Used by `market_cap = price × weighted_shares_outstanding`.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
low_floatclassificationPublic float under 50 million shares.
float_shares < 10,000,000.
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing continuous
ultra_low_floatstateFloat below 5M shares — extremely thin supply.
float_shares < 5e6
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing continuous

Short interest

Short positioning: readings, ratios, days-to-cover, and their flags.

ColumnTypeDescription
days_to_covernumericShort interest divided by 30-day average daily volume. Trader’s "how many days of normal trading to cover all shorts" measure.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
short_interestbigintRaw shares-shorted count as last reported (FINRA bi-monthly). Pair with `short_interest_settlement_date` (profile.ts) for the as-of date.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
short_interest_settlement_datedateSettlement date of the most recent short-interest report.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
short_percent_of_floatnumericShort interest as a fraction of the free float. 0.10 = 10% of float is short.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
short_volume_rationumericShare of the day's volume executed as short sales (0–1).
universe all tickers · cadence post-close daily
high_short_intereststateMore than 20% of the float is sold short.
short_percent_of_float > 20
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing continuous
short_volume_spikestateMore than 60% of the day's volume was executed as short sales.
short_volume_ratio > 0.60
universe all tickers · cadence post-close daily · firing continuous

Events

What happened or is scheduled to happen to the company: earnings, dividends, IPOs, share-capital changes, insider transactions.

Earnings

The earnings calendar and its outcomes: dates, windows, surprises, streaks.

ColumnTypeDescription
days_to_earningsintegerCalendar days until next earnings announcement. Negative after report.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
earnings_beat_streakintegerConsecutive quarters the company has beaten consensus EPS estimates. Resets to 0 on a miss.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
earnings_datedateNext scheduled earnings announcement date. Null if not scheduled.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
earnings_fiscal_quartertextFiscal quarter the next earnings report covers (e.g. "2026Q1"). Distinct from calendar quarter — covers companies whose fiscal year doesn't match the calendar.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
earnings_report_timetextWhen in the trading day the next earnings will be reported. One of `BMO` (before market open), `AMC` (after market close), `DMH` (during market hours).
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
last_earnings_surprisenumeric`last_reported_eps − last_eps_estimate`. Signed; positive = beat.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
last_earnings_surprise_pctnumericBeat as percent of consensus.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
last_reported_epsnumericActual EPS reported in the most recent earnings announcement.
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d
earnings_approachingstateEarnings within 3 days.
days_to_earnings = 3 (exactly three days before the scheduled earnings date)
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d · firing continuous
earnings_next_weekstateEarnings 8–14 days out — useful for the lead-up swing window.
days_to_earnings >= 8 AND days_to_earnings <= 14
universe all tickers · history recent only · cadence post-close daily · intervals 1d · firing continuous
earnings_publishedstateEarnings report date has passed (next earnings date is in the past).
days_to_earnings <= 0
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d · firing continuous
earnings_this_weekstateEarnings announcement scheduled in the next 7 days.
0 <= days_to_earnings <= 7. Sourced from the forward earnings calendar plus the historical earnings table.
universe all tickers · history has gaps · cadence post-close daily · intervals 1d · firing continuous
earnings_todayeventEarnings reported today.
EXISTS(ticker_earnings_history row with reported_date = today). Both pre-market and post-market reports count.
universe all tickers · history has gaps · cadence post-close daily · intervals 1m/1h/1d · firing sticky
earnings_tomorrowstateEarnings reported in 1 calendar day. Pair with `earnings_report_time` to know BMO vs. AMC.
days_to_earnings = 1
universe all tickers · history full · since 2003 · cadence post-close daily · intervals 1d · firing continuous
recently_reported_earningsstateReported earnings within the last 5 days.
EXISTS(ticker_earnings_history row with reported_date in [today - 5d, today - 1d]). Captures the post-earnings reaction window.
universe all tickers · history has gaps · cadence post-close daily · intervals 1d · firing continuous

Dividends

Dividend amount, schedule, and approach flags.

ColumnTypeDescription
dividendnumericMost-recent dividend amount per share.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1d
dividend_datedateDate of the most-recent dividend payment.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1d
dividend_frequencyintegerPayment frequency: `quarterly`, `monthly`, `semiannual`, `annual`.
universe all tickers · history full · since 2004 · cadence post-close daily · intervals 1d
dividend_approachingstateThe ex-dividend date falls within the next 7 days.
ex_dividend_date between today and today + 7d
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing continuous

IPOs

IPO dates and status, from pending through recently listed.

ColumnTypeDescription
ipo_datedateDate of the company's IPO, when known.
universe all tickers · cadence end of day
ipo_in_7dstateA firm IPO listing date falls within the next 7 days.
IPO calendar listing date within 7 days
universe all tickers · cadence end of day · firing continuous
pending_ipostateThe ticker is in the IPO calendar but has not started trading.
in the IPO calendar, pre-first-trade
universe all tickers · cadence end of day · firing continuous
recently_ipoedstateThe company listed within the last 90 days.
list_date >= today − 90d
universe all tickers · cadence post-close daily · firing continuous

Splits & share changes

Events that alter share count or float: splits, buybacks, dilution.

ColumnTypeDescription
float_effective_datedateAs-of date for the current float-shares figure.
universe all tickers · history recent only · cadence post-close daily · intervals 1d
buyback_30dstateShares outstanding fell more than 1% over the last 30 days.
shares_outstanding < 30d-ago × 0.99
universe all tickers · cadence post-close daily · firing continuous
dilution_30dstateShares outstanding rose more than 3% over the last 30 days.
shares_outstanding > 30d-ago × 1.03
universe all tickers · cadence post-close daily · firing continuous
split_recentstateA stock split occurred in the last 7 days or is scheduled within 14 days.
split execution_date between today − 7d and today + 14d
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing continuous

Insider activity

Insider (Form 4) transaction flags: C-suite buys and sells, clustered buying.

ColumnTypeDescription
insider_c_suite_buystateA C-suite insider (CEO/CFO/COO/President/Chair) bought shares in the last 7 days.
insider acquisition within 7d by an insider titled CEO, CFO, COO, President, Chairman, or Director
universe all tickers · history recent only · cadence post-close daily · intervals 1d · firing sticky
insider_c_suite_sellstateA C-suite insider (CEO/CFO/COO/President/Chair) sold shares in the last 7 days.
insider disposal by a C-suite title within 7d
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing sticky
insider_cluster_buystateTwo or more distinct insiders bought shares in the last 14 days.
count(distinct insider buyers) ≥ 2 within 14d
universe all tickers · history recent only · cadence post-close daily · intervals 1d · firing sticky

Profile

Who and what the security is: categorical classification and identity data. Lookup information, not signals.

Classification

Categorical facts: sector, industry, SIC, exchange, country, currency, asset class and sub-class.

ColumnTypeDescription
asset_classtextAsset class of the ticker: stocks, rates, crypto, or fx.
universe all tickers · cadence post-close daily
asset_typetextAsset class. One of `equity`, `etf`, or `crypto`.
universe all tickers · cadence post-close daily
countrytextISO country code of the issuer.
universe all tickers · cadence post-close daily
currency_nametextCurrency the prices are quoted in (`usd`, `eur`, `gbp`, etc.). Effectively always `usd` for US-listed equities.
universe all tickers · cadence post-close daily
exchangetextPrimary listing exchange, human-readable name — e.g. `NASDAQ`, `NYSE`, `NYSE Arca`, `Cboe BZX`, `NYSE American`. See `exchange_mic` for the raw ISO 10383 code. Null for a small number of delisted/edge names.
universe all tickers · cadence post-close daily
exchange_mictextPrimary listing exchange as an ISO 10383 **MIC code**: `XNAS` = NASDAQ, `XNYS` = NYSE, `ARCX` = NYSE Arca, `BATS` = Cboe BZX, `XASE` = NYSE American. The `?exchange=` filter accepts either this code or the human name.
universe all tickers · cadence post-close daily
industrytextGICS industry within the sector.
universe all tickers · cadence post-close daily
sectortextGICS sector. One of: Technology, Healthcare, Financials, Consumer Discretionary, Consumer Staples, Energy, Industrials, Materials, Utilities, Real Estate, Communication Services.
universe all tickers · cadence post-close daily
sic_codetextSIC code — the SEC's Standard Industrial Classification for the company's industry.
universe all tickers · cadence post-close daily
sic_descriptiontextPlain-text label for the company's SIC industry code.
universe all tickers · cadence post-close daily
ticker_categorytextSub-class within an asset class, e.g. treasury_curve or policy_rate.
universe all tickers · cadence post-close daily

Identifiers & reference

Which company this is: name, IDs (CIK, FIGI), listing status, contact, branding, employees.

ColumnTypeDescription
address_address1textCompany headquarters street address.
universe all tickers · cadence post-close daily
address_citytextCompany headquarters city.
universe all tickers · cadence post-close daily
address_postal_codetextCompany headquarters postal code.
universe all tickers · cadence post-close daily
address_statetextCompany headquarters state or region.
universe all tickers · cadence post-close daily
branding_icon_urltextURL of the company's square icon image.
universe all tickers · cadence post-close daily
branding_logo_urltextURL of the company's logo image.
universe all tickers · cadence post-close daily
ciktextSEC Central Index Key — the company's identifier in EDGAR filings.
universe all tickers · cadence post-close daily
composite_figitextComposite FIGI — Bloomberg's cross-exchange security identifier.
universe all tickers · cadence post-close daily
descriptiontextBusiness description of the company.
universe all tickers · cadence post-close daily
homepage_urltextCompany homepage URL.
universe all tickers · cadence post-close daily
inactive_attimestamp without time zoneWhen the ticker was marked inactive.
universe all tickers · cadence 1 min · mkt hrs
inactive_reasontextWhy the ticker was marked inactive (e.g. delisted, stale data).
universe all tickers · cadence 1 min · mkt hrs
list_datetextDate the symbol was first listed on its exchange.
universe all tickers · cadence post-close daily
nametextCompany or asset display name.
universe all tickers · cadence post-close daily
phone_numbertextCompany contact phone number.
universe all tickers · cadence post-close daily
round_lotintegerStandard trading lot size for the symbol.
universe all tickers · cadence post-close daily
share_class_figitextShare-class FIGI — Bloomberg identifier for this specific share class.
universe all tickers · cadence post-close daily
ticker_roottextRoot symbol — the base ticker without class or suffix modifiers.
universe all tickers · cadence post-close daily
total_employeesintegerNumber of full-time employees as last reported. Useful for size-based filters ("small-cap by employee count").
universe all tickers · history recent only · cadence post-close daily · intervals 1d
activestateTicker is actively traded — not delisted or halted.
active = true
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1d · firing continuous

Analyst ratings

Third-party analyst judgment: the consensus, individual firm actions, price targets, and forward estimates.

Consensus ratings

The aggregate analyst opinion: consensus rating, the buy/hold/sell distribution, coverage depth.

ColumnTypeDescription
analyst_consensus_ratingtextConsensus analyst rating across contributing firms. One of `strong buy`, `buy`, `hold`, `sell`, `strong sell`. NULL for tickers without analyst coverage.
universe all tickers · cadence hourly
analyst_consensus_rating_valuenumericConsensus rating as a numeric score on the standard 1–5 scale (1 = strong buy, 5 = strong sell). Lower is more bullish.
universe all tickers · cadence hourly
analyst_count_buyintegerNumber of contributing firms rating the ticker as buy.
universe all tickers · cadence hourly
analyst_count_holdintegerNumber of contributing firms rating the ticker as hold (neutral).
universe all tickers · cadence hourly
analyst_count_sellintegerNumber of contributing firms rating the ticker as sell.
universe all tickers · cadence hourly
analyst_count_strong_buyintegerNumber of contributing firms rating the ticker as strong buy.
universe all tickers · cadence hourly
analyst_count_strong_sellintegerNumber of contributing firms rating the ticker as strong sell.
universe all tickers · cadence hourly
analyst_count_totalintegerTotal number of contributing firms covering the ticker with any rating. Sum of the five `analyst_count_*` buckets. `well_covered` fires when this is at least 10.
universe all tickers · cadence hourly
analyst_count_with_targetintegerNumber of contributing firms whose rating includes a published 12-month price target. Always ≤ `analyst_count_total`.
universe all tickers · cadence hourly
bearish_consensusstateConsensus analyst rating is `sell` or `strong sell`.
analyst_consensus_rating IN ('sell', 'strong sell')
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing continuous
bullish_consensusstateConsensus analyst rating is `strong buy` or `buy`.
analyst_consensus_rating IN ('strong buy', 'buy')
universe all tickers · history recent only · cadence post-close daily · intervals 1d · firing continuous
well_coveredclassificationTen or more analyst firms cover the ticker.
analyst_count_total >= 10
universe all tickers · cadence post-close daily · firing continuous

Upgrades & downgrades

Individual firm actions: rating changes, initiations, and price-target changes.

ColumnTypeDescription
last_rating_actiontextAction taken in the most recent rating change. Common values: `upgrades`, `downgrades`, `initiates_coverage_on`, `maintains`, `reiterates`, `assumes`, `reinstates`, `suspends`.
universe all tickers · cadence hourly
last_rating_datedateDate of the most recent rating action across all firms covering the ticker.
universe all tickers · cadence hourly
last_rating_firmtextName of the firm that issued the most recent rating action.
universe all tickers · cadence hourly
recent_downgradestateAt least one analyst downgraded the ticker in the last 7 days.
EXISTS (SELECT 1 FROM analyst_events WHERE ticker = t.ticker AND action = 'downgrades' AND timestamp >= NOW() - INTERVAL '7 days')
universe all tickers · history recent only · cadence 15 min · intervals 1d · firing continuous
recent_initiationstateAt least one analyst initiated coverage in the last 7 days.
EXISTS (SELECT 1 FROM analyst_events WHERE ticker = t.ticker AND action = 'initiates_coverage_on' AND timestamp >= NOW() - INTERVAL '7 days')
universe all tickers · history never fired yet · cadence 15 min · intervals 1d · firing continuous
recent_target_lowerstateAt least one analyst lowered their price target in the last 7 days.
EXISTS (SELECT 1 FROM analyst_events WHERE ticker = t.ticker AND price_target_action = 'lowers' AND timestamp >= NOW() - INTERVAL '7 days')
universe all tickers · cadence 15 min · firing continuous
recent_target_raisestateAt least one analyst raised their price target in the last 7 days.
EXISTS (SELECT 1 FROM analyst_events WHERE ticker = t.ticker AND price_target_action = 'raises' AND timestamp >= NOW() - INTERVAL '7 days')
universe all tickers · cadence 15 min · firing continuous
recent_upgradestateAt least one analyst upgraded the ticker in the last 7 days.
EXISTS (SELECT 1 FROM analyst_events WHERE ticker = t.ticker AND action = 'upgrades' AND timestamp >= NOW() - INTERVAL '7 days')
universe all tickers · history recent only · cadence 15 min · intervals 1d · firing continuous

Price targets

Where analysts say it's going: consensus/high/low targets and price-versus-target state.

ColumnTypeDescription
analyst_consensus_target_pricenumericMean of contributing analysts' 12-month price targets.
universe all tickers · cadence hourly
analyst_target_price_highnumericHighest single-analyst 12-month price target across contributing firms.
universe all tickers · cadence hourly
analyst_target_price_lownumericLowest single-analyst 12-month price target across contributing firms.
universe all tickers · cadence hourly
analyst_target_upside_pctnumericImplied upside from the current price to the consensus target, in percent. `(analyst_consensus_target_price - price) / price * 100`. Negative when price is above target. Recomputed every minute during market hours.
universe all tickers · cadence hourly
above_price_targetstateCurrent price is above the consensus analyst target.
price > analyst_consensus_target_price
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
below_price_targetstateCurrent price is below the consensus analyst target.
price < analyst_consensus_target_price
universe all tickers · history recent only · cadence 1 min · mkt hrs · intervals 1m/1h/1d · firing continuous
target_downside_above_10pctstateCurrent price is more than 10% above the consensus target — significant implied downside.
analyst_target_upside_pct < -10
universe all tickers · cadence 1 min · mkt hrs · firing continuous
target_upside_above_10pctstateConsensus price target implies more than 10% upside from the current price.
analyst_target_upside_pct > 10
universe all tickers · cadence 1 min · mkt hrs · firing continuous
target_upside_above_25pctstateConsensus price target implies more than 25% upside from the current price.
analyst_target_upside_pct > 25
universe all tickers · cadence 1 min · mkt hrs · firing continuous

Estimates

What analysts say it will earn: forward EPS/revenue estimates and their revisions.

ColumnTypeDescription
eps_estimate_revision_down_30dintegerCount of analysts who lowered their next-quarter EPS estimate in the last 30 days.
universe all tickers · cadence post-close daily
eps_estimate_revision_up_30dintegerCount of analysts who raised their next-quarter EPS estimate in the last 30 days. A positive read on forward sentiment momentum.
universe all tickers · cadence post-close daily
last_eps_estimatenumericConsensus EPS estimate going into the most recent earnings announcement.
universe all tickers · cadence post-close daily
next_eps_estimatenumericWall Street consensus EPS estimate for the next reported quarter — weighted average across analyst contributors.
universe all tickers · cadence post-close daily
next_eps_estimate_highnumericHighest single-analyst EPS estimate for the next reported quarter.
universe all tickers · cadence post-close daily
next_eps_estimate_lownumericLowest single-analyst EPS estimate for the next reported quarter.
universe all tickers · cadence post-close daily
next_revenue_estimatebigintWall Street consensus revenue estimate (USD, full dollars) for the next reported quarter.
universe all tickers · cadence post-close daily
estimate_revised_downstateAt least one analyst lowered their next-quarter EPS estimate in the last 30 days.
eps_estimate_revision_down_30d > eps_estimate_revision_up_30d AND total 30d revisions (up + down) >= 3
universe all tickers · history recent only · cadence post-close daily · intervals 1d · firing continuous
estimate_revised_upstateAt least one analyst raised their next-quarter EPS estimate in the last 30 days.
eps_estimate_revision_up_30d > eps_estimate_revision_down_30d AND total 30d revisions (up + down) >= 3
universe all tickers · history recent only · cadence post-close daily · intervals 1d · firing continuous
high_earnings_estimateclassificationConsensus next-quarter EPS estimate exceeds an absolute $1.00 per share threshold.
next_eps_estimate > 1.00
universe all tickers · history recent only · cadence post-close daily · intervals 1d · firing continuous
loss_estimateclassificationAnalyst consensus expects negative EPS for the upcoming report.
next_eps_estimate < 0
universe all tickers · history never fired yet · cadence post-close daily · intervals 1d · firing continuous
profitable_estimateclassificationAnalyst consensus expects positive EPS for the upcoming report.
next_eps_estimate > 0
universe all tickers · history recent only · cadence post-close daily · intervals 1d · firing continuous

News

Signals derived from news coverage: article volume and sentiment.

ColumnTypeDescription
news_volumenumericCount of news articles published in the last 24 hours mentioning this ticker with a relevance score ≥ 0.6. Refreshed every 15 minutes. Null when no qualifying articles in the window.
universe all tickers · cadence 15 min
news_volume_weighted_sentimentnumericRange -1.0 to +1.0. The relevance-weighted average sentiment of articles in the last 24 hours, attenuated by `tanh(news_volume / 15)` so quiet tickers (1-2 articles) read near zero regardless of sentiment sign. Strong negative = loud bad news; strong positive = loud good news; values near 0 = quiet or mixed. Null when no qualifying articles.
universe all tickers · cadence 15 min

Author your own

The catalog is the built-in vocabulary, not the ceiling: custom signals let you name a SQL expression over these columns and use it anywhere a built-in works.