The documentation is relatively free flowing, NSE throws a lot of data which might not be relevant or may be repetitive. Please feel free to skip sections not relevant to you.
If you are a beginner in Python, I highly recommend you to master concepts in dictionaries and lists, because often you’ll have often have to filter out information from heaps of data you receive.
from jugaad_data.nse import NSELive
n = NSELive()
status = n.market_status()
status['marketState']
[{'market': 'Capital Market',
'marketStatus': 'Closed',
'tradeDate': '27-Jan-2021',
'index': 'NIFTY 50',
'last': 14238.9,
'variation': -133,
'percentChange': -0.93,
'marketStatusMessage': 'Normal Market has Closed'},
{'market': 'Currency',
'marketStatus': 'Closed',
'tradeDate': '27-Jan-2021',
'index': '',
'last': '',
'variation': '',
'percentChange': '',
'marketStatusMessage': 'Market is Closed'},
{'market': 'Commodity',
'marketStatus': 'Closed',
'tradeDate': '27-Jan-2021',
'index': '',
'last': '',
'variation': '',
'percentChange': '',
'marketStatusMessage': 'Market is Closed'},
{'market': 'Debt',
'marketStatus': 'Closed',
'tradeDate': '27-Jan-2021',
'index': '',
'last': '',
'variation': '',
'percentChange': '',
'marketStatusMessage': 'Market is Closed'}]
all_indices = n.all_indices()
all_indices.keys()
dict_keys(['data', 'timestamp', 'advances', 'declines', 'unchanged', 'dates', 'date30dAgo', 'date365dAgo'])
data
contains multiple indices, let’s look at first one. Most of the fields are self explanatory.
all_indices['timestamp']
'25-Jan-2021 15:30:00'
all_indices['data'][0]
{'key': 'BROAD MARKET INDICES',
'index': 'NIFTY 50',
'indexSymbol': 'NIFTY 50',
'last': 14238.9,
'variation': -133,
'percentChange': -0.93,
'open': 14477.8,
'high': 14491.1,
'low': 14218.6,
'previousClose': 14371.9,
'yearHigh': 14753.55,
'yearLow': 7511.1,
'pe': '38.42',
'pb': '4.04',
'dy': '1.11',
'declines': '31',
'advances': '18',
'unchanged': '1',
'perChange365d': 17.49,
'date365dAgo': '27-Jan-2020',
'chart365dPath': 'https://static.nseindia.com/sparklines/365d/NIFTY-50.jpg',
'date30dAgo': '24-Dec-2020',
'perChange30d': 3.56,
'chart30dPath': 'https://static.nseindia.com/sparklines/30d/NIFTY-50.jpg',
'chartTodayPath': 'https://static.nseindia.com/sparklines/today/NIFTY-50.jpg',
'previousDay': 14371.9,
'oneWeekAgo': 14644.7,
'oneMonthAgo': 13749.25,
'oneYearAgo': 12119}
Lets look at all the indices available and its value
for idx in all_indices['data']:
print("{} - {}".format(idx['index'], idx['last']))
NIFTY 50 - 14238.9
NIFTY NEXT 50 - 33080.45
NIFTY 100 - 14348.45
NIFTY 200 - 7373.3
NIFTY 500 - 11743.7
NIFTY MIDCAP 50 - 6183.6
NIFTY MIDCAP 100 - 21455.2
NIFTY SMALLCAP 100 - 7261.6
INDIA VIX - 23.245
NIFTY MIDCAP 150 - 8064.3
NIFTY SMALLCAP 50 - 3700.45
NIFTY SMALLCAP 250 - 6199.7
NIFTY MIDSMALLCAP 400 - 7397.6
NIFTY BANK - 31198.4
NIFTY AUTO - 10433.5
NIFTY FINANCIAL SERVICES - 15143.65
NIFTY FINANCIAL SERVICES 25/50 - 14784.65
NIFTY FMCG - 34178.6
NIFTY IT - 26023.3
NIFTY MEDIA - 1680.05
NIFTY METAL - 3236.35
NIFTY PHARMA - 12756.75
NIFTY PSU BANK - 1843.9
NIFTY PRIVATE BANK - 17043.9
NIFTY REALTY - 317.9
NIFTY DIVIDEND OPPORTUNITIES 50 - 2951.75
NIFTY GROWTH SECTORS 15 - 7005.45
NIFTY100 QUALITY 30 - 3382.6
NIFTY50 VALUE 20 - 7191.75
NIFTY50 TR 2X LEVERAGE - 8335.25
NIFTY50 PR 2X LEVERAGE - 6271.5
NIFTY50 TR 1X INVERSE - 268.1
NIFTY50 PR 1X INVERSE - 308.95
NIFTY50 DIVIDEND POINTS - 85.33
NIFTY ALPHA 50 - 19835.45
NIFTY50 EQUAL WEIGHT - 15129.25
NIFTY100 EQUAL WEIGHT - 16011.6
NIFTY100 LOW VOLATILITY 30 - 11114.7
NIFTY200 QUALITY 30 - 12614.25
NIFTY ALPHA LOW-VOLATILITY 30 - 13929.4
NIFTY200 MOMENTUM 30 - 13932.3
NIFTY COMMODITIES - 3846.2
NIFTY INDIA CONSUMPTION - 6087.35
NIFTY CPSE - 1607.75
NIFTY ENERGY - 16772.3
NIFTY INFRASTRUCTURE - 3801.75
NIFTY100 LIQUID 15 - 3405.1
NIFTY MIDCAP LIQUID 15 - 5527.55
NIFTY MNC - 16075
NIFTY PSE - 2793.6
NIFTY SERVICES SECTOR - 20024.3
NIFTY100 ESG SECTOR LEADERS - 2470.8
NIFTY 8-13 YR G-SEC - 2254.14
NIFTY 10 YR BENCHMARK G-SEC - 2030.98
NIFTY 10 YR BENCHMARK G-SEC (CLEAN PRICE) - 963.09
NIFTY 4-8 YR G-SEC INDEX - 2396.47
NIFTY 11-15 YR G-SEC INDEX - 2431.49
NIFTY 15 YR AND ABOVE G-SEC INDEX - 2703.59
NIFTY COMPOSITE G-SEC INDEX - 2295.32
Advances and declines
print(all_indices['advances'], all_indices['declines'])
816 1976
NSELive
is the main class which holds all the methods to fetch live data. Let’s import and create an instance of the same (this step is common across all threads for live data)
nifty = n.live_index("NIFTY 50")
Lets look at different attributes available
nifty.keys()
dict_keys(['name', 'advance', 'timestamp', 'data', 'metadata', 'marketStatus', 'date30dAgo', 'date365dAgo'])
Name of the index
nifty['name']
'NIFTY 50'
Time stamp of last traded price (It’ll change contineously when market is live)
nifty['timestamp']
'25-Jan-2021 16:00:00'
Status of the market, it also provides last value of index along with change and percentage change.
nifty['marketStatus']
{'market': 'Capital Market',
'marketStatus': 'Closed',
'tradeDate': '27-Jan-2021',
'index': 'NIFTY 50',
'last': 14238.9,
'variation': -133,
'percentChange': -0.93,
'marketStatusMessage': 'Normal Market has Closed'}
Now coming to the most important information, the price information. Most of the field names are self explanatory.
nifty['data'][0]
{'priority': 1,
'symbol': 'NIFTY 50',
'identifier': 'NIFTY 50',
'open': 14477.8,
'dayHigh': 14491.1,
'dayLow': 14218.6,
'lastPrice': 14238.9,
'previousClose': 14371.9,
'change': -133,
'pChange': -0.93,
'ffmc': 613970256.48,
'yearHigh': 14753.55,
'yearLow': 7511.1,
'totalTradedVolume': 618631493,
'totalTradedValue': 422780289981.22,
'lastUpdateTime': '25-Jan-2021 16:00:00',
'nearWKH': 3.488312982299173,
'nearWKL': -89.57143427726962,
'perChange365d': 17.49,
'date365dAgo': '27-Jan-2020',
'chart365dPath': 'https://static.nseindia.com/sparklines/365d/NIFTY-50.jpg',
'date30dAgo': '24-Dec-2020',
'perChange30d': 3.56,
'chart30dPath': 'https://static.nseindia.com/sparklines/30d/NIFTY-50.jpg',
'chartTodayPath': 'https://static.nseindia.com/sparklines/today/NIFTY-50.jpg'}
Number of stocks advanced, declined or unchanged
nifty['advance']
{'declines': '31', 'advances': '18', 'unchanged': '1'}
The same pricing information is repeated in metadata
nifty['metadata']
{'indexName': 'NIFTY 50',
'open': 14477.8,
'high': 14491.1,
'low': 14218.6,
'previousClose': 14371.9,
'last': 14238.9,
'percChange': -0.93,
'change': -133,
'timeVal': '25-Jan-2021 15:33:22',
'yearHigh': 14753.55,
'yearLow': 7511.1,
'totalTradedVolume': 618631493,
'totalTradedValue': 422780289981.22,
'ffmc_sum': 613970256.48}
turnover = n.market_turnover()
# Turnovers across different segments
for t in turnover['data']:
print("{} - {}".format(t['name'], t['today']))
Equities - {'volume': 3084758529, 'value': 741716707310.68, 'oivalue': None, 'date': '25-Jan-2021 15:30:00'}
Index Futures - {'volume': 546588, 'value': 500538458452.75, 'oivalue': 272925, 'date': '25-Jan-2021 15:30:00'}
Index Options - {'volume': 33300559, 'value': 165917919231.25, 'oivalue': 3038888, 'date': '25-Jan-2021 15:30:00'}
Stock Futures - {'volume': 1926757, 'value': 1603202243634.3499, 'oivalue': 1630178, 'date': '25-Jan-2021 15:30:00'}
Stock Options - {'volume': 2858181, 'value': 28906841458.09998, 'oivalue': 1214706.9417301659, 'date': '25-Jan-2021 15:30:00'}
Currency Futures - {'volume': 4732718, 'value': 362084763650.99994, 'oivalue': 11470665, 'date': '25-Jan-2021 17:00:00'}
Currency Options - {'volume': 3736045, 'value': 572559597.5, 'oivalue': 5041278, 'date': '25-Jan-2021 17:00:00'}
Commodity Futures - {'volume': 164, 'value': 158842160, 'oivalue': 69, 'date': '25-Jan-2021 23:46:59'}
Commodity Options - {'volume': 4055, 'value': 10591805, 'oivalue': 722, 'date': '25-Jan-2021 23:19:08'}
Interest Rate Futures - {'volume': 27105, 'value': 5345329230, 'oivalue': 50880, 'date': '25-Jan-2021 17:00:00'}
Interest Rate Options - {}
q = n.stock_quote("HDFC")
q['priceInfo']
{'lastPrice': 2560,
'change': -29.449999999999818,
'pChange': -1.137307150167017,
'previousClose': 2589.45,
'open': 2630.45,
'close': 2551.4,
'vwap': 2611.45,
'lowerCP': '2330.55',
'upperCP': '2848.35',
'pPriceBand': 'No Band',
'basePrice': 2589.45,
'intraDayHighLow': {'min': 2543, 'max': 2670, 'value': 2560},
'weekHighLow': {'min': 1473.45,
'minDate': '24-Mar-2020',
'max': 2777.15,
'maxDate': '13-Jan-2021',
'value': 2560}}
General information on stock
q['info']
{'symbol': 'HDFC',
'companyName': 'Housing Development Finance Corporation Limited',
'industry': 'FINANCE - HOUSING',
'activeSeries': ['EQ', 'W3'],
'debtSeries': [],
'tempSuspendedSeries': ['W1', 'W2'],
'isFNOSec': True,
'isCASec': False,
'isSLBSec': True,
'isDebtSec': False,
'isSuspended': False,
'isETFSec': False,
'isDelisted': False,
'isin': 'INE001A13049',
'isTop10': False,
'identifier': 'HDFCEQN'}
Stock metadata
q['metadata']
{'series': 'EQ',
'symbol': 'HDFC',
'isin': 'INE001A01036',
'status': 'Listed',
'listingDate': '23-Oct-1996',
'industry': 'HOUSING FINANCE',
'lastUpdateTime': '25-Jan-2021 16:00:00',
'pdSectorPe': 30.46,
'pdSymbolPe': 0,
'pdSectorInd': 'NIFTY FINANCIAL SERVICES '}
Security info
q['securityInfo']
{'boardStatus': 'Main',
'tradingStatus': 'Active',
'tradingSegment': 'Normal Market',
'sessionNo': '-',
'slb': 'Yes',
'classOfShare': 'Equity',
'derivatives': 'Yes',
'surveillance': '-',
'faceValue': 2,
'issuedCap': 1800191002}
Pre-open markets
q['preOpenMarket']
{'preopen': [{'price': 2330.55, 'buyQty': 0, 'sellQty': 57},
{'price': 2400, 'buyQty': 0, 'sellQty': 7},
{'price': 2408.2, 'buyQty': 0, 'sellQty': 253},
{'price': 2449, 'buyQty': 0, 'sellQty': 10},
{'price': 2630.45, 'buyQty': 0, 'sellQty': 0, 'iep': True},
{'price': 2705.95, 'buyQty': 306, 'sellQty': 0},
{'price': 2710.5, 'buyQty': 8864, 'sellQty': 0},
{'price': 2718.9, 'buyQty': 16076, 'sellQty': 0},
{'price': 2750, 'buyQty': 100, 'sellQty': 0}],
'ato': {'buy': 1329, 'sell': 169},
'IEP': 2630.45,
'totalTradedVolume': 51122,
'finalPrice': 0,
'finalQuantity': 0,
'lastUpdateTime': '25-Jan-2021 09:07:41',
'totalBuyQuantity': 79071,
'totalSellQuantity': 58736,
'atoBuyQty': 1329,
'atoSellQty': 169}
tick_data = n.tick_data("HDFC")
tick_data['grapthData'][0:10]
[[1611566100000, 2635],
[1611566101000, 2636.25],
[1611566102000, 2634.65],
[1611566103000, 2634.75],
[1611566104000, 2633.65],
[1611566105000, 2633.3],
[1611566106000, 2642.1],
[1611566107000, 2642.55],
[1611566108000, 2647],
[1611566109000, 2657.6]]
trade_info = n.trade_info("HDFC")
trade_info
{'noBlockDeals': True,
'bulkBlockDeals': [{'name': 'Session I'}, {'name': 'Session II'}],
'marketDeptOrderBook': {'totalBuyQuantity': 1602,
'totalSellQuantity': 0,
'bid': [{'price': 2551.4, 'quantity': 1602},
{'price': 0, 'quantity': 0},
{'price': 0, 'quantity': 0},
{'price': 0, 'quantity': 0},
{'price': 0, 'quantity': 0}],
'ask': [{'price': 0, 'quantity': 0},
{'price': 0, 'quantity': 0},
{'price': 0, 'quantity': 0},
{'price': 0, 'quantity': 0},
{'price': 0, 'quantity': 0}],
'tradeInfo': {'totalTradedVolume': 7761405,
'totalTradedValue': 202685.21,
'totalMarketCap': 46084889.65,
'ffmc': 45851691.180862,
'impactCost': 0.02},
'valueAtRisk': {'securityVar': 15.94,
'indexVar': 0,
'varMargin': 15.94,
'extremeLossMargin': 3.5,
'adhocMargin': 6.43,
'applicableMargin': 25.87}},
'securityWiseDP': {'quantityTraded': 7761405,
'deliveryQuantity': 5387037,
'deliveryToTradedQuantity': 69.41,
'seriesRemarks': None,
'secWiseDelPosDate': '25-JAN-2021 EOD'}}
option_chain = n.index_option_chain("NIFTY")
Fetch expiry dates
option_chain['records']['expiryDates']
['28-Jan-2021',
'04-Feb-2021',
'11-Feb-2021',
'18-Feb-2021',
'25-Feb-2021',
'04-Mar-2021',
'10-Mar-2021',
'18-Mar-2021',
'25-Mar-2021',
'01-Apr-2021',
'24-Jun-2021',
'30-Sep-2021',
'30-Dec-2021',
'30-Jun-2022',
'29-Dec-2022',
'29-Jun-2023',
'26-Jun-2025']
Quick option chain
print("CE\tStrike\tPE")
for option in option_chain['filtered']['data']:
print("{}\t{}\t{}".format(option['CE']['lastPrice'], option['strikePrice'], option['PE']['lastPrice']))
CE Strike PE
4145.95 10150 0.2
4030 10200 0.2
3975 10250 0.85
4350 10300 0.15
0 10350 0.7
3590 10400 0.35
0 10450 0
3739 10500 0.2
0 10550 0
3899.8 10600 0.25
0 10650 0
3720 10700 0.3
0 10750 1.2
3470 10800 0.5
0 10850 0
3641.25 10900 0.35
0 10950 11
3248 11000 0.35
0 11050 0
3275 11100 0.4
0 11150 1.8
3075 11200 0.4
0 11250 0.7
2950 11300 0.6
0 11350 0
2850 11400 0.25
0 11450 0
2761.35 11500 0.85
0 11550 0.55
2643 11600 0.7
0 11650 0
2546 11700 0.8
0 11750 0
2445 11800 0.85
0 11850 0.3
2390 11900 0.55
0 11950 0
2256 12000 0.75
0 12050 1.1
2183.05 12100 0.7
0 12150 0.95
2050 12200 1
1657.9 12250 0.8
1952.6 12300 0.9
0 12350 0
1871 12400 0.95
0 12450 0.9
1763.35 12500 1.25
1602.95 12550 1
1655 12600 1
0 12650 1.35
1548 12700 0.95
1495 12750 1.2
1453 12800 1.15
1425.95 12850 1.05
1350 12900 1.6
1231.25 12950 1.1
1249.85 13000 1.2
1182.85 13050 1.15
1150 13100 1.15
1083 13150 1.05
1048.75 13200 1.3
990.6 13250 1.35
948.45 13300 2
895.05 13350 1.75
853.95 13400 1.5
773.5 13450 2.1
754.3 13500 2.2
800.9 13550 2.05
652.65 13600 3
598 13650 3.5
557.45 13700 5
501 13750 6.4
462.15 13800 8.3
402.35 13850 12.5
371.9 13900 14.55
363.3 13950 19.95
284.5 14000 25
233 14050 33.3
202.95 14100 42
164.5 14150 53
129.5 14200 72
99.45 14250 86.6
72 14300 115
51.05 14350 142
36 14400 177.45
25.55 14450 216
17.15 14500 259.45
12.85 14550 306.75
9.75 14600 354.85
7.85 14650 399.85
6 14700 447.2
5.35 14750 501
4.55 14800 551.4
3.95 14850 610.25
3.8 14900 646
3.85 14950 708.05
3.2 15000 744.95
3 15050 809.15
2.85 15100 860.35
3.05 15150 913.45
2.7 15200 950.15
1.9 15250 973.45
2.85 15300 1060.2
2.75 15350 1105.6
2.7 15400 1161.6
2.7 15450 1082.1
2.65 15500 1256.65
2.35 15550 1138.35
2.25 15600 1360.95
2.15 15650 0
2.25 15700 1462.85
2.2 15750 1375.15
2.4 15800 1559.6
1.95 15850 0
2 15900 1666.85
1.85 15950 0
1.95 16000 1755.55
2.1 16050 0
2 16100 1613.9
2 16150 0
turnover = n.eq_derivative_turnover()
Let’s look at the top the derivative contracts with highest turnover
for t in turnover['value']:
print("{} \t {}".format(t['identifier'], t['totalTurnover']))
FUTIDXNIFTY28-01-2021XX0.00 1993001.4325575
FUTIDXBANKNIFTY28-01-2021XX0.00 1971646.452105
FUTIDXNIFTY25-02-2021XX0.00 639651.073635
FUTSTKRELIANCE28-01-2021XX0.00 481936.0667
FUTSTKTATAMOTORS28-01-2021XX0.00 411916.428
FUTSTKKOTAKBANK28-01-2021XX0.00 342169.4506
FUTIDXBANKNIFTY25-02-2021XX0.00 317728.786825
FUTSTKHDFCBANK28-01-2021XX0.00 300168.45705
FUTSTKBHARTIARTL28-01-2021XX0.00 297890.25741900003
FUTSTKRELIANCE25-02-2021XX0.00 288693.0396
FUTSTKBAJFINANCE28-01-2021XX0.00 272159.20905
FUTSTKICICIBANK28-01-2021XX0.00 270931.0758
FUTSTKBHARTIARTL25-02-2021XX0.00 247874.5618938
FUTSTKINFY28-01-2021XX0.00 235133.2647
FUTSTKAXISBANK28-01-2021XX0.00 224137.1448
FUTSTKSBIN28-01-2021XX0.00 220771.3536
FUTSTKHDFC28-01-2021XX0.00 211855.64148
FUTSTKTATASTEEL28-01-2021XX0.00 207522.36192
FUTSTKHDFCBANK25-02-2021XX0.00 207458.4039
FUTSTKULTRACEMCO28-01-2021XX0.00 207429.98906
turnover['value'][0]
{'underlying': 'NIFTY',
'identifier': 'FUTIDXNIFTY28-01-2021XX0.00',
'instrumentType': 'FUTIDX',
'instrument': 'Index Futures',
'expiryDate': '28-Jan-2021',
'optionType': '-',
'strikePrice': 0,
'lastPrice': 14254,
'pChange': -0.8772509327093225,
'openPrice': 14475,
'highPrice': 14497.75,
'lowPrice': 14233.6,
'numberOfContractsTraded': 185139,
'totalTurnover': 1993001.4325575,
'premiumTurnover': 199300143255.75,
'openInterest': 127322,
'underlyingValue': 14238.9}
quotes = n.stock_quote_fno("HDFC")
Let’s look at all the contracts avaialbe for HDFC along with their last traded price
for quote in quotes['stocks']:
print("{}\t{}".format(quote['metadata']['identifier'], quote['metadata']['lastPrice']))
FUTSTKHDFC28-01-2021XX0.00 2565.85
FUTSTKHDFC25-02-2021XX0.00 2575.35
OPTSTKHDFC28-01-2021CE2700.00 3.9
OPTSTKHDFC28-01-2021CE2650.00 6
OPTSTKHDFC28-01-2021CE2800.00 1.9
OPTSTKHDFC28-01-2021PE2600.00 43.65
OPTSTKHDFC28-01-2021PE2500.00 9.95
OPTSTKHDFC28-01-2021CE2750.00 2.5
OPTSTKHDFC28-01-2021PE2550.00 22
OPTSTKHDFC28-01-2021CE2680.00 4.3
OPTSTKHDFC28-01-2021CE2660.00 4.6
OPTSTKHDFC28-01-2021CE2600.00 14
OPTSTKHDFC28-01-2021CE2720.00 2.7
OPTSTKHDFC28-01-2021CE2640.00 7
OPTSTKHDFC28-01-2021PE2520.00 12.6
OPTSTKHDFC25-02-2021CE2600.00 100
OPTSTKHDFC28-01-2021PE2560.00 26.4
OPTSTKHDFC28-01-2021PE2450.00 5
OPTSTKHDFC28-01-2021CE2620.00 10
OPTSTKHDFC28-01-2021CE2850.00 1.15
OPTSTKHDFC28-01-2021PE2580.00 29.3
OPTSTKHDFC28-01-2021PE2540.00 17.2
OPTSTKHDFC28-01-2021PE2620.00 65.4
OPTSTKHDFC28-01-2021CE2740.00 2.4
OPTSTKHDFC25-02-2021CE2700.00 64.5
OPTSTKHDFC28-01-2021PE2650.00 91.9
OPTSTKHDFC28-01-2021CE2780.00 1.8
OPTSTKHDFC28-01-2021CE2760.00 2.4
OPTSTKHDFC28-01-2021CE2900.00 0.7
OPTSTKHDFC28-01-2021PE2640.00 80.9
OPTSTKHDFC28-01-2021PE2400.00 1.95
OPTSTKHDFC28-01-2021CE2500.00 71.55
OPTSTKHDFC25-02-2021PE2600.00 128.65
OPTSTKHDFC25-02-2021CE2800.00 41.35
OPTSTKHDFC25-02-2021PE2400.00 48.7
OPTSTKHDFC28-01-2021CE2820.00 1.65
OPTSTKHDFC25-02-2021PE2500.00 81.5
OPTSTKHDFC28-01-2021CE2840.00 1.4
OPTSTKHDFC28-01-2021CE2580.00 21.2
OPTSTKHDFC28-01-2021PE2700.00 140
OPTSTKHDFC28-01-2021CE2880.00 0.5
OPTSTKHDFC28-01-2021CE3000.00 0.55
OPTSTKHDFC28-01-2021CE2550.00 36.5
OPTSTKHDFC28-01-2021PE2660.00 107.2
OPTSTKHDFC28-01-2021CE2860.00 1
OPTSTKHDFC28-01-2021PE2200.00 0.55
OPTSTKHDFC25-02-2021CE2900.00 23.15
OPTSTKHDFC28-01-2021PE2300.00 1.95
OPTSTKHDFC28-01-2021PE2680.00 120.1
OPTSTKHDFC28-01-2021CE2560.00 29.8
OPTSTKHDFC28-01-2021PE2350.00 2
OPTSTKHDFC25-02-2021CE3000.00 16.3
OPTSTKHDFC28-01-2021CE2960.00 1
OPTSTKHDFC28-01-2021CE2200.00 364.4
OPTSTKHDFC25-02-2021CE2650.00 80
OPTSTKHDFC25-02-2021CE2500.00 151
OPTSTKHDFC25-02-2021CE2750.00 52
FUTSTKHDFC25-03-2021XX0.00 2567
OPTSTKHDFC28-01-2021CE2300.00 261.95
OPTSTKHDFC25-02-2021CE2300.00 287
OPTSTKHDFC28-01-2021CE2400.00 157.1
OPTSTKHDFC25-02-2021PE2300.00 25
OPTSTKHDFC28-01-2021PE2000.00 1.25
OPTSTKHDFC25-02-2021CE2850.00 39.9
OPTSTKHDFC28-01-2021PE2750.00 176.45
OPTSTKHDFC28-01-2021CE3100.00 0.5
OPTSTKHDFC25-02-2021PE2200.00 8.5
OPTSTKHDFC28-01-2021PE2100.00 0.55
OPTSTKHDFC28-01-2021CE2450.00 117.35
OPTSTKHDFC28-01-2021CE3060.00 0.65
OPTSTKHDFC25-02-2021PE2550.00 105
OPTSTKHDFC25-02-2021PE2650.00 138.15
OPTSTKHDFC28-01-2021CE2920.00 1
OPTSTKHDFC25-02-2021PE2700.00 161.25
OPTSTKHDFC25-02-2021CE2200.00 374
OPTSTKHDFC25-02-2021CE2400.00 218
OPTSTKHDFC28-01-2021CE1600.00 1045
OPTSTKHDFC28-01-2021PE2800.00 190.45
OPTSTKHDFC28-01-2021PE2720.00 92.3
OPTSTKHDFC25-02-2021PE2000.00 1.95
OPTSTKHDFC28-01-2021CE2000.00 624
OPTSTKHDFC28-01-2021PE2250.00 0.7
OPTSTKHDFC25-02-2021CE3100.00 12.4
OPTSTKHDFC25-02-2021CE2000.00 564
OPTSTKHDFC25-02-2021CE2220.00 440
OPTSTKHDFC28-01-2021CE2100.00 558
OPTSTKHDFC25-02-2021CE2660.00 73.05
OPTSTKHDFC28-01-2021PE2740.00 122.25
OPTSTKHDFC25-02-2021CE2100.00 464.5
OPTSTKHDFC25-02-2021CE2550.00 138.15
OPTSTKHDFC28-01-2021PE2760.00 190
OPTSTKHDFC25-02-2021CE3160.00 15.65
OPTSTKHDFC25-02-2021PE2640.00 154.9
OPTSTKHDFC25-02-2021CE2680.00 69.9
OPTSTKHDFC28-01-2021PE2150.00 0.15
OPTSTKHDFC28-01-2021CE2540.00 0
OPTSTKHDFC25-02-2021CE2720.00 128.3
OPTSTKHDFC28-01-2021PE3120.00 0
OPTSTKHDFC28-01-2021CE2350.00 303.3
OPTSTKHDFC28-01-2021PE2920.00 0
OPTSTKHDFC28-01-2021CE2480.00 203
OPTSTKHDFC28-01-2021PE3000.00 0
OPTSTKHDFC25-02-2021CE2180.00 0
OPTSTKHDFC25-02-2021PE2980.00 0
OPTSTKHDFC28-01-2021PE2820.00 0
OPTSTKHDFC25-02-2021PE3100.00 0
OPTSTKHDFC25-02-2021PE2880.00 0
OPTSTKHDFC25-02-2021PE2450.00 75
OPTSTKHDFC25-02-2021CE2460.00 0
OPTSTKHDFC25-02-2021CE2380.00 0
OPTSTKHDFC28-01-2021PE2840.00 0
OPTSTKHDFC28-01-2021PE1250.00 1
OPTSTKHDFC25-02-2021CE2280.00 0
OPTSTKHDFC28-01-2021CE1700.00 0
OPTSTKHDFC25-02-2021CE2350.00 0
OPTSTKHDFC25-02-2021CE2320.00 0
OPTSTKHDFC25-02-2021CE2250.00 0
OPTSTKHDFC25-02-2021PE2840.00 0
OPTSTKHDFC25-02-2021CE2150.00 0
OPTSTKHDFC25-02-2021CE2620.00 172.8
OPTSTKHDFC25-02-2021PE2900.00 0
OPTSTKHDFC28-01-2021PE2480.00 42.55
OPTSTKHDFC25-02-2021PE2580.00 0
OPTSTKHDFC25-02-2021PE2680.00 0
OPTSTKHDFC25-02-2021CE2640.00 0
OPTSTKHDFC28-01-2021PE3060.00 0
OPTSTKHDFC25-02-2021CE2160.00 0
OPTSTKHDFC28-01-2021CE1800.00 870
OPTSTKHDFC28-01-2021PE3020.00 0
OPTSTKHDFC28-01-2021PE2880.00 0
OPTSTKHDFC28-01-2021PE2940.00 0
OPTSTKHDFC28-01-2021PE2860.00 0
OPTSTKHDFC25-02-2021CE2260.00 0
OPTSTKHDFC25-02-2021CE2420.00 0
OPTSTKHDFC25-02-2021PE3020.00 0
OPTSTKHDFC25-02-2021CE2480.00 0
OPTSTKHDFC25-02-2021CE2880.00 0
OPTSTKHDFC28-01-2021CE2360.00 0
OPTSTKHDFC28-01-2021CE2050.00 399.95
OPTSTKHDFC28-01-2021PE2960.00 0
OPTSTKHDFC25-02-2021PE2760.00 0
OPTSTKHDFC25-02-2021CE2360.00 0
OPTSTKHDFC25-02-2021PE2960.00 0
OPTSTKHDFC28-01-2021PE2900.00 300
OPTSTKHDFC28-01-2021CE2520.00 95.3
OPTSTKHDFC28-01-2021CE1750.00 0
OPTSTKHDFC28-01-2021CE1400.00 0
OPTSTKHDFC28-01-2021CE1350.00 0
OPTSTKHDFC25-02-2021PE2050.00 2.3
OPTSTKHDFC28-01-2021CE1650.00 0
OPTSTKHDFC25-02-2021PE2250.00 0
OPTSTKHDFC25-02-2021PE2560.00 0
OPTSTKHDFC28-01-2021PE3100.00 0
OPTSTKHDFC28-01-2021PE3040.00 0
OPTSTKHDFC25-02-2021PE2350.00 0
OPTSTKHDFC28-01-2021CE2460.00 0
OPTSTKHDFC28-01-2021CE2420.00 0
OPTSTKHDFC25-02-2021PE3000.00 430.95
OPTSTKHDFC28-01-2021CE2340.00 0
OPTSTKHDFC28-01-2021CE2320.00 0
OPTSTKHDFC28-01-2021PE2780.00 139
OPTSTKHDFC25-02-2021PE2800.00 230
OPTSTKHDFC28-01-2021CE2380.00 0
OPTSTKHDFC28-01-2021CE2150.00 0
OPTSTKHDFC25-02-2021PE2850.00 0
OPTSTKHDFC25-02-2021CE2340.00 0
OPTSTKHDFC25-02-2021PE3040.00 0
OPTSTKHDFC28-01-2021CE2280.00 0
OPTSTKHDFC28-01-2021PE2980.00 0
OPTSTKHDFC28-01-2021PE1600.00 1
OPTSTKHDFC28-01-2021PE2850.00 191.85
OPTSTKHDFC25-02-2021PE3160.00 0
OPTSTKHDFC28-01-2021CE2940.00 3.1
OPTSTKHDFC28-01-2021PE3160.00 0
OPTSTKHDFC28-01-2021PE3140.00 0
OPTSTKHDFC25-02-2021PE3080.00 0
OPTSTKHDFC28-01-2021PE3080.00 0
OPTSTKHDFC25-02-2021PE2940.00 0
OPTSTKHDFC28-01-2021CE2980.00 1.2
OPTSTKHDFC25-02-2021PE2620.00 76.9
OPTSTKHDFC25-02-2021CE2240.00 0
OPTSTKHDFC28-01-2021CE2260.00 0
OPTSTKHDFC25-02-2021PE2780.00 0
OPTSTKHDFC28-01-2021CE2240.00 0
OPTSTKHDFC25-02-2021PE2740.00 0
OPTSTKHDFC28-01-2021CE2220.00 0
OPTSTKHDFC28-01-2021CE2180.00 0
OPTSTKHDFC28-01-2021CE2160.00 0
OPTSTKHDFC25-02-2021PE3120.00 0
OPTSTKHDFC25-02-2021PE2720.00 0
OPTSTKHDFC25-02-2021PE3140.00 0
OPTSTKHDFC28-01-2021CE2250.00 363
OPTSTKHDFC25-02-2021PE2920.00 0
OPTSTKHDFC25-02-2021PE2660.00 0
OPTSTKHDFC28-01-2021CE2440.00 0
OPTSTKHDFC28-01-2021PE1450.00 0.25
OPTSTKHDFC25-02-2021PE2820.00 0
OPTSTKHDFC25-02-2021PE2860.00 0
OPTSTKHDFC25-02-2021PE3060.00 0
OPTSTKHDFC28-01-2021CE3160.00 4.8
OPTSTKHDFC25-02-2021CE2740.00 100.4
OPTSTKHDFC25-03-2021PE2460.00 80
OPTSTKHDFC25-02-2021CE2540.00 0
OPTSTKHDFC25-02-2021CE2520.00 0
OPTSTKHDFC25-02-2021PE2520.00 77
OPTSTKHDFC25-02-2021CE2440.00 0
Let’s look at what information is available for each contract individually.
quotes['stocks'][0]
{'metadata': {'instrumentType': 'Stock Futures',
'expiryDate': '28-Jan-2021',
'optionType': '-',
'strikePrice': 0,
'identifier': 'FUTSTKHDFC28-01-2021XX0.00',
'openPrice': 2635.15,
'highPrice': 2677.75,
'lowPrice': 2550.1,
'closePrice': 2559.5,
'prevClose': 2595.2,
'lastPrice': 2565.85,
'change': -29.34999999999991,
'pChange': -1.1309340320591827,
'numberOfContractsTraded': 26898,
'totalTurnover': 211855.64},
'underlyingValue': 2560,
'volumeFreezeQuantity': 0,
'marketDeptOrderBook': {'totalBuyQuantity': 51600,
'totalSellQuantity': 284100,
'bid': [{'price': 2564.5, 'quantity': 300},
{'price': 2564.45, 'quantity': 300},
{'price': 2564.1, 'quantity': 300},
{'price': 2564, 'quantity': 300},
{'price': 2563.4, 'quantity': 300}],
'ask': [{'price': 2567.9, 'quantity': 300},
{'price': 2564.45, 'quantity': 900},
{'price': 2568, 'quantity': 300},
{'price': 2568.25, 'quantity': 300},
{'price': 2568.3, 'quantity': 300}],
'carryOfCost': {'price': {'bestBuy': 2564.5,
'bestSell': 2567.9,
'lastPrice': 2565.85},
'carry': {'bestBuy': 64.10383148359519,
'bestSell': 112.46328053425722,
'lastPrice': 83.31304767247387}},
'tradeInfo': {'tradedVolume': 26898,
'value': 211855.64,
'vmap': 2625.42,
'premiumTurnover': 211855.64148,
'openInterest': 38711,
'changeinOpenInterest': -12922,
'pchangeinOpenInterest': -25.02663025584413,
'marketLot': 300},
'otherInfo': {'settlementPrice': 2559.5,
'dailyvolatility': 2.47,
'annualisedVolatility': 47.1,
'impliedVolatility': 0,
'clientWisePositionLimits': 0,
'marketWidePositionLimits': 359161186}}}