Pharmaceuticals — APIs & formulationsHistorical case study · data as of 30 Jul 2026 · published 02 Nov 2026 (95 days later)
Granules India — 100-point case study
How Granules India looked on 50 technical and 50 fundamental measures on 30 Jul 2026 — and what happened over the next three months. Education only; not a current view.
Codes
NSE: GRANULES · BSE: 532482
Close on 30 Jul 2026
₹833.95
Market cap then
₹22,742 crore
Valuation
P/E 38.2× · P/B 4.47×
Momentum
RSI (14) 47 · 1-year return +69.5%
Next 3 months
+0.7% vs Nifty 50 -5.2% (to 30 Oct 2026)
Scorecard
Technical — 50 points
14 bullish · 21 neutral · 2 caution · 12 bearish — the picture was mixed.
Close (to snapshot) Close (after) 50-day avg 200-day avg Support Resistance
Data note: Promoters converted preferential warrants in Sep 2026 (after the snapshot), which increased the share count; the snapshot analysis is not affected.
Technical analysis — 50 points
Calculated by code from daily prices up to 30 Jul 2026. Standard formulas (RSI, MACD, ADX use Wilder smoothing).
How to read the tags. Each of the 50 points gets one tag. Bullish the reading was favourable. Bearish the reading was unfavourable. Neutral the reading was in a normal range, or gave no clear message. Caution a warning sign or an unusual reading that deserves a closer look. Point 50 counts the other 49 tags. The chart is called positive when bullish tags beat bearish ones by 5 or more, negative when bearish tags beat bullish ones by 5 or more, and mixed otherwise. Under each point you will see what reading earns which tag. Tags describe the data on the snapshot date. They are not signals to buy or sell. Full guide to all 100 points →
A. Trend
#
Point
Reading
Tag
Commentary
1
Short-term trend (20 days)
slope -0.18%/day
Bearish
Over the last 20 sessions the regression line of closing prices was falling about 0.18% a day — a short-term downtrend.
Bullish slope above +0.10% a day (short-term uptrend) · Bearish slope below –0.10% a day (short-term downtrend) · Neutral between the two: a flat, sideways phase.
2
Medium-term trend (~5 months)
3M return +18.4%
Bullish
The 100-session trend line was up (+0.45%/day) and the stock was +18.4% over three months, so the medium-term picture was bullish.
Bullish slope above +0.05% a day · Bearish slope below –0.05% a day · Neutral in between.
3
Long-term trend (1 year)
1Y return +69.5%
Bullish
Compared with a year earlier the price was +69.5%. A strong positive year.
Bullish up more than 10% in a year · Bearish down more than 10% in a year · Neutral between –10% and +10%.
4
Weekly chart trend
10W 815.32 / 30W 688.91
Bullish
On the weekly chart the stock showed a weekly close above a rising 10-week and 30-week average stack.
Bullish weekly close above the 10-week average, which is above the 30-week · Bearish weekly close below the 10-week average, which is below the 30-week · Neutral when they are tangled.
5
Swing structure (highs/lows)
last highs 804.30→910.00; lows 721.15→736.50
Bullish
The two most recent swing points showed higher swing highs and higher swing lows — classic uptrend structure.
Bullish higher highs and higher lows (uptrend structure) · Bearish lower highs and lower lows (downtrend structure) · Neutral when one is higher and the other lower.
6
ADX (14) — trend strength
25.8
Bearish
ADX at 25.8 shows a trend of moderate strength. ADX measures strength only, not direction.
Bullish ADX 20 or more with +DI above –DI (a real trend, pointing up) · Bearish ADX 20 or more with –DI above +DI (a real trend, pointing down) · Neutral below 20: no clear trend. 20–30 is a moderate trend, above 30 a strong one.
7
+DI vs –DI
+DI 16.8 / –DI 17.8
Bearish
–DI was above +DI: sellers had the upper hand in directional movement.
Bullish +DI above –DI · Bearish –DI above +DI · No neutral zone for this point.
B. Moving averages
#
Point
Reading
Tag
Commentary
8
Price vs 20-day SMA
865.68 (-3.7%)
Bearish
Close of 833.95 was 3.7% below the 20-day SMA — the short-term trend filter was negative.
Bullish close above the average · Bearish close below the average · No neutral zone.
9
Price vs 50-day SMA
811.34 (+2.8%)
Bullish
Close of 833.95 was 2.8% above the 50-day SMA — the medium-term trend filter was positive.
Bullish close above the average · Bearish close below the average · No neutral zone.
10
Price vs 200-day SMA
652.35 (+27.8%)
Bullish
Close of 833.95 was 27.8% above the 200-day SMA — the long-term trend filter was positive.
Bullish close above the average · Bearish close below the average · No neutral zone.
11
9 / 21 EMA crossover
9E 849.11 / 21E 847.36
Bullish
The 9-day EMA was above the 21-day EMA; the last crossover happened on 19 Mar 2026.
The 50-day average was 24.4% above the 200-day. No 50/200 crossover occurred in the data window.
Bullish 50-day above 200-day (after a “golden cross”) · Bearish 50-day below 200-day (after a “death cross”) · No neutral zone.
13
50-day SMA slope
+7.9% in 20 sessions
Bullish
The 50-day average rose 7.9% over the past month — rising.
Bullish rose more than 0.5% · Bearish fell more than 0.5% · Neutral in between: flattening.
14
MA ribbon alignment
866 / 811 / 732 / 652
Bullish
The 20/50/100/200-day averages were perfectly stacked bullish (20 > 50 > 100 > 200).
Bullish neatly stacked 20 > 50 > 100 > 200 · Bearish neatly stacked 20 < 50 < 100 < 200 · Neutral when tangled (a transition or range).
15
Monthly anchored VWAP
863.76 (-3.5%)
Bearish
Anchored to the start of July, the volume-weighted average price was 863.76; the close was below it — buyers that month were on average under water.
Bullish close above VWAP (that month’s buyers on average in profit) · Bearish close below VWAP · No neutral zone.
C. Momentum
#
Point
Reading
Tag
Commentary
16
RSI (14)
47.1
Neutral
RSI at 47.1 was in the neutral 45–55 zone.
Bullish RSI 55–70 (positive momentum, not stretched) · Bearish RSI 30–45 (soft momentum) · Neutral 45–55. Caution at 70 or above (overbought) or 30 or below (oversold).
17
RSI divergence (last 40 days)
none
Neutral
Comparing the last 20 sessions with the 20 before: no divergence — RSI moved in line with price.
Bullish bullish divergence: price made a lower low but RSI a higher low · Caution for a bearish divergence (price higher high, RSI lower high). Neutral when RSI moved in line with price.
18
MACD line vs signal
MACD 9.16 / signal 18.20
Bearish
MACD was below its signal line — momentum turning or staying negative.
Bullish MACD above signal · Bearish MACD below signal · No neutral zone.
19
MACD histogram (5-day change)
-8.00 → -9.04
Bearish
The histogram fell over the last five sessions, meaning momentum was weakening.
Bullish up more than 2% · Bearish down more than 2% · Neutral between –2% and +2%.
D. Volatility
#
Point
Reading
Tag
Commentary
25
Bollinger Band position (%B)
%B 0.17 (bands 818.26–913.10)
Neutral
%B of 0.17 — inside the bands, lower half.
How to read: Caution above 1 or below 0 (outside the bands — an overextended move). Neutral inside the bands.
26
Bollinger width / squeeze
width 11.0% (38th pct of 6M)
Neutral
Band width was at the 38th percentile of the last six months, a normal level.
How to read: Caution when the width is in the lowest 15% of six months (a “squeeze” that often comes before a bigger move, direction unknown). Neutral otherwise.
27
ATR (14)
₹26.92 (3.2% of price)
Neutral
A typical day's range was about ₹26.92, or 3.2% of the price — useful for judging how much 'normal noise' to expect.
How to read: Information only. A higher % means bigger normal daily swings.
28
Historical volatility (30-day)
28.6% vs 1Y 30.0%
Neutral
Annualised 30-day volatility was 28.6%, close to the one-year level of 30.0%.
How to read: Caution when 30-day volatility is more than 1.25× the one-year level. Neutral otherwise.
29
Keltner Channel (20, 2×ATR)
793.85–902.64
Neutral
The close was inside the channel, so no volatility breakout.
Bullish close above the upper channel (strong upward push) · Bearish close below the lower channel · Neutral inside the channel.
30
Beta vs Nifty 50 (1Y daily)
0.89
Neutral
A beta of 0.89 means the stock tended to move less than the Nifty 50 day to day.
How to read: Information only. Above 1.1 moves more than the market, below 0.9 less, around 1 in line.
E. Volume & money flow
#
Point
Reading
Tag
Commentary
31
Volume vs 20-day average
last day 0.63× / 5-day 0.67×
Neutral
The final session traded 0.63× its 20-day average volume and the last five sessions averaged 0.67× — lighter than usual participation.
How to read: Information only. Above 1.2× is heavier than usual participation, below 0.8× lighter.
32
Up-day vs down-day volume (20d)
ratio 0.97
Neutral
Average volume on up days was 0.97× that on down days — balanced.
Bullish ratio above 1.15 (accumulation-leaning) · Bearish ratio below 0.85 (distribution-leaning) · Neutral between 0.85 and 1.15.
33
On-Balance Volume (20d)
OBV falling
Bearish
OBV fell over the month while price rose — volume diverged from price.
About ₹108 crore changed hands per day on average over 20 sessions — liquid.
How to read: Information only. Above ₹500 crore a day is highly liquid, above ₹50 crore liquid, below that moderately liquid.
F. Price levels
#
Point
Reading
Tag
Commentary
38
Support levels (S1/S2/S3)
824.40 / 758.50 / 736.50
Neutral
Nearest support (prior swing lows) sat at 824.40, 1.2% below the close, then 758.50, 736.50.
How to read: Information only. Levels to watch, not good or bad.
39
Resistance levels (R1/R2/R3)
910.00
Neutral
Nearest resistance (prior swing highs) sat at 910.00, 9.1% above the close.
How to read: Information only.
40
Monthly pivot points (for next month)
P 849.48 | R1 894.47 | S1 788.97
Neutral
Classic pivots from July's high/low/close gave a pivot of 849.48; the close was below it.
How to read: Information only.
41
Fibonacci retracement (6M swing)
23.6% 822 | 38.2% 768 | 50.0% 724 | 61.8% 680
Neutral
Measuring the 6-month rise from 537.65 to 910.00, the close was nearest the 23.6% retracement at 822.13.
How to read: Information only.
42
52-week high / low
H 910.00 / L 432.60
Neutral
The close was 8.4% below the 52-week high and 92.8% above the 52-week low.
Bullish within 5% of the 52-week high · Bearish within 5% of the 52-week low · Neutral in between.
43
Unfilled price gaps (6M)
none
Neutral
No unfilled price gaps in the last six months.
How to read: Information only.
G. Patterns
#
Point
Reading
Tag
Commentary
44
Price structure / chart pattern
pullback inside a larger uptrend
Neutral
Rule-based pattern scan: pullback inside a larger uptrend. (Classical patterns like head-and-shoulders are judgement calls; we report only what the rules detect.)
Bullish rising channel (both trends up) · Bearish falling channel (both trends down) · Neutral for tight consolidation, a bounce in a downtrend, a pullback in an uptrend, or a sideways range.
45
Breakout / breakdown (20-day)
range 804.50–910.00
Neutral
The close was inside the prior 20-day range of 804.50–910.00.
Bullish close above the 20-day high (breakout) · Bearish close below the 20-day low (breakdown) · Neutral inside the range.
46
Latest candlestick
Ordinary red candle
Neutral
On 30 Jul the candle opened 841.95, ranged 831.65–852.75 and closed 833.95: Ordinary red candle. Single candles are weak signals on their own.
Bullish hammer, bullish engulfing or bullish marubozu · Bearish shooting star, bearish engulfing or bearish marubozu · Neutral for a doji, inside bar or ordinary candle. Single candles are weak signals.
47
Ichimoku Cloud
cloud 710.17–766.46; Tenkan 864.45 / Kijun 834.25
Bullish
Price was above the cloud and the Tenkan line was above the Kijun line — a bullish Ichimoku setup.
Bullish close above the cloud · Bearish close below the cloud · Neutral inside the cloud.
H. Relative strength & summary
#
Point
Reading
Tag
Commentary
48
Relative strength vs Nifty 50
1M +1.5% / 3M +17.8%
Bullish
The stock outperformed the Nifty 50 by 17.8 points over three months and outperformed by 1.5 points over one month.
Bullish ahead of the Nifty 50 by more than 2 points · Bearish behind by more than 2 points · Neutral within ±2 points.
49
Relative strength vs Nifty 50 (6M)
6M +49.8%
Bullish
No sector index in today's data set, so we show the 6-month comparison instead: 49.8 points ahead of the Nifty 50.
Bullish ahead by more than 2 points · Bearish behind by more than 2 points · Neutral within ±2 points.
50
Technical summary
14 bullish · 12 bearish · 21 neutral · 2 caution
Neutral
Across the 49 readings the technical picture was mixed. Levels that mattered: support 824.40, resistance 910.00. This is a description of the chart on 30 Jul 2026, not a forecast. How to read the score: the strongest possible reading is 49 bullish · 0 bearish, and the weakest is 0 bullish · 49 bearish. Most companies land in between. The chart is called positive when bullish tags beat bearish ones by 5 or more, negative when bearish tags beat bullish ones by 5 or more, and mixed otherwise. Even a 49–0 score describes the past and is not a reason to buy, and a 0–49 score is not a reason to sell.
Bullish bullish tags beat bearish ones by 5 or more (“positive”) · Bearish bearish tags beat bullish ones by 5 or more (“negative”) · Neutral (“mixed”) otherwise. Strongest possible: 49 bullish · 0 bearish.
Fundamental analysis — 50 points
Uses only results published by 30 Jul 2026: FY26 annual (Apr 2025–Mar 2026), the Jan–Mar 2026 quarter and the Jun 2026 shareholding. ₹ crore, consolidated unless stated. Valuation uses the 30 Jul 2026 close.
How to read the tags. Each of the 50 points gets one tag. Bullish the reading was favourable. Bearish the reading was unfavourable. Neutral the reading was in a normal range, or gave no clear message. Caution a warning sign or an unusual reading that deserves a closer look. Point 50 counts the other 49 tags. The numbers are called positive when bullish tags beat bearish ones by 4 or more and are at least 1.5 times as many, negative the other way round, and mixed otherwise. Under each point you will see what reading earns which tag. Tags describe the data on the snapshot date. They are not signals to buy or sell. Full guide to all 100 points →
A. Valuation
#
Point
Reading
Tag
Commentary
1
P/E (trailing 12 months)
38.2×
Neutral
At ₹833.95 the market valued the company at about ₹22,742 crore, or 38.2× the ₹596 crore profit of the four quarters to Mar 2026. That is a premium multiple — the market expected growth.
How to read: Information only. Below 15 is a low multiple, 15–30 moderate, above 30 a premium (the market expects growth). Compare with peers and the company’s own history.
2
Price / Book
4.47×
Neutral
Market cap was 4.47× the Mar 2026 book value (equity + reserves) of ₹5,085 crore.
How to read: Information only. Main yardstick for banks; asset-light businesses usually trade at high P/B.
3
Price / Sales
4.24×
Neutral
The company was valued at 4.24× its trailing-12-month sales of ₹5,366 crore.
How to read: Information only.
4
EV / EBITDA (approx.)
20.5×
Neutral
Enterprise value (market cap + ₹1,512 cr borrowings; cash not netted) was 20.5× trailing operating profit of ₹1,185 crore.
How to read: Information only. Lower means cheaper relative to operating profit.
5
Earnings yield
2.6%
Neutral
The inverse of P/E: each ₹100 invested bought about ₹2.6 of annual earnings. Investors often compare this with the ~6–7% yield on 10-year government bonds.
How to read: Information only. Often compared with the ~6–7% yield on 10-year government bonds.
6
PEG (P/E ÷ 3-yr profit CAGR)
7.96
Caution
P/E of 38.2 divided by 3-year profit growth of 4.8% a year gives a PEG of 7.96. Below 1 is often read as growth being cheaply priced; above 2 as expensive. Note: the Mar 2025 quarter carried unusual other income of ₹33 crore — a one-off that distorts year-on-year profit comparisons.
Bullish below 1 (growth cheaply priced) · Bearish above 2 (growth expensively priced) · Neutral 1–2, or when profit did not grow (not meaningful).
7
Dividend yield (trailing 12M)
0.39%
Neutral
Dividends with ex-dates in the 12 months to the snapshot totalled ₹3.25 a share, a 0.39% yield on the ₹833.95 price.
Bullish above 3% · Neutral at 3% or less. Never tagged Bearish.
8
Market capitalisation
₹22,742 cr
Neutral
At about ₹0.23 lakh crore the company was a small-cap.
How to read: Information only. Above ₹1 lakh crore large-cap, ₹30,000 crore–₹1 lakh crore mid-cap, below that small-cap (our rule of thumb).
9
Graham number vs price
₹302.81 vs ₹833.95
Neutral
Benjamin Graham's conservative fair-value yardstick √(22.5 × EPS × book value per share) came to ₹302.81; the price was 175% above it. Quality franchises usually trade above this number.
Bullish price below the Graham number · Neutral when the price is above it (most quality companies are).
B. Growth
#
Point
Reading
Tag
Commentary
10
Revenue growth FY26 (YoY)
+19.7%
Bullish
Revenue for FY26 was ₹5,366 crore, +19.7% versus FY25.
FY26 net profit was ₹595 crore, +18.5% on FY25's ₹502 crore. Note: the Mar 2025 quarter carried unusual other income of ₹33 crore — a one-off that distorts year-on-year profit comparisons.
Bullish above 10% · Bearish below 0% · Neutral 0–10%. Caution if a one-off item distorted the figure.
13
Q4 FY26 profit growth (YoY)
+32.9%
Caution
Quarterly profit was ₹202 crore versus ₹152 crore a year earlier (+32.9%). Note: the Mar 2025 quarter carried unusual other income of ₹33 crore — a one-off that distorts year-on-year profit comparisons.
Revenue compounded at 5.9% a year from FY23 to FY26.
Bullish above 12% a year · Bearish below 5% a year · Neutral 5–12%. Caution if an acquisition inflated it.
15
Profit CAGR (3 years)
4.8%
Caution
Net profit compounded at 4.8% a year from FY23 to FY26. Note: the Mar 2025 quarter carried unusual other income of ₹33 crore — a one-off that distorts year-on-year profit comparisons.
Bullish above 12% a year · Bearish below 5% a year · Neutral 5–12%.
16
Revenue CAGR (5 years)
10.6%
Neutral
Over five years (FY21–FY26) revenue compounded at 10.6% a year.
Bullish above 12% a year · Bearish below 5% a year · Neutral 5–12%.
17
EPS growth FY26 (reported)
+16.1%
Caution
Reported EPS went from ₹20.68 to ₹24.01 (+16.1%). Differences from profit growth come from changes in share count (bonus, buyback, new issues). Note: the Mar 2025 quarter carried unusual other income of ₹33 crore — a one-off that distorts year-on-year profit comparisons.
Bullish all tests passed, or all but one · Bearish half the tests or fewer passed · Neutral in between.
49
Automated screen flags
0 strength(s) · 5 weakness(es)
Neutral
No strengths flagged. Weaknesses: Promoter holding has decreased over last quarter: -0.62%; The company has delivered a poor sales growth of 10.6% over past five years; Company has a low return on equity of 13.6% over last 3 years; Company might be capitalizing the interest cost; Dividend payout has been low at 7.84% of profits over last 3 years. (Flags generated by the data source’s rule screen.)
How to read: Information only.
50
Fundamental summary
10 bullish · 1 bearish · 32 neutral · 6 caution
Bullish
On the numbers published by 30 Jul 2026 the fundamental picture leaned positive. Valuation: P/E 38.2×, P/B 4.47×. This describes the data, not a recommendation. How to read the score: the strongest possible reading is 49 bullish · 0 bearish, and the weakest is 0 bullish · 49 bearish. Most companies land in between. The numbers are called positive when bullish tags beat bearish ones by 4 or more and are at least 1.5 times as many, negative the other way round, and mixed otherwise. Even a 49–0 score describes the past and is not a reason to buy, and a 0–49 score is not a reason to sell.
Bullish bullish tags beat bearish ones by 4 or more and are at least 1.5× as many (“positive”) · Bearish the same the other way round (“negative”) · Neutral (“mixed”) otherwise. Strongest possible: 49 bullish · 0 bearish.
News in the three months before the snapshot
Company news from 30 Apr 2026 – 30 Jul 2026 that an investor could have known on the snapshot date.
03 Jun 2026Granules gets 4 USFDA observations for US facility — US subsidiary Granules Pharmaceuticals Inc. received an Establishment Inspection Report for its Chantilly, Virginia facility with Voluntary Action Indicated classification after a 30 Mar–3 Apr 2026 inspection that resulted in four Form 483 observations. source
06 Jul 2026Granules secures sole First-to-File status for generic narcolepsy drug LUMRYZ in US — The company received sole First-to-File status from the USFDA for its generic sodium oxybate extended-release oral suspension, which may carry 180-day exclusivity; it is the company's second such designation. source
09 Jul 2026Granules India to report first quarter results on July 21 — The company scheduled a board meeting on 21 July 2026 to approve unaudited Q1 FY27 results, followed by an analyst and investor call. source
21 Jul 2026Granules India reports Q1 consolidated net profit of Rs 180 crore — Consolidated revenue from operations rose about 22% YoY to Rs 1,476.77 crore and net profit about 60% YoY to Rs 179.96 crore; net profit was about 11% lower than Q4 FY26. source
22 Jul 2026Granules India Q1 FY27 profit surges 60% as revenue climbs 22% & EBITDA jumps 37% — EBITDA rose 37% YoY to Rs 3,389 million with margin about 23%; North America was 72% of revenue and finished dosages 74%; net debt fell to Rs 1,012 million. source
22 Jul 2026Granules India share price falls after Q1 results — The stock fell about 5% intraday to Rs 832 from a previous close of Rs 875.70 on the day after the Q1 FY27 results. source
What happened next (30 Jul 2026 → 30 Oct 2026)
Price went from ₹833.95 to ₹839.75 by 30 Oct 2026 (+0.7%) while the Nifty 50 moved -5.2% — outperforming by 5.9 points.
Highest ₹923.65 on 15 Sep 2026; lowest ₹782.05 on 13 Oct 2026.
S1 824.40: broken on a closing basis on 01 Oct 2026.
S2 758.50: held on a closing basis.
R1 910.00: not cleared on a closing basis.
200-day SMA: price was above it at the snapshot and stayed on the same side through the period.
Apr–Jun 2026 results (reported 21 Jul 2026): revenue ₹1,477 crore (+22.1% YoY), net profit ₹180 crore (+59.3% YoY), operating margin 23% vs 20% a year earlier (Screener consolidated figures).
Later news
11 Sep 2026Granules India executes Rs 1,160 crore block deal; 5.3% shareholding transacted — About 1.33 crore shares (about 5.3% of equity) changed hands in a block deal at Rs 872.50 per share, roughly 3% below the previous close. source
14 Sep 2026Granules India promoter offloads 1.72 crore shares, group stake drops to 31.08% — Promoter Dr. Krishna Prasad Chigurupati sold 1.72 crore shares via block deal and open-market trades on 11 Sep 2026 to fund the second tranche of a preferential issue; reported buyers included Capital Group and Kotak Mahindra Life Insurance. source
15 Sep 2026Granules India co-promoter pays Rs 1,093 crore for 2.49 crore warrants ready for conversion — The company received the remaining 75% (Rs 1,093 crore) from the promoter group on 2,49,14,530 preferential convertible warrants, making them eligible for conversion into equity shares. source
07 Oct 2026Granules India files Paragraph IV certification for Ruxolitinib ER tablets — The company filed a Paragraph IV certification with its ANDA for ruxolitinib extended-release tablets and believes it may qualify for first-to-file status, subject to FDA review. source
Educational summary. On 30 Jul 2026 the technical picture was mixed and the fundamental picture leaned positive. Over the next three months the stock moved +0.7% against -5.2% for the Nifty 50. A mixed chart gave no clear message, and the outcome shows why mixed readings are hard to act on. One case proves nothing on its own; the value is in seeing many cases over time. This page does not say whether to buy, sell or hold Granules India today.
Method designed by our founder, CPA · ACCA · CIA. Numbers are computed by our engine from the sources listed below.
Sources: daily prices — Yahoo Finance history pages; financials and shareholding — Screener.in (fetched 02 Nov 2026); index — Nifty 50 via Yahoo Finance; news — linked articles. Calculations by Manage Our Finance. Report a correction
More case studies today
₹665.70close 30 Jul
Graphite electrodesNSE: GRAPHITEData as of 30 Jul 2026