API Reference
nse-data
nse.get()
from nsedata import nse
nse.get(category, subcategory, dataset, date, **kwargs) → pd.DataFrame
| Parameter | Type | Description |
|---|---|---|
category | str | capital_market, derivatives, debt, egr |
subcategory | str | e.g. equities_sme, equity, corporate |
dataset | str | Dataset key — see nse.list_datasets() |
date | str | "YYYY-MM-DD" (daily) or "YYYY-MM" (monthly) |
snapshot | int | 1–6 for cvar1 VaR margin snapshots only |
settno | str | Override settlement number for auction_buy/csqr (auto-calculated by default) |
Raises:
ValueError— unknown dataset or download-only formatRuntimeError— HTTP error (non-trading day, NSE unavailable)
nse.download()
nse.download(category, subcategory, dataset, date,
output_dir=".", s3_bucket=None, s3_prefix="",
**kwargs) → str
Returns local file path or "s3://bucket/key". Works for all datasets including download-only (DAT, LST, DOC).
nse.list_datasets()
nse.list_datasets(category=None) → pd.DataFrame
Columns: category, subcategory, dataset, name, frequency, df_supported, format
nse.get_historical_index()
nse.get_historical_index(index_name, start_date, end_date) → pd.DataFrame
Date format: "DD-Mon-YYYY" e.g. "01-Jan-2026"
Source: niftyindices.com
nse.get_tri()
nse.get_tri(index_name, start_date, end_date) → pd.DataFrame
Total Return Index. Same date format as get_historical_index.
nse.get_settlement_number()
nse.get_settlement_number(date) → str
Returns settlement number string e.g. "2026094" for "2026-05-22".
mcx-data
mcx.get_spot_recent()
from mcxdata import mcx
mcx.get_spot_recent(commodity="ALL", location="ALL") → pd.DataFrame
Returns today’s spot prices. No date param needed.
mcx.get_spot_archive()
mcx.get_spot_archive(from_date, to_date,
commodity="ALL", location="ALL") → pd.DataFrame
Date formats accepted: YYYY-MM-DD, DD/MM/YYYY, YYYYMMDD
Specify a commodity —
"ALL"returns empty (MCX API limitation).
mcx.get()
mcx.get(category, subcategory, dataset, date=None,
from_date=None, to_date=None,
commodity="ALL", location="ALL") → pd.DataFrame
Generic API mirroring nse-data pattern.
mcx.download()
mcx.download(category, subcategory, dataset, date=None,
from_date=None, to_date=None,
commodity="ALL", output_dir=".",
s3_bucket=None, s3_prefix="mcx-data/") → str
mcx.list_datasets()
mcx.list_datasets() → pd.DataFrame
mcx.list_commodities()
mcx.list_commodities() → list[str]
Returns 28 commodity names from live MCX data.
Subcategory Reference — NSE
| Category | Subcategory | Description |
|---|---|---|
capital_market | equities_sme | Equities & SME (32 datasets) |
capital_market | indices | Indices (2 datasets) |
capital_market | mutual_fund | Mutual Fund (1 dataset) |
capital_market | slb | Securities Lending & Borrowing (12 datasets) |
derivatives | equity | Equity F&O (8 datasets) |
derivatives | commodity | Commodity Derivatives (3 datasets) |
derivatives | currency | Currency Derivatives (3 datasets) |
derivatives | interest_rate | Interest Rate Derivatives (9 datasets) |
debt | corporate | Corporate Segment (15 datasets) |
debt | debt_segment | Debt Segment / WDM (4 datasets) |
debt | tri_party_repo | Tri-Party Repo (1 dataset) |
egr | egr | Electronic Gold Receipt (1 dataset) |
Dataset Reference — MCX
| Category | Subcategory | Dataset | Description |
|---|---|---|---|
spot | market | spot_recent | Today’s spot prices — all 28 commodities |
spot | market | spot_archive | Historical spot prices (requires specific commodity) |