BSE·histdataOpen console

CAVEATS · 6 MIN READ

What this BSE data covers — and what it doesn't

An honest scope note: end-of-day only, unadjusted, equity segment, thin trading across most of the listed universe, and delivery figures that lag. Read this before relying on the output.

An honest scope note. It is better to know the limits before you build something on top of this than to discover them halfway through.

What you get

  • Daily, end-of-day records for BSE-listed securities in the equity segment — one row per trading day.
  • Thirteen columns: date, the four price points, WAP, volume, trade count, turnover, the two delivery fields, and the two spread fields. Each one is explained here.
  • Long ranges in one file. Multi-year requests are fetched and stitched into a single workbook, with dates written as real spreadsheet dates, the header row frozen and filters enabled.
  • Around 5,000 active equity scrips, searchable by symbol, six-digit scrip code, or company name.

What you do not get

Anything intraday

No ticks, no minute or hourly bars, no order book, no bid-ask data. One row per day is the finest granularity available here, and the daily summary cannot be decomposed into what happened when.

Adjusted prices

Prices are as-traded. Splits, bonuses and dividends leave visible steps in the series. This is deliberate, and handling it is a guide of its own.

Indices

The Sensex and other BSE indices are not available through this tool. The searchable universe is equity scrips, and an index is not one. If you want to benchmark a stock against an index you will need to source the index series separately.

Derivatives, debt, and most non-equity instruments

No futures, no options, no bonds. Some ETFs and fund units appear in the scrip list because they trade in the equity segment, but they are not the target of this tool and their data quality varies.

Fundamentals

No earnings, no balance-sheet items, no ratios, no shareholding pattern, no market capitalisation. Prices and trading activity only.

A guaranteed-complete delivery series

Delivery data comes from a separate BSE file published on its own schedule. Recent rows routinely lack it, and the historical archive has gaps. Covered in detail here.

The thing most people underestimate

BSE lists far more securities than are meaningfully traded. Roughly a third of the universe sits in the X/XT long tail, and around one scrip in five is in a trade-to-trade group where intraday trading is prohibited outright. Group A — the part of the market with reliable daily liquidity — is about 15% of the list.

For a large fraction of scrips, then, a “daily” series is not really daily. There are missing sessions because the stock did not trade at all, closes that are stale last-traded prices, and rows built from a handful of transactions. Returns, volatility, correlations and moving averages computed from that are arithmetic performed on noise. Check No. of Trades before trusting any row, and read the group reference for what the classification implies.

How completeness varies with the range you ask for

Two different BSE sources sit behind the tool, and which one answers depends on your request:

  • Normally, BSE’s historical price endpoint answers. Long ranges go out as large windows. If BSE times out — which it does on very long histories — the range is split in half and each half retried, recursively, until the pieces come back.
  • For short ranges, there is a fallback.If the historical endpoint returns nothing for a range of about a month or less, the days are reassembled from BSE’s daily bhavcopy and delivery files instead, including older zipped formats for historical dates.

The practical implication: a long range that comes back empty will not fall back. If a multi-year request returns nothing, try a narrow window first to establish whether the scrip has data at all.

Freshness and availability

  • Today’s data will not be there during market hours. These are end-of-day records, published after the close.
  • The newest rows may lack delivery figures even once prices are available.
  • The scrip list is a snapshot, not a live feed. It is refreshed periodically, so a very recent listing or a recent symbol change may be missing.
  • Availability depends entirely on BSE. If the upstream endpoints change shape, rate-limit, or go down, this tool stops returning data. There is no cached copy to fall back on.

What this is and is not good for

Reasonable uses: studying the price history of a liquid scrip, coursework and academic projects, building a personal watchlist or portfolio record, sanity-checking a figure you saw elsewhere, exploratory research.

Not appropriate:as a system of record for accounting, tax filing, audit or dispute; as a live or near-live feed for execution; as the data layer under a production product; or as the sole source for any decision with money attached. For those, use official exchange publications or a licensed data vendor — and note that redistributing or commercialising exchange data is governed by BSE’s own terms, which is a separate question from anything this site can answer.

The full legal position is in the disclaimer and terms of use. The short version: verify anything that matters against the exchange.


Keep reading

Or go straight to the download console and pull a file.