Any claim about a stock screen — "these names are ready to fly", "this setup doubles your odds" — is meaningless without the base rate it must beat. So we measured the base rates for the liquid Pakistan Stock Exchange universe, next-bar-forward with no lookahead, and we publish them here. If someone quotes you a hit rate, divide it by these.
| horizon | n | median return | P(gain) | P(≥5%) | P(upper lock) |
|---|---|---|---|---|---|
| 1 session | 117,930 | — | — | 6.83% | 3.96% |
| 5 sessions | 117,125 | −0.17% | 48.2% | 18.8% | — |
Two things worth staring at: the typical liquid PSX stock's 5-session median is slightly negative, and roughly 1 in 25 locks upper circuit on any given day. A screen bragging "40% of our picks locked" is a 10x claim — demand the sample size. Note also that quoting the unfiltered universe (all 485 symbols) flatters P(≥5%) by about a point by including names you cannot actually trade at size.
| setup (all next-bar-forward) | n | P(lock) | lift | P(≥5%) |
|---|---|---|---|---|
| locked today + 2+ locks in 5 days | 2,035 | 34.7% | 8.76x | 40.7% |
| locked today + volume ignited (≥1.8x) | 2,095 | 26.8% | 6.77x | 33.7% |
| at 60d high + volatility ≥4%/day | 2,257 | 25.0% | 6.32x | 31.6% |
| locked today | 4,817 | 24.3% | 6.12x | 31.0% |
| 2+ locks in 5 sessions | 4,653 | 22.5% | 5.67x | 27.9% |
| at 60d high (<2% away) | 6,781 | 11.6% | 2.93x | 16.5% |
| cooled 3–8 days after a lock | 17,229 | 5.0% | 1.27x | 8.8% |
| setup | n | P(lock) | lift |
|---|---|---|---|
| volatility compression (ATR5/ATR20 < 0.6) | 7,823 | 2.11% | 0.53x |
| compressed + near 60d high | 699 | 2.15% | 0.54x |
Volatility contraction — the classic "coiled spring about to explode" — does not precede a PSX upper lock. It anti-predicts it. A quiet chart is quiet because nothing is happening.
The best 5-session median of any setup we measured is +0.93%. Not one clears 1%. Meanwhile the median maximum favorable excursion of the better setups is +8–9% — the move happens, and holding to day 5 gives nearly all of it back. Typical adverse excursion is −5 to −8%, so inside one week the honest reward-to-risk is roughly 1:1.
| setup | n | median (5d close) | P(≥5%) touch | median best point (MFE) |
|---|---|---|---|---|
| gap-UP open ≥+5% | 2,116 | +0.93% | 34.7% | +8.4% |
| just locked (day 0) | 4,798 | +0.78% | 34.6% | +9.3% |
| gap-DOWN open −5..−10% | 988 | +0.74% | 33.2% | +8.1% |
| already ran >50% in 21d | 3,866 | −1.14% | 31.2% | +8.6% |
| fell >10% in 5d (dip-buy) | 5,312 | +0.26% | 27.2% | +6.7% |
Read the fourth row twice: "already ran >50%" has a healthy-looking 1.66x lift on touching +5% — and a negative median. Ranking screens on touch-probability alone selects high-variance losers. Rank on the median; read the touch odds beside it.