Tuesday, July 1, 2025

Understanding Put-Call Parity: The Most Ignored Yet Powerful Concept in Option Pricing

Understanding Put-Call Parity

Well! Today’s topic of discussion is put-call parity, and I know many of you landing on this page would have heard or known about it earlier. You might be wondering what good it will bring to spend the next 10 minutes on this article—but believe me, starting from the definition (which, if you are already aware of, feel free to skip), this article is going to cover:

  • How to use this parity to estimate the direction of the stock,
  • How to apply it when making trading decisions,
  • And clear some of the fundamental misconceptions people have about option pricing and the economics that work behind it.

So, let’s try to understand this powerful, yet highly ignored, concept in a few simple steps.

First Things First…

What is a Call and Put?

(For the newborns who want to understand the basics; for the fathers and grandfathers—feel free to scroll past.)

A call option is a financial contract that gives the buyer the right to buy an underlying asset (like a stock) at a specific price (strike price) on or before a certain date (expiration date). Essentially, it's a bet that the price of the asset will increase. It is like booking a pre-order by paying a certain amount (premium in this case) to secure a contract at a future date.

A put option is a contract that gives the buyer the right to sell an underlying asset (like a stock) at a predetermined price (the strike price) on or before a specific date (the expiration date). It is similar to the insurance we pay to protect ourselves from future losses.

I am not going into more details about call and put options. Let me know if you want me to write a more detailed explanation of the fundamentals. Although there is a lot of material online, I am happy to write one if needed.

Next, Let’s Understand What Put-Call Parity Is

Mathematically, put-call parity is defined as:

C + PV(SP) = P + S (for European options & non-dividend-paying stocks)

Where:

  • C = Call value
  • PV(SP) = Present value of the strike price
  • P = Put value
  • S = Stock price

Let’s try to validate a very important fact check over here related to the price of call and put. Let's consider an ATM call and put of a stock with a 1-year expiration and a current price of x.

We know that the present value of x will be less than x by the factor of the interest rate i.e. PV(SP) < S for ATM options. Therefore, to balance the equation, call premium will always be higher than put premium.

Most traders have a misconception that puts trade higher than calls—but fundamentally, that’s incorrect, as the call always bears the weight of interest, the most ignored Greek in option pricing: Rho.

Let’s understand this with an example:

Consider a stock with a current price of INR 1000. Let’s take the 1-year expiration call and put at ATM (i.e., strike price = 1000).

Let’s assume the present value of strike price INR 1000 = INR 900, so now the equation becomes:

C + 900 = P + 1000
=> C - P = 1000 - 900
=> C - P = 100

Therefore, we can see that the price of the call will always be higher than the put by the factor of interest (Rho).

Let’s consider a trader who anticipates that the stock will rise in one year. To hold the stock, he would have to invest INR 1000 for one year. His interest cost on capital, let’s say at 10%, would be INR 100. Since he is not investing INR 1000 now but still getting the same right as that of a buyer, his notional interest cost is 100, which gets added to the call, and that’s the reason why the call is priced higher by 100 in comparison to the put.

Now Let’s Derive a Simplified Equation (with Interest Component)

Call + Strike = Put + Stock + Interest
=> Call = Stock – Strike + Put + Interest
(So, in our example above where stock and strike for ATM call are same: Call = Put + Interest)

=> Put = Strike – Stock + Call – Interest

I don’t want to confuse you—but if you want to be a pro, then you should also know how the price reacts with dividends.

Dividends are payments made to the holder of the stock on the record date. Option holders do not receive dividends, so for a dividend-paying stock, the amount of the dividend must be adjusted from the stock price. So, the new equation for call becomes:

Call = (Stock – Dividend) - Strike + Put + Interest
Put = Strike – (Stock – Dividend) + Call – Interest

Now the Real Kick: How to Use This Parity to Predict Stock Movement

Below is the table for a stock of an Indian company listed on NSE. The first column is the strike price with 1-month expiry starting from 1490 to 1560, and the current price is 1528.80. This includes all three types of calls: ITM, ATM, and OTM.

Strike Price Stock Price Call Value Put Value Interest Rate (7.3%/12) Theoretical Call Price (put-call parity) Theoretical Put Price (put-call parity) Difference from Actual Price (Call)
14901528.856.7514.90.613%63.068.5910%
15001528.849.6517.750.613%55.9111.4911%
15101528.843.0520.950.613%49.1114.8912%
15201528.836.924.750.613%42.9118.7414%
15301528.831.329.10.613%37.2623.1416%
15401528.826.2534.000.613%32.1628.0918%
15501528.821.839.40.613%27.5633.6421%
15601528.817.845.40.613%23.5639.6424%

Column 3 and 4 have actual values of call and put at the end of the day. Column 5 shows the risk-free interest rate, which is 7.35% annually. Converting it to monthly (as the options are expiring in 30 days), we get the monthly rate:
Interest Rate = (7.35% / 12) = 0.613%

Columns 6 and 7 show the theoretical call and put prices using put-call parity. Let’s calculate the first one for example:

Call = (Stock – Dividend) - Strike + Put + Interest 
     = (1528.80 - 0) – 1490 + 14.90 + (1528.80 * 0.613%) 
     = 63.06

Therefore, the theoretical call price based on put-call parity is 63.06, whereas the actual call price is 56.75, i.e., 10% lower than the theoretical price.

Similar calculation for the put price in column 7 shows that the actual put price is trading higher than the theoretical price.

We can see the difference in actual and theoretical call price in column 8, which shows that the actual price is trading lower than the theoretical price. The price difference increases as the option moves from ITM to OTM, ranging from 10% to 24%.

Hence, we can anticipate that the market is not expecting the stock price to move upward, and hence, calls are trading at a discount from theoretical prices.

Python Code to Scrape NSE Option Chain Data


import requests
import pandas as pd

url = "https://www.nseindia.com/api/option-chain-indices?symbol=NIFTY"
headers = {
    "User-Agent": "Mozilla/5.0"
}

session = requests.Session()
session.headers.update(headers)
session.get("https://www.nseindia.com")

response = session.get(url)
data = response.json()
underlying = data['records']['underlyingValue']
interest_rate = 0.00613  # Monthly rate

records = []
for item in data['records']['data']:
    if item.get('CE') and item.get('PE'):
        strike = item['strikePrice']
        call_price = item['CE']['lastPrice']
        put_price = item['PE']['lastPrice']
        theo_call = underlying - strike + put_price + (underlying * interest_rate)
        theo_put = strike - underlying + call_price - (underlying * interest_rate)
        records.append({
            "Strike Price": strike,
            "Call Price": call_price,
            "Put Price": put_price,
            "Theoretical Call": round(theo_call, 2),
            "Theoretical Put": round(theo_put, 2)
        })

df = pd.DataFrame(records)
print(df.head())

Conclusion

Put-call parity is one of the most powerful tools in options trading, and yet it remains underused and often misunderstood. Understanding this parity helps you spot mispriced options, predict market sentiment, and avoid costly misconceptions, like assuming puts always cost more than calls.

Disclaimer

This article is purely for educational purposes and does not constitute investment advice or a recommendation to trade. Options trading involves substantial risk, and it is important to consult a financial advisor before making any trading decisions.

Understanding Put-Call Parity: The Most Ignored Yet Powerful Concept in Option Pricing

Understanding Put-Call Parity Well! Today’s topic of discussion is put-call parity, and ...