The efficient market hypothesis says prices reflect all available information, so returns are essentially unpredictable. Decades of research say: mostly true, with well documented exceptions. Those exceptions are what factor investing is built on.

Here are the five statistical properties of equity return series that systematic strategies exploit, hedge or must allow for. I will show each one in real Indian data rather than describe it in the abstract, because the gap between what returns look like and what they do is easier to see than to explain.

Nifty 50 volatility came in waves: from 5% to 28% within two years

21 day annualised volatility of the Nifty 50, sampled weekly from November 2024 to October 2026, ranged from about 5% to about 28%.

Computed by RupeeCase from NSE daily index closes, 7 Oct 2024 to 9 Oct 2026.

Nifty 50 daily returns: what the series actually looks like
7 Oct 2024 to 9 Oct 2026, 498 daily log returns. Computed by RupeeCase from NSE daily index closes.
−0.02
lag 1 autocorrelation of returns
close to zero: direction is hard to predict
0.21
lag 1 autocorrelation of absolute returns
size of moves is predictable
5.3
kurtosis
normal is 3: fat tails
5.2% to 28.3%
range of 21 day volatility
annualised, Sep and Apr 2026
Raw returns look random. Absolute or squared returns do not. That gap is what every volatility model tries to capture.
  1. Stationarity checkPrices are not stationary; returns roughly are.
  2. TransformPrice to log return.
  3. FitA mean model, then a variance model such as GARCH.
  4. Check residualsLjung Box and ARCH LM tests.
  5. Walk forwardRefit on a rolling window, test on unseen data.

Most retail back tests skip steps 1 and 4, which is how a spurious pattern ends up looking like an edge.

The five properties

1. Volatility clustering: hedge against it
Large moves tend to follow large moves, in either direction. Calm weeks cluster, and so do turbulent ones. In the Nifty 50 data above, the size of today's move is correlated with the size of yesterday's at 0.21, while the direction is not correlated at all. Risk should therefore be managed dynamically: the same position carries more risk in a turbulent month than in a calm one.
2. Short term reversal: allow for it
Over 1 to 4 weeks, individual stocks that fell sharply tend to bounce, and sharp risers tend to give some back. The cause is mostly microstructure: liquidity providers absorb large one sided flows and prices recover as the imbalance unwinds. This is why classic momentum skips the most recent month.
3. Medium term momentum: exploit it
Over 3 to 12 months, winners have tended to keep winning and losers to keep losing. Jegadeesh and Titman documented it in US data in 1993, and it has been found in many markets since, India included. The usual explanation is behavioural: investors under react to good news, so it takes months to be priced in. NSE runs momentum indices built on this, such as the Nifty200 Momentum 30.
4. Long term reversal: exploit it slowly
Over 3 to 5 years, prior losers have tended to beat prior winners, the opposite of momentum. De Bondt and Thaler documented it in 1985. The explanation is over reaction: long term losers become too cheap, long term winners too expensive. It is part of why value investing works, and it means momentum and contrarian signals can coexist at different horizons.
5. Calendar effects: be aware, do not build on them
Some periods behave differently: volatility around the Union Budget, results seasons, F&O expiry days, and quarter end flows from institutions. Some of these are robust, many are data mining artefacts. They can matter for execution timing; they are too unstable to be a primary strategy.

Stationarity in plain words

A series is stationary when its average and its spread do not drift over time. Prices fail that test: the Nifty 50 at 22,520 on 9 Oct 2026 has a completely different level from the Nifty of a decade ago, so an average of past prices tells you little. Daily returns come much closer: they hover around a small average with a spread that changes, but does not trend away.

The standard check is the augmented Dickey Fuller test. In plain words, it asks whether the series tends to pull back towards a stable level or wanders off with no anchor. A p value below 0.05 suggests an anchor. Price series almost always fail it; return series almost always pass. If you ever see a back test or a model built on raw price levels, that is the first question to ask.

GARCH: modelling volatility clustering

GARCH (generalised autoregressive conditional heteroskedasticity) models are the standard tool for time varying volatility. The idea: today's variance depends on yesterday's variance and yesterday's surprise.

GARCH(1,1)
σ²ₜ = ω + α ε²ₜ₋₁ + β σ²ₜ₋₁
σ²ₜ is today's variance, ε²ₜ₋₁ yesterday's squared return shock, σ²ₜ₋₁ yesterday's variance. α is how strongly volatility reacts to news; β is how long high volatility lasts. α + β close to 1 means shocks fade slowly.

Worked example: fitting GARCH to the Nifty 50

I fitted a GARCH(1,1) to the same 498 days of Nifty 50 returns, by maximum likelihood with the long run variance fixed at the sample variance. The result: α = 0.08, β = 0.90, so persistence α + β = 0.98. That number has a practical meaning. A volatility shock decays by 2% a day, so half of it is gone after about 34 trading days, roughly a month and a half.

Put that in rupees. Suppose you size a ₹10 lakh equity position to a risk budget. On a calm day the model says annualised volatility is 10%, and you hold the full ₹10 lakh. After a week of 2% to 3% daily moves the model's estimate rises to 20%. To keep the same risk you would hold about ₹5 lakh. A month and a half later, if markets calm down, the estimate is back halfway and so is your position. That is volatility targeting, and it is not forecasting returns. It is forecasting the size of moves, which the data say is genuinely predictable.

Fit by RupeeCase on NSE daily closes, 7 Oct 2024 to 9 Oct 2026. Two years is a short sample for GARCH; treat the parameters as illustrative of the typical shape, which is similar in most equity indices.

How long a volatility shock lasts

Share of the shock still left 65%
Half life 34 trading days

In GARCH(1,1) the excess variance decays by the factor alpha + beta each day.

A note on Indian data length. Clean daily data for many Indian indices and stocks covers two decades at most, and corporate actions must be adjusted carefully. That is enough for a GARCH fit, but it covers only a few complete market cycles. Structural changes, such as the growth of retail participation and the expansion of index derivatives, mean the oldest data may describe a different market.

Trend following

Buys strength, 3 to 12 months

  • Wins in long directional markets
  • Whipsawed in choppy ranges
  • Exits late at turning points
Mean reversion

Buys weakness, weeks or years

  • Wins in range bound markets
  • Keeps buying a falling stock in a real decline
  • Needs patience and position limits
Tap a side: two signals that rarely work at the same time.

Mean reversion vs trend following: the regime question

Mean reversion strategies (contrarian, value) and trend following strategies (momentum) both have empirical support. They do not work at the same time; each has stretches where it dominates.

  • Mean reversion tends to dominate in choppy, range bound markets. Momentum strategies get whipsawed, buying breakouts that fail.
  • Trend following tends to dominate in strong directional markets. Contrarian strategies keep buying cheap stocks that keep getting cheaper.
  • The workable answer is diversification across signal types, not switching between them. Identifying the regime in real time is very hard; holding both is easy.

The monthly data show how noisy this is over short windows. Of the 24 month end to month end changes from October 2024 to October 2026, the Nifty 50 rose in only 10, and the lag 1 autocorrelation of its monthly returns was −0.2, a hint of reversal at the index level over that stretch. Two years later the sign could flip. Do not build a strategy on a pattern you saw in 24 numbers.

MythIf daily returns look random, nothing about the market is predictable.

FactDirection is close to random, but the size of moves is not: big days cluster. Volatility can be forecast usefully even when returns cannot.

Common mistake: modelling prices instead of returns

The common beginner mistake is fitting a model to price levels. Prices trend and wander, so almost anything fitted to them shows a high R² and a strong relationship. Two unrelated rising series will appear correlated simply because both went up. That is called a spurious regression, and it fooled economists long before it fooled traders.

Work with returns, check they are roughly stationary, and test what remains in the residuals. If your model only works on prices, it does not work.

How this shows up in RupeeCase

Time series ideas in RupeeCase strategies

The RupeeCase strategies rank stocks with a momentum composite: price trend over several look back windows, adjusted for risk. That is property 3 put to work, with the risk adjustment acknowledging property 1. The fixed rebalance calendar, every 1 to 4 weeks depending on the strategy, keeps the signal fresh without trading on daily noise. Each factsheet shows the best and worst week and the deepest falls of the model, which is volatility clustering written in the record. Read the methodology on any strategy page, for example Midcap, and the factor background in Path 2.

Questions readers ask

Can time series models predict stock prices?

They predict the size of moves much better than their direction. Daily return direction in a liquid index like the Nifty 50 is close to unpredictable; volatility is clearly persistent and can be forecast usefully over days to weeks.

What is the difference between momentum and mean reversion?

Horizon. Over a few weeks individual stocks tend to reverse; over 3 to 12 months they have tended to continue; over 3 to 5 years they have tended to reverse again. A well built strategy is explicit about which horizon it trades.

Is GARCH still used?

Yes, widely, for risk estimation and volatility targeting. More complex models exist, but simple GARCH style models with sensible structure remain hard to beat for forecasting volatility out of sample.