How to Identify Momentum Stocks: The Measurement Method
Momentum is identified by ranking a defined universe on risk-adjusted past return over a fixed lookback window. Here is the measurement method, step by step, with no lists.
A momentum stock is identified by measurement, not by reputation: you fix a universe, compute each security’s price return over a defined lookback window, adjust that return for how volatile the path was, rank the universe on the resulting score, and take a fixed cut off the top. Everything interesting is in the parameter choices, and every one of them has to be settled before you look at the answer.
This article is about the method only. It contains no security names, no lists, and no suggestion of what to hold. The point is to show how the number is built so that you can read, replicate or criticise anyone else’s momentum screen, including your own.
Step 1: fix the universe before anything else
The universe decides most of the result, and it is the step people skip.
A momentum process must be able to trade in and out on schedule, so the universe is normally restricted to securities that are liquid enough to absorb the intended order size. In Indian equities this usually means a broad but liquid index universe, with additional filters for minimum traded value, minimum free float, and a minimum listing history long enough to compute the lookback.
Three rules keep the universe honest:
- Define it by an objective condition, such as membership of a stated index on the ranking date, not by a hand-picked list.
- Use the universe as it stood on the ranking date, not today’s membership. Using today’s list quietly removes companies that were later delisted or dropped, which is survivorship bias.
- Apply eligibility screens consistently, including any exclusions for suspended trading, recent listing, or securities under exchange surveillance.
Step 2: choose the lookback window
The lookback window is the period over which past return is measured. Published research and index methodologies most often use six months or twelve months.
The reasoning behind that range is worth knowing. Very short windows, roughly a month or less, tend to capture short-term reversal rather than continuation, so a naive one month rank often ends up buying what is about to fall back. Very long windows, several years, start to overlap with long-horizon mean reversion and behave more like a value signal in reverse.
You may use more than one window and average the ranks. That is a legitimate design choice and it reduces the chance that the whole result depends on one arbitrary number. What is not legitimate is trying several windows, keeping the one with the best outcome, and presenting it as the design. That is overfitting.
Step 3: decide on the skip period
Many implementations exclude the most recent month from the measurement window, for example ranking on the twelve months ending one month before the ranking date. This is usually written as a twelve minus one construction.
The reason is the short-term reversal effect described above. Skipping the most recent month reduces the chance that the score is dominated by a very recent spike that is about to unwind. It is a defensible default, not a law. Whichever you choose, state it explicitly, because a twelve month rank and a twelve minus one rank can produce noticeably different lists.
Step 4: adjust for risk
Raw past return treats a smooth climb and a violent one as identical if they end in the same place. Most serious methodologies correct for this.
The standard adjustment is to divide the return by the standard deviation of the security’s returns over the same window, usually computed from daily or weekly returns and then annualised. The result is often called a normalised or risk-adjusted momentum score. Its practical effect is to push jumpy, event-driven moves down the ranking and steadier trends up.
Two implementation details matter. First, use the same return frequency and the same window for both numerator and denominator, or the score is not internally consistent. Second, decide how you handle a security with almost no volatility in the window, because dividing by a very small number produces an artificially enormous score. A minimum volatility floor or a winsorisation rule handles this.
Step 5: standardise, then rank
Scores from different windows or different adjustments are not directly comparable, so they are usually standardised before being combined.
The two common approaches are:
- Cross-sectional z-score. For each security, subtract the universe mean score and divide by the universe standard deviation. This expresses each score in standard deviations from the average and makes different measures additive.
- Percentile rank. Convert each score to its rank within the universe, expressed from zero to one hundred. This is more robust to outliers and easier to explain, at the cost of throwing away the size of the gaps.
Winsorising the extremes, meaning capping the top and bottom of the distribution before standardising, is standard practice and prevents one extraordinary move from distorting the whole cross-section.
Once standardised, the cut is a decision, not a discovery. A fixed number of names or a fixed percentile, decided in advance, both work. What does not work is choosing the cut after seeing which names fall on each side of it. The mechanics of turning definitions into a repeatable score are covered further in building a factor scorecard.
Step 6: apply the filters that keep the list tradable
A pure price rank will happily hand you a list you cannot own. Filters are the correction.
- Liquidity filter. A minimum average daily traded value, sized against your intended position, so the rebalance is executable.
- Price integrity filter. Exclusions for securities with frequent trading halts, circuit-limit behaviour, or long non-trading stretches inside the lookback, because their measured return is not a fair reading.
- Concentration caps. Limits on single stock weight and on sector weight. A momentum rank has no view on diversification, so this has to be imposed from outside.
- Corporate action adjustment. Prices must be adjusted for splits, bonuses and similar actions before any return is computed. An unadjusted series shows an artificial crash on the ex-date and will produce a false ranking.
Step 7: fix the rebalance rule
Momentum decays, so the ranking has to be recomputed on a schedule. Fix the schedule in advance: a stated frequency, a stated ranking date, and a stated execution lag between computing the rank and acting on it.
The execution lag is the honesty test. If your process ranks on a closing price and assumes execution at that same close, it has assumed information you did not have when you traded. A realistic lag, and realistic costs, belong in the design from the start rather than as an afterthought. See transaction costs in backtests for what those costs are made of.
A buffer rule is worth considering. Rather than dropping a holding the moment it falls out of the top cut, many methodologies hold it until it falls below a wider threshold. This reduces turnover materially without changing the character of the portfolio.
Step 8: verify the measurement was point-in-time
Every input in the chain has to be what was knowable on the ranking date: index membership, adjusted prices, and any fundamental screen used alongside the price rank. If a screen uses reported financials, remember that the figures for a period are not public on the last day of that period, and that later restatements change the historical record.
This is the difference between a screen you can defend and one that quietly borrows from the future. The reasoning is set out in why point-in-time data matters.
What this method does not tell you
The measurement is precise. Its meaning is not.
- A high score is not a recommendation. The rank describes past price behaviour in a defined window. It is a descriptive statistic, nothing more.
- The method has no view on the business. Valuation, earnings quality, leverage, governance and disclosure are all invisible to it.
- Results depend heavily on the parameters. Window, skip, adjustment, cut and rebalance frequency all move the answer. A result that survives only one specific combination is not a finding.
- A ranking is not a strategy. Position sizing, risk limits, cost assumptions and an exit rule are separate decisions, and they determine outcomes at least as much as the rank does.
- Past persistence is not a promise. Documented factor behaviour in historical samples says nothing certain about future periods, and factors go through long stretches of underperformance.
If you cannot write your momentum rule down in a paragraph, with every parameter named, you do not have a rule. You have a habit.
Related reading
- Portfolio and Backtest Metrics, Explained: the hub guide to portfolio and strategy metrics.
- Momentum Investing in India: how the method is practised here, and its characteristic risks.
- Relative Strength Explained: measuring performance against a benchmark rather than in absolute terms.
- What Is Overfitting in Backtesting?: how parameter searching turns a screen into a story.
- Common Backtesting Mistakes: the recurring errors that make a rule look better than it was.
This article is educational. Altys Labs is not a registered research analyst or investment adviser, and nothing here is investment advice or a recommendation to buy, sell, or hold any security.
Frequently asked questions
How are momentum stocks identified?
By fixing a universe, measuring each security's price return over a defined lookback window, adjusting that return for its own volatility, ranking the universe on the resulting score, and taking a fixed cut such as the top decile. Every parameter has to be chosen before the ranking is run, not after seeing the output.
What lookback period is used for momentum?
Six month and twelve month windows are the most common in published research and index methodologies, often with the most recent month excluded to avoid short-term reversal. There is no single correct window, which is exactly why the choice must be fixed in advance and applied consistently.
Why divide past return by volatility?
Two stocks can post the same twelve month return by very different paths, one steady and one violent. Dividing by the standard deviation of returns over the same window rewards the steadier path and reduces the chance that the ranking is dominated by a handful of extreme moves.