Home · Guides · MCX trading hours in 1-minute data: the 23:30 and 23:55 close, and when volume trades
GUIDE · MCX SESSION TIMES · CATALOG VERIFIED 2026-11-11
MCX trading hours in 1-minute data: the 23:30 and 23:55 close, and when volume trades
MCX non-agricultural commodities trade 09:00 to 23:30 IST while the US observes daylight saving, and 09:00 to 23:55 IST otherwise; the 23:55 close runs from 2 November 2026 to 12 March 2027. Options Data (optionsdata.shop) MCX 1-minute futures files cover that full day for MCX GOLD, SILVER, CRUDEOIL, NATURALGAS and their mini contracts, from JAN 2023–MAR 2023 (start varies by symbol) to OCT 2026. For an evening-session backtest, use the MCX futures, 3 years pack.
MCX futures, 3 yearsMCX futures + options, 1 yearFree MCX sample Get free sample by email
Get the free sample by email → check the columns
Dates on this page are read from the live file catalog, not typed by hand. Full matrix: /coverage.
Front-month MCX futures, 2 Jan 2023 – 16 Oct 2026. US summer = days when New York observes daylight saving (MCX close 23:30 IST); US winter = other days (close 23:55 IST). Evening share = median share of the day's traded volume from 17:00 IST to the close.
| Commodity | Evening share, US summer | Evening share, US winter | Busiest hour IST, US summer | Busiest hour IST, US winter |
|---|---|---|---|---|
| NATURALGAS | 75% | 74% | 18:00–19:00 | 19:00–20:00 |
| CRUDEOIL | 67% | 69% | 19:00–20:00 | 20:00–21:00 |
| SILVER | 58% | 59% | 19:00–20:00 | 20:00–21:00 |
| MCX GOLD | 51% | 52% | 19:00–20:00 | 20:00–21:00 |
What are MCX trading hours for crude oil, natural gas, silver and MCX GOLD?
MCX non-agricultural commodities, including MCX GOLD, SILVER, CRUDEOIL, NATURALGAS and their mini contracts, trade Monday to Friday in one normal session from 09:00 IST to 23:30 IST, extended to 23:55 IST while the US is on standard time. An order-cancellation-only session runs 08:45–08:59 IST.
MCX agricultural futures close earlier: most stop at 17:00 IST, and Cotton, Cotton Seed Wash Oil and Kapas trade to 21:00 IST. Session times are published on the MCX market-operations page and changed by exchange circular.
When does MCX switch between the 23:30 and 23:55 IST close?
MCX moves the close on the first trading day after the US clock change. Circular MCX/TRD/550/2026 (29 September 2026) sets 09:00–23:55 IST from 2 November 2026 to 12 March 2027. Circular MCX/TRD/491/2025 set 23:55 IST from 3 November 2025 to 6 March 2026, and MCX/TRD/068/2026 restored 23:30 IST from 9 March 2026.
An MCX backtest that spans several years therefore needs a date-aware session end: 23:30 IST on US-daylight-saving dates and 23:55 IST on the rest. A fixed 23:30 cut drops the last 25 minutes of every US-winter day.
What timestamps do the first and last MCX 1-minute bars carry?
MCX 1-minute rows in Options Data files carry the bar start time in IST, timezone-naive, in the datetime column, so the 09:00 row covers 09:00:00–09:00:59. In front-month futures from 2 Jan 2023 to 16 Oct 2026, the last traded bar is 23:29 on 82% of US-summer days (23:30 on 15%) and 23:54 on 98% of US-winter days.
The first traded MCX bar is 09:00 IST on about 90% of trading days. On some exchange holidays MCX keeps only the evening session; on those days the first bar in the files is 17:00 IST.
MCX futures files dated 15 Jul to 14 Aug 2026 name the time column timestamp instead of datetime (layout B); the code below renames it. Both layouts are listed on the file schema page.
How much MCX volume trades in the evening session?
Most MCX energy and metals volume trades after 17:00 IST. Median share of the front-month futures day volume traded from 17:00 IST to the close, 2 Jan 2023 to 16 Oct 2026: NATURALGAS 74–75%, CRUDEOIL 67–69%, SILVER 58–59%, MCX GOLD 51–52%. The 17:00-to-close window is 45–46% of the MCX trading clock.
Method: for each commodity and trading day, the futures contract with the highest day volume was kept; only bars with volume above zero were counted; each date was tagged US summer or US winter from the New York calendar. The table above lists the medians for each regime.
An MCX intraday backtest that stops at 15:30 IST, the NSE equity close, leaves out the hours that carry most CRUDEOIL and NATURALGAS volume.
Why does the busiest MCX hour move by one hour in November and March?
The busiest MCX hour lines up with the New York clock: 09:00 in New York is 18:30 IST during US daylight saving and 19:30 IST otherwise. In front-month futures, the busiest hour for CRUDEOIL, SILVER and MCX GOLD is 19:00–20:00 IST in US summer and 20:00–21:00 IST in US winter; NATURALGAS moves from 18:00–19:00 to 19:00–20:00 IST.
A time-of-day rule such as "enter at 19:00 IST" lands at a different point of the US session after each switch. Test US-summer and US-winter dates separately, or define the entry time in New York time and convert it to IST for each date.
How do I measure the MCX evening session in Python?
The pandas script keeps traded bars, picks the front-month contract by day volume, cuts each day at 23:30 or 23:55 IST from the New York daylight-saving flag, and prints the median evening volume share per regime. Run on CRUDEOIL futures from 2 Jan 2023 to 16 Oct 2026, it prints 0.67 for US summer and 0.69 for US winter.
import glob, pandas as pd
names = {"timestamp": "datetime", "symbol": "stock_code", "expiry": "expiry_date", "oi": "open_interest"}
files = sorted(glob.glob("CRUDEOIL_FUT_1min_*.parquet"))
df = pd.concat(pd.read_parquet(f).rename(columns=names) for f in files)
df["datetime"] = pd.to_datetime(df["datetime"]) # IST, bar start
df = df[df["volume"] > 0] # traded bars only
df["day"] = df["datetime"].dt.normalize()
df["expiry"] = pd.to_datetime(df["expiry_date"], format="mixed")
# front month = the contract with the most volume that day
vol = df.groupby(["day", "expiry"])["volume"].sum().reset_index()
df = df.merge(vol.loc[vol.groupby("day")["volume"].idxmax(), ["day", "expiry"]])
# US daylight saving on that date sets the close: 23:30 or 23:55 IST
noon_ny = (df["day"] + pd.Timedelta(hours=12)).dt.tz_localize("America/New_York")
df["us_dst"] = noon_ny.map(lambda t: t.dst() > pd.Timedelta(0))
close = df["us_dst"].map({True: "23:30", False: "23:55"})
df = df[df["datetime"].dt.strftime("%H:%M") < close]
day = df.groupby("day").agg(us_dst=("us_dst", "first"), vol=("volume", "sum"))
day["evening"] = df[df["datetime"].dt.hour >= 17].groupby("day")["volume"].sum() / day["vol"]
print(day.groupby("us_dst")["evening"].median()) # True = US summer
Which MCX data do I need for an evening-session intraday backtest?
An MCX evening-session backtest needs 1-minute futures that run from 09:00 to the 23:30 or 23:55 IST close on every date, with volume and open interest. The MCX futures, 3 years pack holds MCX GOLD, SILVER, CRUDEOIL, NATURALGAS and their mini contracts; MCX futures and options, 1 year adds MCX options from SEP 2025.
The free MCX 1-minute sample holds one US-summer trading day (16 Oct 2026) for all eight MCX symbols, with last bars at 23:29 and 23:30 IST. Per-symbol coverage is in the MCX intraday data guide; CRUDEOIL details are in the MCX crude oil data guide. All MCX packs: MCX data.
Exactly which fields are in the files
Futures files
| Column (layout A · layout B) | Type | Meaning |
|---|---|---|
| datetime · timestamp | timestamp | Bar start time, IST wall-clock |
| stock_code · symbol | string | Underlying / contract code |
| expiry_date · expiry | string | Futures contract expiry |
| open / high / low / close | float | Traded price OHLC within the bar |
| volume | int | Volume traded in the bar |
| open_interest · oi | int | Open interest at that bar |
Each futures row is one contract in one minute: traded OHLC, volume and open interest in lots, with the contract expiry on every row. Timestamps are IST bar starts.
Format: Parquet. Validate on the free sample and the schema page before buying.
FAQ
What time does MCX close from 2 November 2026?
MCX non-agricultural commodities close at 23:55 IST from 2 November 2026 to 12 March 2027, per MCX circular MCX/TRD/550/2026. The 23:30 IST close applies while the US observes daylight saving.
Are MCX 1-minute timestamps in IST or UTC?
IST. Options Data MCX files store timezone-naive IST bar start times, so the 23:54 row is the bar from 23:54:00 to 23:54:59.
Do MCX 1-minute files include the evening session?
Yes. Options Data MCX files run to the exchange close: the last traded bar is 23:29 or 23:30 IST on US-summer days and 23:54 IST on US-winter days.
Is there a break at 17:00 in MCX trading?
No. MCX non-agricultural commodities trade in one continuous normal session from 09:00 IST to the close. 17:00 IST is the close for most MCX agricultural futures.
Which MCX commodity has the highest evening volume share?
NATURALGAS: a median 74–75% of front-month futures day volume traded from 17:00 IST to the close between 2 Jan 2023 and 16 Oct 2026, ahead of CRUDEOIL at 67–69%.
Get the data
Free sample · Schema · Ask the AI for your data
MCX futures, 3 yearsMCX futures + options, 1 yearFree MCX sample Get free sample by email
Related guides
- Best source for NIFTY options historical data in India
- Best source for SENSEX options historical data
- Best source for MCX historical data
- How to choose Indian options historical data
- NSE option chain historical data in CSV or Parquet
- SENSEX options historical data at 1-minute resolution
- MCX intraday historical data: 1-minute futures and options
- Best source for NIFTY options backtesting data
- Expiry-day options backtesting data for NIFTY and SENSEX
- Download SENSEX expired options data (Parquet / CSV)
- NIFTY expired options data download: every strike, 1-minute, Parquet or CSV
- NIFTY 1-second options and spot files: structure and quality checks
- How to download NIFTY option data: 1-minute or 1-second, Parquet or CSV
- NIFTY open interest historical data by strike, minute by minute
- NIFTY weekly expiry data format: file names, expiry dates and weekly vs monthly
- NIFTY 1-minute vs 1-second option data: which one to download
- Working with Parquet in Python for options backtesting
- SENSEX option chain historical data: BSE chains minute by minute
- How bid/ask data improves backtest quality
- How to chart historical NIFTY call and put option prices
- SENSEX option data download: what you get and how to start
- SENSEX futures historical data download at 1-minute
- BANKEX options data download
- MCX crude oil data download: 1-minute futures and options
- MCX natural gas data download
- MCX silver data download
- NIFTY futures historical data download at 1-minute
- NIFTY 50 index 1-minute data download
- NIFTY option data in Excel: download, filter and chart
- NIFTY tick data download: what you need and what 1-second bars give you
- How to model slippage in a NIFTY options backtest with 1-minute data
- Which data do you need to backtest a NIFTY weekly short straddle held to expiry?
- Do you need NIFTY futures and spot data, or only options, for a backtest?
- How do I download MCX GOLD 1-minute historical data?
- Which data do you need to backtest a NIFTY overnight gap strategy?
- What time does NIFTY make its day high or low?
- Which data do you need to backtest a NIFTY 9:20 short straddle?
- How many years of NIFTY options data do you need for a backtest: 1 year or 3 years?
- Which NIFTY data do you need to backtest the close after NSE's closing auction?
- Bitcoin 1-minute historical data: what is in the files and how to load them
- Crypto funding rate history and 1-minute perpetual futures data
- XAU/USD 1-minute (M1) data: files, columns and how to get CSV
- XAU/USD session analysis: Asia, London and New York hours with 1-minute data
- Backtest an XAU/USD intraday strategy in Python with 1-minute data
- XAU/USD timeframes: resample 1-minute (M1) data to M5, H1, H4 and daily
- Backtest crypto perpetual futures in Python, with funding included
- Ethereum 1-minute historical data: ETH perpetual futures, funding and files
- How to load 1-minute NIFTY options Parquet in pandas
- Datasets: NIFTY options 1-minute · SENSEX options · BANKNIFTY options · MCX 1-minute · XAU/USD 1-minute
Index and commodity data only.