Scientific Methodology

How EQT Lab Scores Stocks

A full technical reference for the quantitative factors, scoring algorithms, and academic foundations underlying every ranking. All models are grounded in peer-reviewed finance research.

Table of Contents

Composite Score & Scoring Pipeline

Every stock receives a Composite Momentum Score from 0 to 100. This aggregates 12 individual factor percentiles into a single measure of momentum strength, quality, and persistence.

1 Raw factor values
2 Cross-sectional percentile rank
3 Weighted average
4 Composite score [0–100]
Composite Score Formula
\[ S_i = \sum_{k=1}^{12} w_k \cdot \text{pctrank}(F_{k,i}) \times 100 \]
\(S_i\)Composite score for stock \(i\) (0–100)
\(w_k\)Weight of factor \(k\) (sums to 1.00)
\(\text{pctrank}(F_{k,i})\)Cross-sectional percentile rank of stock \(i\) on factor \(k\), computed over all constituents in the selected universe, ranging [0,1]

The percentile ranking approach is non-parametric — it requires no assumptions about the distribution of factor values and is robust to outliers. Each factor's raw value is converted to a rank relative to all peers in the selected universe before weighting.

15%
12-1 Momentum
Primary trend signal
12%
Sharpe Ratio
Risk-adjusted return
10%
6-1 Momentum
Medium-term signal
8%
FIP · Hurst · EWMA · Path R²
Four factors at 8% each
7%
Acceleration · Residual Mom.
Two factors at 7% each
6%
Omega · Calmar
Risk-quality measures

12-1 Momentum  Weight: 15%

12-Month Skip-Month Momentum
The canonical cross-sectional momentum factor of Jegadeesh & Titman (1993)
Highest Weight · 15%
Definition
\[ \text{Mom}^{12-1}_i = \frac{P_{i,t-1}}{P_{i,t-12}} - 1 \]
\(P_{i,t-1}\)Adjusted closing price of stock \(i\) one month ago
\(P_{i,t-12}\)Adjusted closing price 12 months ago

The skip-month convention (measuring over months \(t-12\) to \(t-1\) rather than \(t-12\) to \(t\)) is standard in academic momentum research. It excludes the most recent month to avoid contamination from short-term mean reversion caused by bid-ask bounce and liquidity effects documented by Jegadeesh (1990).

Positive signal: Return > 0 indicates price is higher than 12 months ago. Higher cross-sectional rank = stronger long-run trend.

Jegadeesh, N. & Titman, S. (1993). "Returns to Buying Winners and Selling Losers: Implications for Stock Market Efficiency." Journal of Finance, 48(1), 65–91.

Sharpe Ratio  Weight: 12%

Annualised Risk-Adjusted Return
Return per unit of total risk; Sharpe (1966)
12%
Definition
\[ \text{SR}_i = \frac{\bar{r}_i - r_f}{\sigma_i} \cdot \sqrt{252} \]
\(\bar{r}_i\)Mean daily log return over the 12-month window
\(r_f\)Risk-free rate (approximated as 0 for cross-sectional ranking purposes)
\(\sigma_i\)Standard deviation of daily log returns (total volatility)
\(\sqrt{252}\)Annualisation factor (252 trading days per year)

Signal direction: Higher = better. SR > 1.0 is considered good; SR > 2.0 is exceptional. Measures how well the stock is compensating investors for the total volatility borne.

6-1 Momentum  Weight: 10%

6-Month Skip-Month Return
Medium-horizon momentum; captures more recent trend than 12-1
10%
Definition
\[ \text{Mom}^{6-1}_i = \frac{P_{i,t-1}}{P_{i,t-6}} - 1 \]

Computed identically to 12-1 Momentum but over a six-month lookback. Academically, the 6-1 signal has a shorter mean-reversion horizon than the 12-1 signal and provides complementary information about the trajectory of the trend within the full year window. Used alongside 12-1 to detect whether near-term momentum is accelerating or decelerating relative to the full year.

Signal direction: Positive is stronger. When 6-1 > 12-1, momentum is accelerating (see Acceleration factor).

Frog-in-Pan (FIP) Score  Weight: 8%

Information Diffusion Proxy
Da, Gurun & Warachka (2014) — distinguishes gradual from spike-driven momentum
8%
Definition
\[ \text{FIP}_i = \text{sgn}(r^{12-1}_i) \cdot \left( \frac{|\text{large returns}|}{n} - \frac{|\text{small returns}|}{n} \right) \]

In practice, FIP is computed as the signed difference between the proportion of trading days with large absolute returns (top tercile) and those with small returns (bottom tercile), over the 12-month window. The sign is aligned with the direction of the cumulative return.

The intuition draws on the "boiling frog" metaphor: price moves that accumulate gradually (many small increments) are less salient to inattentive investors and therefore reflect slower information diffusion. Da et al. (2014) show that stocks with continuous, low-salience price appreciation have stronger subsequent momentum returns than those with equivalent total return achieved via spiky, high-salience moves.

Signal direction: Higher FIP (more gradual, continuous appreciation) = stronger signal. Spike-driven momentum (low FIP) is more likely to reverse.

Da, Z., Gurun, U. G., & Warachka, M. (2014). "Frog in the Pan: Continuous Information and Momentum." Review of Financial Studies, 27(7), 2171–2218.

Hurst Exponent  Weight: 8%

Trend Persistence Measure
Originally developed by Harold Hurst (1951) for hydrology; widely adopted in quantitative finance
8%
Rescaled Range (R/S) Estimator
\[ H = \frac{\log(R/S)}{\log(n)} \] \[ \text{where} \quad R/S = \frac{\max_t \sum_{s=1}^t (r_s - \bar{r}) - \min_t \sum_{s=1}^t (r_s - \bar{r})}{\sigma_r} \]
\(H\)Hurst exponent, in [0, 1]
\(R\)Range of the cumulative deviation from the mean return series
\(S\)Standard deviation of the return series
\(n\)Number of observations (trading days in the window)

The Hurst exponent captures the long-memory or persistence property of the return series. A value of exactly 0.5 corresponds to a random walk (no memory). Values above 0.5 indicate positive autocorrelation (trending), values below 0.5 indicate negative autocorrelation (mean-reverting).

H > 0.55: Strong trend persistence — past gains predict future gains. H ≈ 0.5: Random walk regime. H < 0.5: Mean-reverting — negative signal for momentum strategies.

EWMA Momentum  Weight: 8%

Exponentially Weighted Momentum
Recent return data receives higher weight via exponential decay
8%
EWMA Price Level
\[ \tilde{P}_{i,t} = (1-\lambda) P_{i,t} + \lambda \tilde{P}_{i,t-1}, \quad \lambda = 0.97 \] \[ \text{EWMA Momentum}_i = \frac{\tilde{P}_{i,t}}{\tilde{P}_{i,t-252}} - 1 \]
\(\lambda\)Decay parameter (0.97 implies ~33-day half-life)
\(\tilde{P}_{i,t}\)EWMA-smoothed price level at time \(t\)

The EWMA filter removes high-frequency noise while preserving the trend direction. By applying exponential decay with \(\lambda = 0.97\), the most recent 30 days account for approximately 60% of the signal weight, making EWMA Momentum more responsive to recent trend changes than the simple 12-1 return.

Signal direction: Positive = smoothed price trend is upward. High EWMA momentum with low 12-1 variance = smooth, persistent trend (very bullish).

Path R²  Weight: 8%

Log-Linear Trend Fit Quality
Measures how smoothly price tracks an exponential growth path
8%
Log-Linear Regression
\[ \ln P_{i,t} = \alpha_i + \beta_i \cdot t + \varepsilon_{i,t} \] \[ R^2_i = 1 - \frac{\text{SS}_{\text{res}}}{\text{SS}_{\text{tot}}} = 1 - \frac{\sum_t \hat{\varepsilon}_{i,t}^2}{\sum_t (\ln P_{i,t} - \overline{\ln P_i})^2} \]
\(R^2_i\)Coefficient of determination (0 = no fit, 1 = perfect exponential growth)
\(\hat{\varepsilon}_{i,t}\)Residuals from the log-linear trend regression

Regressing log-price on time tests whether price follows a steady exponential growth (compound return) path. A near-1.0 R² indicates the stock has been appreciating smoothly without erratic reversals. This is related to the concept of "graceful" momentum studied by Grinblatt & Titman (1989) and aligns with academic evidence that smooth, consistent winners outperform volatile winners on a forward-looking basis.

R² > 0.90: Very smooth uptrend — high quality momentum. R² < 0.70: Noisy price path — lower confidence in trend continuation.

Momentum Acceleration  Weight: 7%

Rate-of-Change of Momentum
Detects whether the trend is speeding up or slowing down
7%
Definition
\[ \text{Accel}_i = \text{Mom}^{6-1}_i - \text{Mom}^{12-6}_i \] \[ \text{where} \quad \text{Mom}^{12-6}_i = \frac{P_{i,t-6}}{P_{i,t-12}} - 1 \]

Momentum acceleration decomposes the 12-1 window into two sequential 6-month halves and measures whether the most recent half outperforms the earlier half. A positive value indicates the stock is building momentum (recent 6 months stronger than prior 6 months), while a negative value indicates momentum deceleration. This is conceptually related to the momentum life cycle documented by Lee & Swaminathan (2000).

Positive Accel: Momentum picking up speed — bullish. Negative Accel: Trend losing steam — may be approaching peak. Units are percentage points (pp).

Residual Momentum  Weight: 7%

Market-Beta-Adjusted Alpha Momentum
Blitz, Huij & Martens (2011) — idiosyncratic momentum stripped of market beta
7%
CAPM Residual
\[ r_{i,d} = \alpha_i + \beta_i \cdot r_{m,d} + \varepsilon_{i,d} \] \[ \text{ResidualMom}_i = \sum_{d \in \text{window}} \hat{\varepsilon}_{i,d} \]
\(r_{i,d}\)Daily return of stock \(i\) on day \(d\)
\(r_{m,d}\)Daily return of the market benchmark (QQQ for NASDAQ-100, SPY for S&P 500 and ETFs)
\(\hat{\varepsilon}_{i,d}\)Daily CAPM residual (idiosyncratic return)

Standard momentum conflates two sources of return: market beta (the stock moves with the index) and idiosyncratic alpha (the stock outperforms independently). Residual momentum isolates the latter, which is a purer and more persistent signal. Blitz et al. (2011) show that residual momentum has substantially lower crash risk than total momentum while maintaining similar average returns.

Signal direction: Positive residual momentum = the stock is outperforming after accounting for index moves. This is genuine alpha, not beta-amplified market exposure.

Blitz, D., Huij, J., & Martens, M. (2011). "Residual Momentum." Journal of Empirical Finance, 18(3), 506–521.

Omega Ratio  Weight: 6%

Gains-to-Losses Ratio
Keating & Shadwick (2002) — universal performance measure using full return distribution
6%
Definition
\[ \Omega_i(\tau) = \frac{\int_\tau^\infty [1 - F_i(r)] \, dr}{\int_{-\infty}^\tau F_i(r) \, dr} \] \[ \approx \frac{\sum_{r_{i,d} > \tau} (r_{i,d} - \tau)}{\sum_{r_{i,d} \leq \tau} (\tau - r_{i,d})}, \quad \tau = 0 \]
\(F_i(r)\)Cumulative distribution function of daily returns for stock \(i\)
\(\tau\)Threshold return (set to 0 for cross-sectional comparison)

Unlike the Sharpe ratio, the Omega ratio uses the entire return distribution without the parametric assumption of normality. It measures the weighted total of gains above the threshold divided by the weighted total of losses below it. A ratio above 1.0 means total weighted gains exceed total weighted losses.

Signal direction: Ω > 1.0 = more weighted gains than losses. Higher is better. Omega > 2.0 indicates an exceptionally favourable return profile.

Calmar Ratio  Weight: 6%

Return per Unit of Maximum Drawdown
Young (1991) — originally used in managed futures evaluation
6%
Definition
\[ \text{Calmar}_i = \frac{r^{\text{ann}}_i}{|\text{MDD}_i|} \] \[ \text{MDD}_i = \max_{t \in [0,T]} \left( \frac{\max_{s \leq t} P_{i,s} - P_{i,t}}{\max_{s \leq t} P_{i,s}} \right) \]
\(r^{\text{ann}}_i\)Annualised return over the 12-month window
\(\text{MDD}_i\)Maximum peak-to-trough drawdown over the 12-month window

Signal direction: Higher Calmar = better return per worst-case loss. Calmar > 3 is considered strong; > 5 is exceptional. Particularly relevant for assessing whether upward momentum came at the cost of severe drawdowns.

Sortino Ratio  Weight: 5%

Downside-Risk-Adjusted Return
Sortino & van der Meer (1991) — penalises only harmful volatility
5%
Definition
\[ \text{Sortino}_i = \frac{\bar{r}_i - r_f}{\sigma^-_i} \cdot \sqrt{252} \] \[ \sigma^-_i = \sqrt{\frac{1}{n} \sum_{d: r_{i,d} < r_f} (r_{i,d} - r_f)^2} \]
\(\sigma^-_i\)Downside deviation — standard deviation computed only over negative return days
\(r_f\)Minimum acceptable return (set to 0)

The Sortino Ratio improves on the Sharpe Ratio by recognising that investors are not equally averse to upside and downside volatility. Upside volatility (high-return days) is desirable; only downside deviation is penalised. A momentum stock with high Sortino has been making gains without suffering disproportionate losing days.

Signal direction: Higher = better. A stock with a Sortino of 3.0 and Sharpe of 1.5 is producing gains primarily via large up-days with controlled drawdowns.

Earnings Composite Score

The Earnings Momentum Composite Score combines four distinct dimensions of earnings quality and surprise into a single 0–100 score. Each sub-score is individually normalized to [0, 100] and then weighted.

Earnings Composite Formula
\[ S^E_i = 0.30 \cdot F^{\text{SUE}}_i + 0.20 \cdot F^{\text{Rev}}_i + 0.25 \cdot F^{\text{Beat}}_i + 0.25 \cdot F^{\text{Margin}}_i \]
1 Raw earnings data (40Q)
2 Compute 4 sub-scores
3 Normalise each to [0,100]
4 Weighted sum → composite
5 Cross-sectional percentile rank

Standardised Unexpected Earnings (SUE)  Weight: 30%

EPS Surprise Scaled by Historical Variability
Bernard & Thomas (1989, 1990) — foundational post-earnings announcement drift research
Highest Weight · 30%
SUE per Quarter
\[ \text{SUE}_{i,q} = \frac{e_{i,q} - \hat{e}_{i,q}}{\sigma_{i,q}} \]
\[ F^{\text{SUE}}_i = \sigma\!\left(\overline{\text{SUE}}^{8Q}_i\right) \]
\(e_{i,q}\)Reported EPS for stock \(i\) in quarter \(q\)
\(\hat{e}_{i,q}\)Consensus analyst EPS estimate immediately before earnings
\(\sigma_{i,q}\)Standard deviation of the stock's last 8 quarterly EPS surprises
\(\overline{\text{SUE}}^{8Q}_i\)Mean SUE over the trailing 8 quarters
\(\sigma(\cdot)\)Sigmoid normalisation to [0, 100]

The denominator normalises for each company's own earnings predictability — a company that routinely beats by $0.05 has lower variability than one that beats or misses by $0.50. This scaling makes SUE scores comparable across companies of different sizes and volatility.

Bernard & Thomas (1989) demonstrated that stocks with high SUE exhibit post-earnings announcement drift (PEAD) — they continue to outperform for 60+ trading days after the earnings release. This is one of the most replicated anomalies in finance.

Bernard, V. L. & Thomas, J. K. (1989). "Post-Earnings-Announcement Drift: Delayed Price Response or Risk Premium?" Journal of Accounting Research, 27, 1–36.

EPS Revision Trend  Weight: 20%

Analyst Estimate Revision Momentum
Chan, Jegadeesh & Lakonishok (1996) — earnings revision momentum predicts returns
20%
Revision Trend Score
\[ F^{\text{Rev}}_i = 0.6 \cdot \beta^{\text{slope}}_{i,4Q} + 0.4 \cdot \text{median\_surprise}_{i,6Q} \]
\(\beta^{\text{slope}}_{i,4Q}\)OLS slope of quarterly EPS surprise (vs. consensus) over the trailing 4 quarters — captures whether surprises are trending up or down
\(\text{median\_surprise}_{i,6Q}\)Median EPS surprise percentage over the trailing 6 quarters — captures the level of sustained outperformance

The slope component detects acceleration in earnings beats — a company going from small beats to large beats is more bullish than one with consistently large beats. The level component anchors the score to the absolute magnitude of outperformance. The 4-quarter lookback for slope (rather than 8 quarters) avoids distortion from recovery-period outliers.

Chan, L.K.C., Jegadeesh, N., & Lakonishok, J. (1996). "Momentum Strategies." Journal of Finance, 51(5), 1681–1713.

Beat Streak Score  Weight: 25%

Earnings Execution Consistency
Skinner & Sloan (2002) — negative earnings surprises have disproportionately large price impacts
25%
Beat Streak Composite
\[ F^{\text{Beat}}_i = 0.40 \cdot \text{streak}_i + 0.35 \cdot \text{beat\_rate}^{8Q}_i + 0.25 \cdot \text{rev\_beat\_rate}^{8Q}_i \]
\(\text{streak}_i\)Length of the current unbroken EPS beat streak (consecutive quarters beating consensus), normalised to [0,1] vs. 12Q maximum
\(\text{beat\_rate}^{8Q}_i\)Fraction of the trailing 8 quarters in which reported EPS exceeded consensus estimate
\(\text{rev\_beat\_rate}^{8Q}_i\)Fraction of trailing 8 quarters in which actual revenue exceeded consensus revenue estimate

Consistent earnings beats signal high-quality management execution, superior business model predictability, and analysts who systematically underestimate the company's earnings power. The streak component captures recency (a long ongoing streak is more valuable than past consistency that has broken), while the beat rate provides a broader 8-quarter view.

Skinner, D.J. & Sloan, R.G. (2002). "Earnings Surprises, Growth Expectations, and Stock Returns or Don't Let an Earnings Torpedo Sink Your Portfolio." Review of Accounting Studies, 7, 289–312.

Margin Expansion  Weight: 25%

Operating Profitability Trend
Novy-Marx (2013) — gross profitability predicts future returns
25%
Margin Expansion Score
\[ F^{\text{Margin}}_i = 0.60 \cdot \Delta \text{GM}^{4Q}_i + 0.40 \cdot \text{GM}^{\text{level}}_i \] \[ \Delta \text{GM}^{4Q}_i = \text{GM}_{q} - \text{GM}_{q-4} \]
\(\text{GM}_q\)Gross margin (gross profit / revenue) in the most recent quarter
\(\Delta \text{GM}^{4Q}_i\)Year-over-year change in gross margin (current quarter vs. same quarter one year prior, to control for seasonality)
\(\text{GM}^{\text{level}}_i\)Absolute gross margin level, normalised cross-sectionally

Expanding margins indicate that a company's competitive position is strengthening — either through pricing power, operational leverage, or cost efficiency. Novy-Marx (2013) demonstrates that gross profitability (a proxy for fundamental quality) has as much predictive power for future returns as traditional value metrics. The year-over-year delta is preferred over sequential change to eliminate seasonality effects common in retail, technology, and consumer companies.

Novy-Marx, R. (2013). "The Other Side of Value: The Gross Profitability Premium." Journal of Financial Economics, 108(1), 1–28.

Earnings Reactivity Score (ERS)

Market Sensitivity to Earnings Surprises
Measures how aggressively the market reprices a stock in response to earnings surprise magnitude
ERS Formula
\[ \text{ERS}_i = \frac{|R^{\text{earn}}_i|}{|\text{SUE}_i| + \varepsilon} \]
\(R^{\text{earn}}_i\)Earnings-day return — the close-to-close return on the trading day the earnings report impacts the stock price. For before-market-open (BMO) reports: the return on the announcement date. For after-market-close (AMC) reports: the return on the following trading day.
\(\text{SUE}_i\)EPS Surprise Percentage — the percentage difference between reported EPS and the consensus analyst estimate: \(\text{SUE}_i = \frac{\text{EPS}^{\text{actual}} - \text{EPS}^{\text{est}}}{|\text{EPS}^{\text{est}}|} \times 100\)
\(\varepsilon\)Smoothing constant = 0.1, added to prevent division by zero when the earnings surprise is exactly on consensus
\(|\cdot|\)Absolute value — ERS captures the magnitude of reactivity regardless of direction (beat or miss)
Earnings Day Determination
\[ R^{\text{earn}}_i = \begin{cases} R^{\text{close}}_{t} & \text{if report hour} < 10\text{:}00 \;(\text{BMO}) \\ R^{\text{close}}_{t+1} & \text{if report hour} \geq 16\text{:}00 \;(\text{AMC}) \end{cases} \]

Interpretation

The Earnings Reactivity Score quantifies how much "bang" the market delivers per unit of earnings surprise. A stock with a high ERS is one where even a modest beat or miss triggers a disproportionately large price move — suggesting the market views that company's earnings trajectory as especially meaningful for its valuation.

ERS Range Interpretation Typical Profile
ERS > 5.0 Highly reactive High-growth momentum names where earnings are a key catalyst; options premiums tend to be high around announcements
2.0 – 5.0 Moderately reactive Price moves roughly proportional to surprise size; efficient market pricing around earnings
0.5 – 2.0 Low reactivity Other factors (guidance, macro, sector rotation) dominate the post-earnings price response
< 0.5 Non-reactive Market largely ignores the reported EPS; forward guidance, backlog, or subscriber metrics may be the real price driver

Why ERS Matters

ERS is not a component of the Earnings Composite Score — it is a standalone diagnostic metric displayed alongside the composite ranking. It serves several practical purposes:

  • Options positioning: High-ERS stocks tend to have richer earnings-week implied volatility. Comparing the options-implied move (from the Price Predictor) against the historical ERS helps assess whether the straddle is fairly priced.
  • Risk management: A portfolio concentrated in high-ERS names faces outsized single-day drawdown risk around earnings season.
  • Alpha signal: A falling ERS over time can signal that a growth stock is transitioning to a "proven" phase where earnings beats are already priced in — a potential deceleration warning.

Averaging Convention

Average ERS (displayed in the leaderboard)
\[ \overline{\text{ERS}}_i = \frac{1}{N} \sum_{q=1}^{N} \text{ERS}_{i,q} \]

The average is computed over all quarters where both a valid earnings-day return and a non-null EPS surprise percentage exist. Quarters with missing price data or missing consensus estimates are excluded from the average.

Related literature: Livnat, J. & Mendenhall, R.R. (2006). "Comparing the Post-Earnings Announcement Drift for Surprises Calculated from Analyst and Time Series Forecasts." Journal of Accounting Research, 44(1), 177–205. — Establishes that the magnitude of post-earnings drift is linked to the size and nature of earnings surprises, a relationship ERS directly quantifies.