Why Indian market data is harder to work with
The boring infrastructure is most of the work. The analysis is the easy part.
Most publicly available writing about market data assumes US equities: clean vendor feeds, stable tickers, decades of well-maintained history. Indian market data is workable but noticeably rougher, in ways that are specific enough to be worth listing.
None of this is a complaint about NSE, whose public files are more accessible than many exchanges provide. It's a description of what building on them actually involves.
Symbols are not stable identifiers
Trading symbols change when companies rename, merge or restructure — and India has had a lot of corporate restructuring. A symbol is a label, not an identity.
Join history on symbol alone and two failure modes appear. You lose a company's record before its rename, or you attach one company's history to a different company that later acquired the symbol. The second is worse, because it produces a continuous-looking series that is two different businesses stitched together.
Special characters in symbols
Indian tickers contain characters that break naive tooling: ampersands in symbols like M&M and GVT&D, and hyphens in others.
An unescaped ampersand is invalid inside XML, which is exactly how it bit us — a generated sitemap failed to parse because symbol names went in raw. The same characters break filenames, URLs and CSV parsing in their own ways. Every symbol that reaches a filesystem path or a URL now goes through sanitisation, and that sanitisation has to be identical on both the writing and the reading side or you get files nobody can find.
The holiday calendar is irregular
Indian markets close for a substantial and shifting set of holidays, many tied to lunar calendars and therefore on different Gregorian dates each year. There are also occasional special sessions.
Any code that assumes five sessions a week, or that computes "30 weeks ago" by subtracting days, will drift. Session counts have to come from the actual trading calendar, which is one reason our trend line is defined in sessions rather than in calendar weeks.
Two exchanges, overlapping listings
Most large companies list on both NSE and BSE, with slightly different prices, volumes and sometimes different symbols for the same company. Mixing sources within one dataset introduces inconsistencies that look like market microstructure and aren't. We use NSE throughout, which is a limitation but at least a consistent one.
The F&O universe changes
The set of stocks with listed derivatives is revised periodically — symbols enter and exit based on liquidity criteria. So a historical study of F&O data has a universe that changes shape over time, in a way correlated with the stocks' own characteristics. Lot sizes get revised on top of that, which is why we report open interest in shares.
Mutual fund data has its own problems
AMFI's daily NAV publication is genuinely good — free, comprehensive, machine-readable. It also contains occasional glitch values, particularly in liquid and overnight categories where a NAV that should move by fractions of a percent occasionally posts an implausible jump and corrects the next day.
Scheme names are long, inconsistently formatted, and change when funds rename or merge. The same fund can appear under several name variants across time, and matching them is manual work no amount of string normalisation fully solves.
What follows from all this
Mostly, humility about precision. A number computed from Indian market data carries more construction-dependent uncertainty than the equivalent US figure, and small differences between two sources' answers usually reflect handling choices rather than one being wrong.
It also means the boring infrastructure — identifier mapping, calendar handling, corporate action processing, glitch detection — is most of the work. The analysis is the easy part.
Key takeaways
- Trading symbols are labels, not identities — joining history on symbol alone corrupts records.
- Ampersands in symbols like M&M break XML, filenames and URLs; sanitisation must match on both sides.
- The holiday calendar is irregular, so session counts must come from the real trading calendar.
- The F&O universe and lot sizes both change over time, reshaping any historical study.
- AMFI NAV data carries occasional glitch values and highly inconsistent scheme naming.
See these ideas on real stocks
StockLearn runs this read on ~2,000 NSE stocks every evening. Nifty 50 is free, no login.
Browse today's scan →This guide is educational and explains how StockLearn interprets common technical indicators, using illustrative examples. It is not investment advice or a recommendation to buy or sell any security.