**Disclaimer:** Educational research by a NISM XII certified educator. Not SEBI-registered investment advice. Every number is OBSERVED from my own dataset or DERIVED by a stated formula. No live trades placed.
QUICK ANSWER
PCR (Put-Call Ratio) = total put open interest ÷ total call open interest. The popular rule "PCR below 0.7 = buy, above 1.3 = sell" is a **contrarian sentiment signal**. But when I tested it on **120 days of real NIFTY data (284,937 option-chain rows, Feb–Aug 2026)**, no PCR bucket produced a next-day win rate above 60% on a sample large enough to trust — and after the ~0.20% round-trip cost, none were profitable. PCR is a useful *context* tool, not a standalone trade trigger.
WHAT IS PCR (PUT-CALL RATIO)?
The Put-Call Ratio measures sentiment in the options market.
PCR = Total Put Open Interest / Total Call Open Interest
The logic is **contrarian**: when everyone crowds one side, the move is often exhausted.
Two flavours
| Type | What it uses | Best for |
|---|---|---|
| **Volume PCR** | put volume ÷ call volume (same day) | Intraday sentiment shifts |
| **Open-Interest PCR** | put OI ÷ call OI (carried) | Positioning / next-day bias |
This article uses **OI-based PCR** because it reflects standing positioning, not just that day's churn.
WHY TRADERS CARE ABOUT PCR
Retail loves PCR because it is free, available on every option chain, and feels like a "smart money" tell. Telegram channels post "PCR 0.65 — massive buy signal!" daily. The promise: read sentiment, fade the crowd, profit.
The question this article answers: **does that promise survive real data and trading costs?**
DATA & METHODOLOGY BOX
| Item | Value (OBSERVED) |
|---|---|
| Source | NSE EOD bhavcopy via `nse-bse-mcp` (free, 403-bypass) |
| Rows (market_raw) | 284,937 |
| Trading days | 120 (2026-02-20 → 2026-08-18) |
| Symbol | NIFTY index options |
| PCR metric | PE_OI ÷ CE_OI, daily |
| Forward test | next-day spot return after each day's PCR |
| Cost model | 0.20% round-trip (brokerage + exchange + slippage), DERIVED |
| Sample | 119 next-day observations (1 day lacked a following session) |
RESULTS — WHAT 120 DAYS OF NIFTY PCR ACTUALLY DID
I split the 120 days into three PCR buckets and measured the **actual next-day NIFTY return** and win rate inside each:
| PCR bucket | Days (n) | Mean next-day return | Win rate |
|---|---|---|---|
| < 0.80 (bullish lore) | 10 | −0.036% | **60.0%** |
| 0.80 – 1.20 (neutral) | 91 | −0.077% | 49.5% |
| > 1.20 (bearish lore) | 18 | +0.127% | 44.4% |
| **All days** | **119** | **−0.043%** | **49.6%** |
Reading the table honestly
**Conclusion (OBSERVED):** over this 120-day NIFTY sample, PCR buckets did **not** produce a next-day edge that survived costs. The popular thresholds are descriptive of sentiment, not predictive of direction.
HOW TO USE PCR CORRECTLY (PRACTICAL)
PCR is not useless — it is just **not a standalone trigger**. Use it as a *context filter*:
1. **Regime awareness:** Extreme PCR (>1.3 or <0.7) tells you positioning is lopsided. That is real information — a trend may be exhaustive.
2. **Confirmation, not signal:** Pair PCR with price structure (support/resistance, trend, volatility). Act only when they agree.
3. **Sample-size discipline:** Any PCR "signal" with fewer than ~30 similar days is unproven. Demand the track record.
4. **Cost awareness:** A 49.6% win rate loses money after costs. Your edge must clear the spread, not just beat 50%.
COMMON PCR MYTHS DEBUNKED
| Myth | Reality (OBSERVED) |
|---|---|
| "PCR < 0.7 = buy" | <0.80 bucket won 60% but only n=10 — not statistically reliable |
| "High PCR = market bottom" | >1.20 showed +0.13% mean but 44% win — mixed, not a bottom signal |
| "PCR predicts next day" | All-day win 49.6% ≈ random after costs |
| "More OI = stronger signal" | OI volume alone said nothing about next-day direction here |
HOW PCR IS CALCULATED — STEP BY STEP
Using a real NIFTY expiry snapshot (OBSERVED structure from the dataset):
1. At market close, read open interest of all **put** strikes → sum = PE_OI (e.g. 4,20,000 contracts)
2. Read open interest of all **call** strikes → sum = CE_OI (e.g. 5,15,000 contracts)
3. PCR = 4,20,000 ÷ 5,15,000 = **0.816**
Interpretation: more calls open than puts → mildly bullish positioning. In my 120-day sample, the mean PCR was **1.011** (roughly balanced), ranging 0.626 (heavy call side) to 1.43 (heavy put side). The latest reading was **0.815** — near the sample mean, i.e. no extreme sentiment.
**Volume PCR** uses the same formula but with *traded* volume that day instead of carried OI. It reacts faster to intraday sentiment shifts; OI PCR reflects standing positioning. For next-day research, OI PCR is the cleaner base.
PCR VS OTHER SENTIMENT INDICATORS
| Indicator | What it shows | Speed | Standalone trade? |
|---|---|---|---|
| PCR (OI) | Positioning imbalance | Daily | No (this study) |
| PCR (Volume) | Intraday sentiment shift | Intraday | Unproven here |
| Max Pain | Writer exposure strike | Static/till expiry | No (separate study) |
| VIX / India VIX | Fear level | Real-time | Context only |
| OI buildup | Where positions concentrate | Daily | Context only |
None of these is a standalone trigger on its own. They are **complementary context layers**. The mistake retail makes is treating one ratio as a buy/sell button.
A WORKED NIFTY EXAMPLE
Take a day where PCR printed **0.70** (below the "buy" threshold). Per the popular rule, you would go long expecting a bounce. In my data, days with PCR < 0.80 (n=10) had a 60% next-day win rate — tempting. But:
So even the "best" bucket lost money on average. That is the trap: a headline win rate that hides negative expectancy.
WHEN PCR ACTUALLY HELPS (HONEST CONTEXT)
PCR is genuinely useful in three non-trading ways:
1. **Exhaustion warning:** PCR > 1.3 or < 0.7 flags crowded positioning. If price is also at a known extreme, a reversal setup is *plausible* — but you still need price confirmation.
2. **Volatility regime filter:** Combine with India VIX. High PCR + falling VIX often marks fear capitulation (a better bottom context than PCR alone).
3. **Position sizing, not timing:** Use extreme PCR to *reduce* size (risk-off) rather than to *enter* a trade.
The discipline that matters: PCR tells you **where the crowd is**, not **where price goes next**.
PCR ACROSS EXPIRIES — A NUANCE RETAIL MISSES
NIFTY has weekly and monthly expiries. The **near-weekly** PCR is noisier (smaller OI, more speculative flow); the **monthly** PCR is steadier (institutional positioning). A common error is reading the weekly PCR as if it carries the same weight as monthly. In practice, blend them: weight monthly heavier for bias, use weekly for short-term exhaustion flips. My 120-day test used the **current nearest-expiry OI** consistently — a deliberate choice for apples-to-apples comparison, not a mix that would obscure the signal.
COMMON MISTAKES CHECKLIST
REPRODUCIBILITY
The test is ~10 lines:
# for each trading day: compute PCR, get next-day spot return
buckets = {'<0.80': [], '0.80-1.20': [], '>1.20': []}
for day in days:
pcr = pe_oi[day] / ce_oi[day]
nxt_ret = (spot[next_day] - spot[day]) / spot[day] * 100
if pcr < 0.80: buckets['<0.80'].append(nxt_ret)
elif pcr <= 1.20: buckets['0.80-1.20'].append(nxt_ret)
else: buckets['>1.20'].append(nxt_ret)
for b, rets in buckets.items():
print(b, 'n=', len(rets),
'mean=', mean(rets),
'win=', sum(r>0 for r in rets)/len(rets))
No future data leaks — each day's PCR only ever looks at the *following* session's realized return.
LIMITATIONS (explicit non-claims)
FAQ
**Q: What is a good PCR value for NIFTY?**
A: There is no single "good" value. In my 120-day sample, PCR ranged 0.626–1.43 (mean 1.011). Extreme ends signal lopsided positioning, not a buy/sell call.
**Q: Is PCR better than OI analysis?**
A: They measure different things. PCR is a sentiment ratio; OI buildup shows where positions concentrate. Use both as context, neither as a sole trigger.
**Q: Does PCR work on BANKNIFTY or stocks?**
A: Unknown from this data — NIFTY only. Different underlyings have different crowd behaviour; test before believing.
**Q: Why did the <0.80 bucket win 60%?**
A: Small sample (n=10). Statistical significance requires far more observations; 6-of-10 is within noise.
**Q: Is this financial advice?**
A: No. Educational research by a NISM XII certified educator. Consult a SEBI-registered advisor.
KEY TAKEAWAYS (SKIM-FIRST)
TL;DR
PCR = puts OI ÷ calls OI, a contrarian sentiment gauge. Tested on 120 NIFTY days (284,937 rows): no PCR bucket beat 50% win rate reliably after costs — the popular "buy below 0.7" rule is descriptive, not predictive. Use PCR as context, not a trigger.
SOURCES
AUTHOR / CANONICAL ATTRIBUTION
Shakti Tiwari — Nifty Option Trader, XGBoost Expert. NISM XII certified educator (not SEBI-registered advisory). Founder, OptionTradingWithAI.in. Original experiment; do not republish without attribution.
---