Atlas · Methodology · Evidence

Does the scoring actually work?

Every score on this board is a claim that a higher number should precede a higher return. This page is the measurement of that claim — each lens tested against what the stock actually did next, across 2019-01-01 → 2024-05-31 and 2024-09-09 → 2026-07-29.

It is deliberately unflattering. Where a lens shows nothing, the page says so; where a lens has pointed the wrong way, it says that too. Nothing here is hand-written — every figure is read live from the study journal.

First

How to read this page

What rank-IC means

On each date, rank every stock by its lens score and rank it again by the return it went on to deliver. Rank-IC is how closely those two orderings agree: +1 is perfect, 0 is a coin flip, negative means the score ordered them backwards.

What counts as good

+0.03 is a genuine equity factor — real money is managed on less. +0.10 is exceptional. Anything above +0.15 is more likely a bug or a look-ahead leak than an edge, and should be investigated before it is believed.

Hit rate

The share of tested dates on which the score pointed the right way at all. A high average IC carried by a handful of dates is fragile; a hit rate near 50% says exactly that.

Why there are no t-statistics

A 126-session forward window measured on 1,343 consecutive dates re-uses almost all the same price history each time — roughly 11 independent observations, not 1,343. The usual t-statistic would read enormous and mean nothing, so it is not shown at all rather than shown with a caveat nobody reads.

The eras are never averaged

In June 2024 the scored universe was cut from ~1,900 names to the NIFTY 500. That is a different population, not more of the same one, so blending the two periods into a single number would hide the most important thing this study found. They are reported side by side, always. A third era began on 2026-08-21 when a ₹2.5cr liquidity floor set the universe at 1,198 names — too few dates have passed to report it.

Lens by lens

The verdict on each lens

Headline read: large-caps, 63 sessions (about three months) forward. The full grid below carries every horizon and cap band. A lens with no evidence is not removed — it is the most useful cell on the page.

policy

Sector tailwind — the read on where policy and the cycle are pushing an industry.

Predicted returns in both periods — the ordering survived the universe change. The steadiest evidence on this page.

Wide universecarries signal
Rank-IC
+0.064
Hit rate
67.4%
Dates
1,343

2019 → May 2024: the top decile of large-caps out-returned the bottom decile by +6.6% over the next 3 months on average, and the score ordered returns correctly on 67.4% of the 1,343 dates tested.

Large-caps, 63 sessions forward · cap coverage 59.5% · 1,360–1,431 names ranked per date · before the universe was cut

Narrow universeweak
Rank-IC
+0.029
Hit rate
52.9%
Dates
433

Jun 2024 → today: the top decile of large-caps out-returned the bottom decile by +3.2% over the next 3 months on average, and the score ordered returns correctly on 52.9% of the 433 dates tested.

Large-caps, 63 sessions forward · cap coverage 100.0% · 475–482 names ranked per date · cut to NIFTY 500

Read this carefully. Read this as a SECTOR call, not stock selection. Policy is scored per sector and broadcast to every constituent — on 2024-05-31 it took just 9 distinct values across 2,093 stocks. It ranks industries well; it says nothing about which name inside an industry to own.

technical

Trend, momentum and relative strength against the Nifty 500 and the sector.

Worked, then inverted. It predicted returns before June 2024; since the cut to NIFTY 500 a higher score has preceded a LOWER return.

Wide universecarries signal
Rank-IC
+0.037
Hit rate
57.6%
Dates
1,343

2019 → May 2024: the top decile of large-caps out-returned the bottom decile by +2.0% over the next 3 months on average, and the score ordered returns correctly on 57.6% of the 1,343 dates tested.

Large-caps, 63 sessions forward · cap coverage 59.5% · 1,360–1,431 names ranked per date · before the universe was cut

Narrow universeweak
Rank-IC
−0.075
Hit rate
30.3%
Dates
433

Jun 2024 → today: the top decile of large-caps out-returned the bottom decile by −3.8% over the next 3 months on average, and the score ordered returns correctly on 30.3% of the 433 dates tested.

Large-caps, 63 sessions forward · cap coverage 100.0% · 475–482 names ranked per date · cut to NIFTY 500

flow

Delivery, institutional buying and the shape of who is accumulating.

Worked, then inverted. It predicted returns before June 2024; since the cut to NIFTY 500 a higher score has preceded a LOWER return.

Wide universeweak
Rank-IC
+0.025
Hit rate
61.4%
Dates
1,343

2019 → May 2024: the top decile of large-caps out-returned the bottom decile by +2.6% over the next 3 months on average, and the score ordered returns correctly on 61.4% of the 1,343 dates tested.

Large-caps, 63 sessions forward · cap coverage 59.5% · 1,360–1,431 names ranked per date · before the universe was cut

Narrow universeweak
Rank-IC
−0.026
Hit rate
42.0%
Dates
433

Jun 2024 → today: the top decile of large-caps out-returned the bottom decile by −1.4% over the next 3 months on average, and the score ordered returns correctly on 42.0% of the 433 dates tested.

Large-caps, 63 sessions forward · cap coverage 100.0% · 475–482 names ranked per date · cut to NIFTY 500

fundamental

Returns on capital, margins, growth and leverage from the filed financials.

Pointed the wrong way before June 2024; nothing measurable since.

Wide universeweak
Rank-IC
−0.036
Hit rate
38.5%
Dates
1,343

2019 → May 2024: the top decile of large-caps out-returned the bottom decile by −5.7% over the next 3 months on average, and the score ordered returns correctly on 38.5% of the 1,343 dates tested.

Large-caps, 63 sessions forward · cap coverage 59.7% · 1,360–1,431 names ranked per date · before the universe was cut

Narrow universeno evidence
Rank-IC
−0.004
Hit rate
48.3%
Dates
433

Jun 2024 → today: the top decile of large-caps out-returned the bottom decile by +3.4% over the next 3 months on average, and the score ordered returns correctly on 48.3% of the 433 dates tested.

Large-caps, 63 sessions forward · cap coverage 100.0% · 475–482 names ranked per date · cut to NIFTY 500

valuation

What is being paid for those fundamentals, against the stock’s own history and peers.

Points the wrong way in both periods — a higher score has preceded a lower return throughout. Not noise; a consistent inversion.

Wide universeweak
Rank-IC
−0.024
Hit rate
53.5%
Dates
1,343

2019 → May 2024: the top decile of large-caps out-returned the bottom decile by −1.8% over the next 3 months on average, and the score ordered returns correctly on 53.5% of the 1,343 dates tested.

Large-caps, 63 sessions forward · cap coverage 59.5% · 1,360–1,431 names ranked per date · before the universe was cut

Narrow universeweak
Rank-IC
−0.021
Hit rate
42.3%
Dates
433

Jun 2024 → today: the top decile of large-caps out-returned the bottom decile by +0.2% over the next 3 months on average, and the score ordered returns correctly on 42.3% of the 433 dates tested.

Large-caps, 63 sessions forward · cap coverage 100.0% · 475–482 names ranked per date · cut to NIFTY 500

catalyst

The signal read of recent exchange filings, insider deals and bulk deals.

Pointed the wrong way before June 2024; nothing measurable since.

Wide universeweak
Rank-IC
−0.018
Hit rate
45.4%
Dates
1,343

2019 → May 2024: the top decile of large-caps out-returned the bottom decile by −1.9% over the next 3 months on average, and the score ordered returns correctly on 45.4% of the 1,343 dates tested.

Large-caps, 63 sessions forward · cap coverage 59.4% · 1,360–1,431 names ranked per date · before the universe was cut

Narrow universeno evidence
Rank-IC
−0.008
Hit rate
41.6%
Dates
433

Jun 2024 → today: the top decile of large-caps out-returned the bottom decile by −0.8% over the next 3 months on average, and the score ordered returns correctly on 41.6% of the 433 dates tested.

Large-caps, 63 sessions forward · cap coverage 100.0% · 475–482 names ranked per date · cut to NIFTY 500

composite

The blend — the 0–100 conviction score every other page is built on.

Nothing measurable before June 2024; has pointed the wrong way since.

Wide universeno evidence
Rank-IC
+0.000
Hit rate
54.6%
Dates
1,343

2019 → May 2024: the top decile of large-caps out-returned the bottom decile by −1.2% over the next 3 months on average, and the score ordered returns correctly on 54.6% of the 1,343 dates tested.

Large-caps, 63 sessions forward · cap coverage 59.5% · 1,360–1,431 names ranked per date · before the universe was cut

Narrow universeweak
Rank-IC
−0.066
Hit rate
31.4%
Dates
433

Jun 2024 → today: the top decile of large-caps out-returned the bottom decile by −0.1% over the next 3 months on average, and the score ordered returns correctly on 31.4% of the 433 dates tested.

Large-caps, 63 sessions forward · cap coverage 100.0% · 475–482 names ranked per date · cut to NIFTY 500

Read this carefully. The composite is the score the board leads with, so its row is the one that matters most. It is measured here exactly as it is served, with no re-weighting. On this evidence the blend does not improve on its parts: 3 of the 6 lenses it blends score a higher IC than the composite itself in the wide era, and 5 of 6 in the narrow era (large-caps, 63 sessions). That is the single most actionable finding on this page.

Everything measured

Every cell of the study

Rank-IC / hit rate / dates, for each lens across three forward horizons and five cap bands. Cap coverage is shown for every cap band because it qualifies the number beside it.

LensHorizonCohortWide universeNarrow universe
ICHitDatesCap cov.ICHitDatesCap cov.
policy21dall+0.04672.9%1,343+0.02053.8%468
policy21dlarge+0.03658.4%1,34359.5%+0.03355.6%468100.0%
policy21dmid+0.02258.7%1,34359.5%+0.02657.9%468100.0%
policy21dsmall+0.02258.1%1,34359.5%+0.03160.9%468100.0%
policy21dmicro+0.01961.2%1,34359.5%−0.02545.3%468100.0%
technical21dall+0.01660.4%1,343−0.00656.2%468
technical21dlarge+0.02555.9%1,34359.5%−0.03246.2%468100.0%
technical21dmid+0.00753.5%1,34359.5%−0.00449.1%468100.0%
technical21dsmall+0.03962.9%1,34359.5%−0.03045.1%468100.0%
technical21dmicro+0.02465.1%1,34359.5%−0.09627.1%468100.0%
flow21dall+0.01868.3%1,343−0.00750.0%468
flow21dlarge+0.00652.0%1,34359.5%−0.02844.9%468100.0%
flow21dmid+0.00149.7%1,34359.5%−0.02934.2%468100.0%
flow21dsmall+0.01458.5%1,34359.5%−0.01543.8%468100.0%
flow21dmicro+0.01859.9%1,34359.5%+0.04062.8%468100.0%
fundamental21dall+0.02859.2%1,343+0.00753.4%468
fundamental21dlarge−0.02343.8%1,34359.7%−0.01042.7%468100.0%
fundamental21dmid−0.00446.1%1,34359.7%−0.00649.8%468100.0%
fundamental21dsmall−0.00348.5%1,34359.7%+0.00654.9%468100.0%
fundamental21dmicro+0.00952.0%1,34359.7%+0.01552.3%468100.0%
valuation21dall+0.00453.8%1,343−0.00643.8%468
valuation21dlarge−0.02048.9%1,34359.5%−0.02842.1%468100.0%
valuation21dmid+0.03762.6%1,34359.5%+0.01851.9%468100.0%
valuation21dsmall−0.00850.0%1,34359.5%+0.00352.3%468100.0%
valuation21dmicro+0.01051.4%1,34359.5%+0.07174.6%468100.0%
catalyst21dall+0.02059.7%1,343+0.00557.0%468
catalyst21dlarge−0.00349.5%1,34359.4%+0.00050.2%468100.0%
catalyst21dmid−0.00847.5%1,34359.4%+0.02658.6%468100.0%
catalyst21dsmall−0.01942.5%1,34359.4%−0.00346.6%468100.0%
catalyst21dmicro−0.00644.4%1,34359.4%−0.02844.0%468100.0%
composite21dall+0.02568.1%1,343−0.00845.5%468
composite21dlarge−0.00250.7%1,34359.5%−0.05834.6%468100.0%
composite21dmid+0.02862.0%1,34359.5%+0.00650.0%468100.0%
composite21dsmall+0.00550.6%1,34359.5%−0.00450.6%468100.0%
composite21dmicro+0.01561.7%1,34359.5%+0.01657.7%468100.0%
policy63dall+0.06080.2%1,343+0.02653.3%433
policy63dlarge+0.06467.4%1,34359.5%+0.02952.9%433100.0%
policy63dmid+0.03359.2%1,34359.5%+0.04463.0%433100.0%
policy63dsmall+0.04563.2%1,34359.5%+0.04165.4%433100.0%
policy63dmicro+0.03266.0%1,34359.5%−0.03249.4%433100.0%
technical63dall+0.04169.8%1,343−0.01644.3%433
technical63dlarge+0.03757.6%1,34359.5%−0.07530.3%433100.0%
technical63dmid+0.01857.3%1,34359.5%−0.03141.1%433100.0%
technical63dsmall+0.07673.3%1,34359.5%−0.03242.5%433100.0%
technical63dmicro+0.04668.6%1,34359.5%−0.14319.6%433100.0%
flow63dall+0.02569.0%1,343−0.00943.2%433
flow63dlarge+0.02561.4%1,34359.5%−0.02642.0%433100.0%
flow63dmid+0.01957.9%1,34359.5%−0.03529.1%433100.0%
flow63dsmall+0.02866.7%1,34359.5%−0.02745.0%433100.0%
flow63dmicro+0.02662.2%1,34359.5%+0.05372.1%433100.0%
fundamental63dall+0.01355.9%1,343−0.00543.9%433
fundamental63dlarge−0.03638.5%1,34359.7%−0.00448.3%433100.0%
fundamental63dmid−0.02440.1%1,34359.7%−0.02734.0%433100.0%
fundamental63dsmall−0.01942.1%1,34359.7%−0.01637.4%433100.0%
fundamental63dmicro−0.01544.0%1,34359.7%+0.00151.3%433100.0%
valuation63dall+0.00353.6%1,343−0.00549.6%433
valuation63dlarge−0.02453.5%1,34359.5%−0.02142.3%433100.0%
valuation63dmid+0.05564.2%1,34359.5%+0.03765.6%433100.0%
valuation63dsmall−0.00849.7%1,34359.5%−0.00246.9%433100.0%
valuation63dmicro+0.01456.7%1,34359.5%+0.09180.6%433100.0%
catalyst63dall+0.00953.7%1,343−0.00143.2%433
catalyst63dlarge−0.01845.4%1,34359.4%−0.00841.6%433100.0%
catalyst63dmid−0.01739.6%1,34359.4%+0.03961.4%433100.0%
catalyst63dsmall−0.02839.0%1,34359.4%−0.02140.6%433100.0%
catalyst63dmicro−0.02732.1%1,34359.4%−0.05035.6%433100.0%
composite63dall+0.03067.5%1,343−0.02139.7%433
composite63dlarge+0.00054.6%1,34359.5%−0.06631.4%433100.0%
composite63dmid+0.04065.9%1,34359.5%+0.00646.9%433100.0%
composite63dsmall+0.02657.0%1,34359.5%−0.01544.3%433100.0%
composite63dmicro+0.01461.7%1,34359.5%−0.02743.9%433100.0%
policy126dall+0.07380.3%1,343+0.03754.3%370
policy126dlarge+0.09972.8%1,34359.5%+0.05255.1%370100.0%
policy126dmid+0.06164.0%1,34359.5%+0.06772.4%370100.0%
policy126dsmall+0.07672.8%1,34359.5%+0.05469.7%370100.0%
policy126dmicro+0.04369.3%1,34359.5%−0.04040.5%370100.0%
technical126dall+0.05470.9%1,343+0.02357.3%370
technical126dlarge+0.05859.3%1,34359.5%−0.05040.5%370100.0%
technical126dmid+0.03563.4%1,34359.5%−0.03836.8%370100.0%
technical126dsmall+0.09577.4%1,34359.5%+0.00753.8%370100.0%
technical126dmicro+0.06378.9%1,34359.5%−0.09426.5%370100.0%
flow126dall+0.02771.5%1,343+0.00653.2%370
flow126dlarge+0.03364.3%1,34359.5%+0.00557.3%370100.0%
flow126dmid+0.02653.8%1,34359.5%−0.03432.2%370100.0%
flow126dsmall+0.03574.4%1,34359.5%−0.01235.1%370100.0%
flow126dmicro+0.03868.3%1,34359.5%+0.06169.5%370100.0%
fundamental126dall−0.00843.1%1,343−0.03035.7%370
fundamental126dlarge−0.04731.2%1,34359.7%+0.00455.1%370100.0%
fundamental126dmid−0.05427.3%1,34359.7%−0.05228.4%370100.0%
fundamental126dsmall−0.03642.2%1,34359.7%−0.06117.6%370100.0%
fundamental126dmicro−0.04824.0%1,34359.7%−0.01549.2%370100.0%
valuation126dall+0.00355.9%1,343+0.00150.5%370
valuation126dlarge−0.03351.8%1,34359.5%−0.00754.6%370100.0%
valuation126dmid+0.06364.8%1,34359.5%+0.05166.5%370100.0%
valuation126dsmall−0.00152.1%1,34359.5%+0.01654.6%370100.0%
valuation126dmicro+0.01559.1%1,34359.5%+0.08575.9%370100.0%
catalyst126dall−0.01145.2%1,343−0.01045.4%370
catalyst126dlarge−0.03541.1%1,34359.4%−0.00148.4%370100.0%
catalyst126dmid−0.03134.0%1,34359.4%+0.04158.1%370100.0%
catalyst126dsmall−0.04428.7%1,34359.4%−0.05518.9%370100.0%
catalyst126dmicro−0.05621.8%1,34359.4%−0.10425.4%370100.0%
composite126dall+0.02262.7%1,343−0.00851.6%370
composite126dlarge+0.00151.3%1,34359.5%−0.02939.2%370100.0%
composite126dmid+0.05666.3%1,34359.5%+0.00355.4%370100.0%
composite126dsmall+0.04170.1%1,34359.5%+0.00151.6%370100.0%
composite126dmicro+0.00456.1%1,34359.5%−0.04627.8%370100.0%
Known defects in this study

What these numbers cannot tell you

Some decile spreads are withheld

Before June 2024, 86 instruments carry 28,507 sub-₹1 close_adj rows — PRIVISCL reads ₹0.05 on 2020-03-23 with an adjustment factor of 1.0, so the raw close is wrong rather than the adjustment. One such row inside a decile drags its arithmetic mean: the worst-affected cell reads +2811%. Rank-IC is immune, because ranks do not care how far wrong a price is. Any spread outside ±100% over a quarter is therefore shown as withheld, not printed.

Cap bands are today’s cap bands

The cap band comes from v_stock_cap, which has no date dimension — it is the universe as it stands now. In the wide era that leaves roughly 41% of the cross-section without a band, and those names are not missing at random: they are disproportionately the ones that later left the universe. Every cap-band figure on this page carries its coverage for exactly this reason. The “all” cohort has no such gap.

Overlapping windows, not independent tests

Consecutive test dates share almost all of their forward window, so the effective sample is far smaller than the date count suggests. That is what inflates any significance test. It also means a lens can look stable simply because one long market episode repeats across hundreds of overlapping windows.