NSE Delivery
Analyze NSE delivery percentage data to find stocks with high genuine buying (delivery trades vs total traded volume), bulk deals, and block deals — filters intraday noise from real accumulation.
When to Use
- User asks which stocks have high delivery percentage today
- User wants to spot genuine accumulation vs intraday speculation
- User asks about bulk deals or block deals on NSE
- User wants to filter high-volume stocks by delivery quality
- User asks "are institutions accumulating this stock?"
How to Use
Get delivery data for a specific stock
powershell$symbol = "RELIANCE" $headers = @{ "User-Agent" = "Mozilla/5.0"; "Referer" = "https://www.nseindia.com" } Invoke-WebRequest -Uri "https://www.nseindia.com" -SessionVariable nse -Headers $headers | Out-Null $resp = Invoke-RestMethod ` -Uri "https://www.nseindia.com/api/quote-equity?symbol=$symbol" ` -Headers $headers -WebSession $nse [PSCustomObject]@{ Symbol = $symbol TotalVolume = $resp.securityWiseDP.quantityTraded DeliveryVolume = $resp.securityWiseDP.deliveryQuantity DeliveryPercent = $resp.securityWiseDP.deliveryToTradedQuantity }
Scan Nifty 50 for stocks with delivery > 60%
powershell$headers = @{ "User-Agent" = "Mozilla/5.0"; "Referer" = "https://www.nseindia.com" } Invoke-WebRequest -Uri "https://www.nseindia.com" -SessionVariable nse -Headers $headers | Out-Null $nifty50 = (Invoke-RestMethod ` -Uri "https://www.nseindia.com/api/equity-stockIndices?index=NIFTY%2050" ` -Headers $headers -WebSession $nse).data.symbol $results = foreach ($sym in $nifty50) { Start-Sleep -Milliseconds 300 # Throttle to avoid rate limits try { $q = Invoke-RestMethod ` -Uri "https://www.nseindia.com/api/quote-equity?symbol=$sym" ` -Headers $headers -WebSession $nse $dp = $q.securityWiseDP.deliveryToTradedQuantity if ($dp -gt 60) { [PSCustomObject]@{ Symbol = $sym; DeliveryPct = $dp } } } catch {} } $results | Sort-Object DeliveryPercent -Descending
Get bulk deals for today
powershell$headers = @{ "User-Agent" = "Mozilla/5.0"; "Referer" = "https://www.nseindia.com" } Invoke-WebRequest -Uri "https://www.nseindia.com" -SessionVariable nse -Headers $headers | Out-Null $resp = Invoke-RestMethod ` -Uri "https://www.nseindia.com/api/bulk-deal-archives?number=10&series=EQ&from=&to=&symbol=&csv=false" ` -Headers $headers -WebSession $nse $resp.data | Select-Object symbol, clientName, buyOrSellFlag, quantityTraded, tradePrice, date
Get block deals for today
powershell$headers = @{ "User-Agent" = "Mozilla/5.0"; "Referer" = "https://www.nseindia.com" } Invoke-WebRequest -Uri "https://www.nseindia.com" -SessionVariable nse -Headers $headers | Out-Null $resp = Invoke-RestMethod ` -Uri "https://www.nseindia.com/api/block-deal-archives?number=10&series=EQ&from=&to=&symbol=&csv=false" ` -Headers $headers -WebSession $nse $resp.data | Select-Object symbol, clientName, buyOrSellFlag, quantityTraded, tradePrice, date
Examples
"What is the delivery percentage for HDFC Bank today?"
→ Fetch quote for HDFCBANK, extract deliveryToTradedQuantity — above 50% is considered healthy delivery.
"Which Nifty 50 stocks have delivery above 60% today?" → Iterate over Nifty 50 symbols, fetch each quote, filter by delivery percentage threshold.
"Were there any bulk deals in IT stocks today?" → Fetch bulk deals archive and filter by sector or symbol name containing "INFY", "TCS", "WIPRO".
Cautions
- Delivery data is updated once after market close — not available intraday
- High delivery percentage alone is not sufficient for a buy signal — check price trend and volumes together
- The Nifty 50 scan loop makes ~50 API calls; add a
Start-Sleepdelay to avoid NSE rate limiting - Bulk deal threshold is ≥ 0.5% of listed shares; block deal threshold is ≥ 5 lakh shares or ₹5 Cr value


