NSE Price Band Hitter API / NSE Circuit Limit Checker API

API Endpoint to check which stocks have hit Upper or Lower Circuit in Realtime

What is Price Band or Circuit Limits:

Circuit limits, also known as price bands, serve as protective measures instituted by exchanges to prevent abrupt and substantial fluctuations in stock prices over a brief span.

Think of circuit limits like guardrails on a roller coaster. 

Just as these guardrails keep the ride from getting too wild, circuit limits are safety measures set by stock exchanges to stop stock prices from going up or down too much in a very short time.

When a stock’s price hits one of these limits – like when the roller coaster reaches the highest or lowest point – any new buy or sell orders for that stock will have to wait until the stock’s price calms down a bit.

These limits also set a boundary for how much a stock’s price can move in a single day. Just like a roller coaster has a set track, these limits define how much the stock’s price can go up or down in one day. 

The exact limit, whether it’s a small 2% change or a larger 20% swing, depends on things like how popular the stock is and how much of it is being traded.

Orders that fall outside of the set price limits will be declined. 

If the price reaches either the upper or lower price limit, any placed orders will wait until those limits are eased.

Circuit Limit of FNO Contracts:

Stocks that are linked with Futures & Options (F&O) contracts don’t have fixed limits for how much their prices can change in a day.

  1. Instead, there’s something called a “dynamic price band” of 10%. This means there’s a range where the stock’s price can move, and it’s set at 10% from the original price.
  2. In order to ensure trading stays within a reasonable range, there’s a fixed range of 10% on both sides of the original price. If the price comes close to these levels, the limits are relaxed even further.
  3. Additionally, for stocks in the F&O category, there’s a waiting period of 15 minutes called a “cooling period.” This means that after the price reaches a certain level, there’s a 15-minute break before new limits are applied to the stock’s price movements.
You can constantly keep tab in the stocks which are hitting the Upper Price band or Lower Price Band or both. 

Usage:

				
					nse_price_band_hitters(bandtype,view)
				
			

The API Endpoint looks like – https://www.nseindia.com/api/live-analysis-price-band-hitter

bandtype has three types:

  • upper – Stocks that hit upper circuit
  • lower – Stocks that hit lower circuit
  • both – Stock that hit both circuits

view has three types:

  • AllSec – All stocks
  • SecGtr20 – Stocks with Price > 20
  • SecLwr20 – Stocks with Price < 20

By default, the bandtype is selected as “upper” and view is selected as “view”.

Example Usage:

				
					nse_price_band_hitters("upper")
				
			

This will give the all the stocks that has hit upper circuit (as we have not given any value to the view . So it will be set to “AllSec”.)  The output will be – 

				
						symbol	series	ltp	change	pChange	priceBand	highPrice	lowPrice	yearHigh	yearLow	totalTradedVol	turnover
0	63MOONS	EQ	313.95	28.5	9.98	10	313.95	290.00	313.95	140.55	333682	1032.312003
1	A2ZINFRA	EQ	9.1	0.4	4.60	5	9.10	9.00	13.50	5.10	1231955	111.615123
2	ACCURACY	BE	8.85	0.1	1.14	5	9.15	8.70	27.50	8.65	364292	32.458417
3	AIROLAM	BE	121.45	5.75	4.97	5	121.45	115.70	133.50	64.50	31139	37.612798
4	AJOONI	BE	4.05	0.15	3.85	5	4.05	3.90	8.40	3.05	191783	7.671320
...	...	...	...	...	...	...	...	...	...	...	...	...
97	VINNY	BE	2.9	0.1	3.57	5	2.90	2.90	16.80	2.45	566051	16.415479
98	VISESHINFO	EQ	0.45	0.05	12.50	20	0.45	0.40	0.85	0.35	32004495	140.819778
99	VLEGOV	BE	37.5	1.75	4.90	5	37.50	35.75	37.50	29.45	315942	116.298250
100	WEBELSOLAR	EQ	122.45	5.8	4.97	5	122.45	117.75	129.95	62.75	944514	1149.284635
101	YUKEN	EQ	727.6	121.25	20.00	20	727.60	612.35	727.60	435.95	385732	2741.744483
102 rows × 12 columns
				
			

Github Gist:

Here’s a GitHub Gist link to the Google Colab notebook used for creating this function –

Join The Conversation?