원클릭으로
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.