ワンクリックで
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.