📈 Put-Call Parity Calculator
Validate European option pricing or calculate missing values using the put-call parity formula
Calculation Results
How to Use This Tool
Select what you want to calculate from the "Calculate For" dropdown: choose to check if put-call parity holds, or calculate a missing call price, put price, strike price, or underlying asset price.
Enter all required values for your selected calculation: option prices, underlying asset price, strike price, risk-free interest rate, time to expiration, and compounding method. If calculating a missing value, that field will be automatically disabled.
Click the Calculate button to see a detailed breakdown of results. Use the Reset button to clear all inputs and start over. You can copy results to your clipboard using the Copy Results button.
Formula and Logic
Put-call parity is a fundamental relationship for European options, which cannot be exercised before expiration. The core formula is:
C + PV(K) = P + S
Where:
- C = Call option price
- P = Put option price
- S = Current price of the underlying asset
- K = Strike price of the options
- PV(K) = Present value of the strike price, discounted at the risk-free rate for the time to expiration
Present value of the strike price is calculated based on your selected compounding method:
- Continuous Compounding: PV(K) = K * e^(-r*t) where r is the annual risk-free rate (decimal) and t is time in years
- Discrete Annual Compounding: PV(K) = K / (1 + r)^t
- Discrete Semi-Annual Compounding: PV(K) = K / (1 + r/2)^(2t)
- Discrete Quarterly Compounding: PV(K) = K / (1 + r/4)^(4t)
Missing values are derived by rearranging the core formula to solve for the unknown variable.
Practical Notes
Put-call parity only applies to European options, which do not allow early exercise. American options (which can be exercised early) may deviate from parity due to early exercise value.
Use the current risk-free rate for your time to expiration: for U.S. markets, the yield on Treasury bills or notes matching the option's expiration is a common benchmark.
Transaction costs, dividends, and taxes are not included in this calculation. In real-world trading, these factors can cause small discrepancies between theoretical and actual option prices.
Higher risk-free rates reduce the present value of the strike price, which increases the fair value of call options and decreases the fair value of put options.
Why This Tool Is Useful
Individual investors and financial planners can use this tool to quickly validate if European options are fairly priced relative to each other and the underlying asset, without manual calculations.
It simplifies a complex derivatives concept into an accessible tool for personal finance and portfolio planning, helping users avoid overpaying for mispriced options.
The ability to calculate missing values saves time when modeling option scenarios or verifying pricing from brokers or financial platforms.
Frequently Asked Questions
Does this calculator work for American options?
No, this tool only applies to European options. American options allow early exercise, which breaks the put-call parity relationship. Use this calculator only for European-style options (common for index options, for example).
What risk-free rate should I use?
Use the yield on a U.S. Treasury security with a maturity matching the option's time to expiration. For example, if the option expires in 6 months, use the 6-month Treasury bill yield. Enter the rate as a percentage (e.g., 4.5% as 4.5).
Why is there a small difference when checking parity?
Small differences (less than $0.01) are usually due to rounding in input values or market pricing. Larger differences may indicate one or more options are mispriced, or that the option is American-style, or that dividends or transaction costs are affecting real-world prices.
Additional Guidance
Always verify the option type (European vs. American) before using this tool, as misapplying the formula will lead to incorrect results.
Time to expiration should be calculated as exactly as possible: for example, an option expiring in 6 months and 15 days is 0.5 + (15/365) ≈ 0.541 years, not just 0.5 years.
If you are calculating a missing value, double-check that all other inputs are accurate, as errors in any input will propagate to the calculated result.