Metadata-Version: 2.4
Name: bse-index-data
Version: 1.0.0
Summary: Download BSE India market data as pandas DataFrames — SENSEX, BSE indices, historical OHLC. Works on AWS Lambda.
Author-email: Nikhil Suthar <nikhil.suthar@lumiq.ai>
License-Expression: MIT
Project-URL: Homepage, https://github.com/NikhilSuthar/indian-market-data
Project-URL: Documentation, https://NikhilSuthar.github.io/indian-market-data
Project-URL: Repository, https://github.com/NikhilSuthar/indian-market-data
Project-URL: Bug Tracker, https://github.com/NikhilSuthar/indian-market-data/issues
Keywords: bse,bse-index-data,bse-data,bse-india,sensex,bombay-stock-exchange,india,stock-market,indices,market-data,financial-data,pandas,trading,historical-data,aws-lambda,s3
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Office/Business :: Financial :: Investment
Classifier: Typing :: Typed
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: requests>=2.31.0
Requires-Dist: pandas>=2.0.0
Requires-Dist: curl-cffi>=0.7.0
Provides-Extra: s3
Requires-Dist: boto3>=1.28.0; extra == "s3"
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: ruff; extra == "dev"

# bse-index-data

[![PyPI version](https://badge.fury.io/py/bse-index-data.svg)](https://pypi.org/project/bse-index-data/)
[![Python 3.9+](https://img.shields.io/badge/python-3.9+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

<p align="center">
  <strong>BSE India market data as pandas DataFrames.</strong><br/>
  SENSEX, BSE500, BANKEX and 50+ indices — historical OHLC + live quotes.<br/>
  Works on <strong>AWS Lambda</strong> and any cloud environment.
</p>

```bash
pip install bse-index-data
```

Part of the [indian-market-data](https://github.com/NikhilSuthar/indian-market-data) monorepo.

---

## Quick Start

```python
from bsedata import bse

# Historical SENSEX OHLC
df = bse.get_index("SENSEX", "2026-01-01", "2026-05-22")

# Historical BSE500
df = bse.get_index("BSE500", "2026-01-01", "2026-05-22")

# All 120+ indices for one date (single API call)
df = bse.get_all_indices("2026-05-22")

# Live SENSEX quote
df = bse.get_live_sensex()

# Download to S3 (Lambda with IAM role)
bse.download_index("SENSEX", "2026-01-01", "2026-05-22",
                   s3_bucket="my-bucket", s3_prefix="raw/bse/")

# List all 55 supported indices
bse.list_indices()
bse.list_indices(category="Sectoral")
```

## Supported Indices (55)

| Category | Indices |
|----------|---------|
| Broad Market | SENSEX, SENSEX50, SENSEXNXT50, BSE100, BSE200, BSE500, BSEALLCAP, BSEMIDCAP, BSESMALLCAP, BSE150MIDCAP, BSE250SMALLCAP, BSE400MIDSMALLCAP, BSE250LARGEMIDCAP, BSEMIDCAPSELECT, BSESMALLCAPSELECT, BSELARGECAP |
| Sectoral | BANKEX, BSEAUTO, BSECG, BSECD, BSECDGS, BSEENERGY, BSEFMCG, BSEFINANCE, BSEHC, BSEIT, BSEINDUSTRIALS, BSEMETAL, BSEOILGAS, BSEPOWER, BSEPRIVATEBANKS, BSEPSU, BSEREALTY, BSESERVICES, BSETECK, BSETELECOM, BSEUTILS |
| Thematic | BSECPSE, BSEIPO, BSESMEIPO, BSEGREENEX, BSECARBONEX, BSEINFRA, BSEMANUFACTURING, BHARAT22 |
| Strategy | BSEMOMENTUM, BSEQUALITY, BSEVALUE, BSELOWVOL, BSEDIVSTAB, BSE100ESG |
| Global | DOLLEX30, DOLLEX100, DOLLEX200 |

## CLI

```bash
bse-index-data list
bse-index-data list --category Sectoral
bse-index-data index --name SENSEX --from 2026-01-01 --to 2026-05-22
bse-index-data all-indices --date 2026-05-22
bse-index-data live
```

## License

MIT — data from [BSE India](https://www.bseindia.com).
