Shanghai Stock Exchange · XSHG
Shanghai Stock Exchange holidays and trading hours 2026
19 weekday closures in 2026. Regular hours 09:30–15:00 (lunch 11:30–13:00) Asia/Shanghai time.
Projected from the exchange's standing rules; not yet confirmed by an official 2026 notice
Market holidays 2026
| Date | Day | Holiday |
|---|---|---|
| 2026-01-01 | Thu | New Year's Day |
| 2026-01-02 | Fri | Day off (substituted from 01/04/2026) |
| 2026-02-16 | Mon | Chinese New Year's Eve |
| 2026-02-17 | Tue | Chinese New Year (Spring Festival) |
| 2026-02-18 | Wed | Chinese New Year (Spring Festival) |
| 2026-02-19 | Thu | Chinese New Year (Spring Festival) |
| 2026-02-20 | Fri | Day off (substituted from 02/14/2026) |
| 2026-02-23 | Mon | Day off (substituted from 02/28/2026) |
| 2026-04-06 | Mon | Tomb-Sweeping Day (observed) |
| 2026-05-01 | Fri | Labor Day |
| 2026-05-04 | Mon | Labor Day (observed) |
| 2026-05-05 | Tue | Day off (substituted from 05/09/2026) |
| 2026-06-19 | Fri | Dragon Boat Festival |
| 2026-09-25 | Fri | Mid-Autumn Festival |
| 2026-10-01 | Thu | National Day |
| 2026-10-02 | Fri | National Day |
| 2026-10-05 | Mon | National Day (observed) |
| 2026-10-06 | Tue | Day off (substituted from 09/20/2026) |
| 2026-10-07 | Wed | Day off (substituted from 10/10/2026) |
Early closes 2026
| Date | Day | Closes (local) |
|---|---|---|
| None scheduled | ||
Settlement cycle
T+1: SSE A-shares: securities T+0, cash T+1 (modelled as T+1)
Get this as JSON
curl -H "X-API-Key: $SETTLEDATE_KEY" "https://www.elcodev.com/apps/settledate/v1/calendars/XSHG/holidays?year=2026"
import requests
r = requests.get("https://www.elcodev.com/apps/settledate/v1/calendars/XSHG/holidays", params={"year": 2026}, headers={"X-API-Key": "sd_..."})
for h in r.json()["holidays"]:
print(h["date"], h["name"])
curl -H "X-API-Key: $SETTLEDATE_KEY" "https://www.elcodev.com/apps/settledate/v1/markets/XSHG/status"
This calendar needs a paid plan. Source: exchange_calendars 4.13.2 (XSHG). Other years: 2026. All exchanges.