بنقرة واحدة
nse-options
NSE options chain: OI buildup, PCR, max pain, IV (Nifty/BankNifty)
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
NSE options chain: OI buildup, PCR, max pain, IV (Nifty/BankNifty)
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Search and download arXiv papers (no API key needed)
Delegate coding and file edits to Anthropic Claude Code CLI
Read/write Windows clipboard text, HTML, images, history (PowerShell)
Running scripts and code on Windows
Delegate coding tasks to OpenAI Codex CLI
Windows Defender: scans, threat history, signatures (PowerShell)
| name | nse-options |
| description | NSE options chain: OI buildup, PCR, max pain, IV (Nifty/BankNifty) |
| category | india |
| version | 1.0.0 |
| tags | nse, options, derivatives, oi, pcr, maxpain, nifty, banknifty, iv, chain |
| license | Apache-2.0 |
Analyze NSE options chain for Nifty and BankNifty — open interest buildup, put-call ratio, max pain level, and implied volatility — using NSE's public JSON API.
$headers = @{ "User-Agent" = "Mozilla/5.0"; "Referer" = "https://www.nseindia.com" }
Invoke-WebRequest -Uri "https://www.nseindia.com" -SessionVariable nse -Headers $headers | Out-Null
$chain = Invoke-RestMethod -Uri "https://www.nseindia.com/api/option-chain-indices?symbol=NIFTY" `
-Headers $headers -WebSession $nse
$chain.records.data | Select-Object strikePrice,
@{N='CE_OI';E={$_.CE.openInterest}}, @{N='CE_IV';E={$_.CE.impliedVolatility}},
@{N='PE_OI';E={$_.PE.openInterest}}, @{N='PE_IV';E={$_.PE.impliedVolatility}} |
Where-Object { $_.CE_OI -or $_.PE_OI } |
Sort-Object strikePrice
$headers = @{ "User-Agent" = "Mozilla/5.0"; "Referer" = "https://www.nseindia.com" }
Invoke-WebRequest -Uri "https://www.nseindia.com" -SessionVariable nse -Headers $headers | Out-Null
$chain = Invoke-RestMethod -Uri "https://www.nseindia.com/api/option-chain-indices?symbol=NIFTY" `
-Headers $headers -WebSession $nse
$totalCE_OI = ($chain.records.data | ForEach-Object { $_.CE.openInterest } | Measure-Object -Sum).Sum
$totalPE_OI = ($chain.records.data | ForEach-Object { $_.PE.openInterest } | Measure-Object -Sum).Sum
$pcr = [math]::Round($totalPE_OI / $totalCE_OI, 2)
Write-Host "Nifty PCR: $pcr (CE OI: $totalCE_OI | PE OI: $totalPE_OI)"
$headers = @{ "User-Agent" = "Mozilla/5.0"; "Referer" = "https://www.nseindia.com" }
Invoke-WebRequest -Uri "https://www.nseindia.com" -SessionVariable nse -Headers $headers | Out-Null
$chain = Invoke-RestMethod -Uri "https://www.nseindia.com/api/option-chain-indices?symbol=NIFTY" `
-Headers $headers -WebSession $nse
$strikes = $chain.records.data | Select-Object strikePrice,
@{N='CE_OI';E={$_.CE.openInterest}},
@{N='PE_OI';E={$_.PE.openInterest}} |
Where-Object { $_.strikePrice }
# Max pain = strike where total dollar loss for option holders is maximum
$maxPainStrike = $strikes | ForEach-Object {
$s = $_.strikePrice
$pain = ($strikes | ForEach-Object {
$ceVal = [math]::Max(0, $s - $_.strikePrice) * $_.CE_OI
$peVal = [math]::Max(0, $_.strikePrice - $s) * $_.PE_OI
$ceVal + $peVal
} | Measure-Object -Sum).Sum
[PSCustomObject]@{ Strike = $s; TotalPain = $pain }
} | Sort-Object TotalPain | Select-Object -First 1
Write-Host "Max Pain Strike: $($maxPainStrike.Strike)"
$chain.records.data |
Where-Object { $_.CE.openInterest -gt 0 } |
Sort-Object { $_.CE.openInterest } -Descending |
Select-Object -First 5 strikePrice, @{N='CE_OI';E={$_.CE.openInterest}}, @{N='CE_OI_Change';E={$_.CE.changeinOpenInterest}}
$chain.records.data |
Where-Object { $_.PE.openInterest -gt 0 } |
Sort-Object { $_.PE.openInterest } -Descending |
Select-Object -First 5 strikePrice, @{N='PE_OI';E={$_.PE.openInterest}}, @{N='PE_OI_Change';E={$_.PE.changeinOpenInterest}}
"What is the current Nifty PCR?" → Fetch chain, sum all CE and PE OI, divide PE by CE — PCR > 1.2 is bullish, < 0.8 is bearish.
"Where is max pain for this week's expiry?" → Run the max pain calculation across all strikes and return the strike with minimum total option holder loss.
"Show me the top 5 CE and PE OI strikes for BankNifty"
→ Change URL to symbol=BANKNIFTY and sort by OI descending.