Skip to content

Options

32 formulas

Options formulas span three layers: per-trade premium yields annualized to compare expirations side by side (cash-secured puts, covered calls, credit spreads, iron condors); break-even and effective-price reference points for short and long positions; and the Black-Scholes-Merton pricing framework with put-call parity and the five Greeks (delta, gamma, theta, vega, rho) for valuing European options and quantifying their sensitivities.

Payoffs & Intrinsic Value

Premium Yields

Cash-Secured Put Annualized Return

Calculates the simple-annualized rate of return on selling a cash-secured put, assuming the option expires worthless. Uses the strike price as the cash basis (the amount set aside to secure the obligation).

Annualized Return=PremiumStrike×365Days to Expiration\text{Annualized Return} = \frac{\text{Premium}}{\text{Strike}} \times \frac{365}{\text{Days to Expiration}}

Cash-Secured Put Compounded Annualized Return

Calculates the compounded-annualized rate of return on a cash-secured put, treating the per-trade yield as a periodic return that compounds end-to-end across the year. Always slightly higher than the simple-annualized form for the same inputs.

Annualized Return=(1+PremiumStrike)365Days to Expiration−1\text{Annualized Return} = \left(1 + \frac{\text{Premium}}{\text{Strike}}\right)^{\frac{365}{\text{Days to Expiration}}} - 1

Cash-Secured Put Return on Net Cash

Annualized rate of return on a cash-secured put using the net cash outlay (Strike − Premium) as the denominator instead of the full strike. Reflects the actual cash tied up after the premium is received up front.

Annualized Return=PremiumStrike−Premium×365Days to Expiration\text{Annualized Return} = \frac{\text{Premium}}{\text{Strike} - \text{Premium}} \times \frac{365}{\text{Days to Expiration}}

Naked Put Return on Margin

Annualized rate of return on selling an uncovered (naked) put, using the broker-imposed margin requirement as the capital base. Same shape as the cash-secured put formula but typically yields a much higher figure because margin is a fraction of the strike.

Annualized Return=PremiumMarginReq×365Days to Expiration\text{Annualized Return} = \frac{\text{Premium}}{\text{MarginReq}} \times \frac{365}{\text{Days to Expiration}}

Covered Call Annualized Return

Calculates the simple-annualized rate of return from premium income on selling a covered call, assuming the option expires worthless. Uses the strike price as the capital basis — a close proxy for an at-the-money call where strike approximates current stock price.

Annualized Return=PremiumStrike×365Days to Expiration\text{Annualized Return} = \frac{\text{Premium}}{\text{Strike}} \times \frac{365}{\text{Days to Expiration}}

Covered Call Compounded Annualized Return

Compounded-annualized return from premium income on a covered call, treating the per-trade yield as a periodic return that compounds end-to-end across the year. Always slightly higher than the simple form for the same inputs.

Annualized Return=(1+PremiumStrike)365Days to Expiration−1\text{Annualized Return} = \left(1 + \frac{\text{Premium}}{\text{Strike}}\right)^{\frac{365}{\text{Days to Expiration}}} - 1

Covered Call Static Return (If-Not-Called)

Simple annualization of call premium divided by stock purchase price. It equals the position’s static return only when the stock finishes unchanged and the call expires worthless, ignoring dividends, fees and taxes.

Static Return=PremiumStockBasis×365Days to Expiration\text{Static Return} = \frac{\text{Premium}}{\text{StockBasis}} \times \frac{365}{\text{Days to Expiration}}

Covered Call If-Called Total Return

Simple annualized return for a buy/write opened on the trade date and assigned at expiration: premium plus strike minus initial stock purchase price, divided by that purchase price.

If-Called Return=Premium+(Strike−StockBasis)StockBasis×365Days to Expiration\text{If-Called Return} = \frac{\text{Premium} + (\text{Strike} - \text{StockBasis})}{\text{StockBasis}} \times \frac{365}{\text{Days to Expiration}}

Multi-Leg Strategies

Break-Even & Effective Prices

Pricing & Relationships

Put-Call Parity

Fundamental no-arbitrage relationship between European call and put prices on the same underlying, strike, and expiration. Given a put price, current stock price, strike, risk-free rate, and time to expiration, the call price is uniquely determined (and vice versa).

C−P=S−K⋅e−rT⇒C=P+S−K⋅e−rTC - P = S - K \cdot e^{-rT} \quad \Rightarrow \quad C = P + S - K \cdot e^{-rT}

Black-Scholes Call Price

Theoretical price of a European call on a non-dividend-paying stock under the Black-Scholes-Merton model. Assumes log-normal stock returns, constant volatility, constant risk-free rate, and continuous trading.

C=S⋅N(d1)−K⋅e−rT⋅N(d2),d1=ln⁡(S/K)+(r+σ2/2)TσT,d2=d1−σTC = S \cdot N(d_1) - K \cdot e^{-rT} \cdot N(d_2), \quad d_1 = \frac{\ln(S/K) + (r + \sigma^2/2)T}{\sigma\sqrt{T}}, \quad d_2 = d_1 - \sigma\sqrt{T}

Black-Scholes Put Price

Theoretical price of a European put on a non-dividend-paying stock under the Black-Scholes-Merton model. Equivalent to the Black-Scholes call price connected by put-call parity.

P=K⋅e−rT⋅N(−d2)−S⋅N(−d1)P = K \cdot e^{-rT} \cdot N(-d_2) - S \cdot N(-d_1)

Implied Volatility

The volatility input that, plugged into the Black-Scholes-Merton formula, makes the model price equal to the observed market price. Solved numerically via Newton-Raphson on price-vs-σ, using vega as the derivative.

Find σ such that BS(S,K,r,σ,T)=Market Price\text{Find } \sigma \text{ such that } BS(S, K, r, \sigma, T) = \text{Market Price}

Binomial Option Price (Cox-Ross-Rubinstein)

European option price from a recombining binomial tree: in each step the stock moves up by u = e^{σ√Δt} or down by d = 1/u with risk-neutral probability p = (e^{rΔt} − d)/(u − d); the option is valued at expiry and discounted back node by node. As the number of steps grows the price converges to Black-Scholes.

u=eσΔt,d=1u,p=erΔt−du−d,Vt=e−rΔt[p Vt+1u+(1−p) Vt+1d]u = e^{\sigma\sqrt{\Delta t}}, \quad d = \tfrac{1}{u}, \quad p = \frac{e^{r\Delta t} - d}{u - d}, \quad V_{t} = e^{-r\Delta t}\left[p\,V_{t+1}^{u} + (1-p)\,V_{t+1}^{d}\right]

Forwards & Futures

Greeks

Call Delta

Sensitivity of a European non-dividend-paying call price to the underlying price. In Black–Scholes it equals N(d1); the risk-neutral probability of finishing in the money is N(d2).

Δcall=N(d1)\Delta_{\text{call}} = N(d_1)

Put Delta

First derivative of the Black-Scholes put price with respect to the underlying. Equal to call delta minus 1 by put-call parity.

Δput=N(d1)−1\Delta_{\text{put}} = N(d_1) - 1

Gamma

Second derivative of option price with respect to the underlying — the rate of change of delta. Identical for European calls and puts on the same strike, expiration, and underlying.

Γ=φ(d1)SσT\Gamma = \frac{\varphi(d_1)}{S \sigma \sqrt{T}}

Call Theta

Rate of change of call price with respect to the passage of time, expressed per year. Almost always negative — calls lose value as time passes (time decay).

Θcall=−Sφ(d1)σ2T−rKe−rTN(d2)\Theta_{\text{call}} = -\frac{S \varphi(d_1) \sigma}{2\sqrt{T}} - r K e^{-rT} N(d_2)

Put Theta

Rate of change of put price with respect to the passage of time, expressed per year. Usually negative; can be positive for deep ITM European puts on non-dividend-paying stock when the rate-driven term dominates.

Θput=−Sφ(d1)σ2T+rKe−rTN(−d2)\Theta_{\text{put}} = -\frac{S \varphi(d_1) \sigma}{2\sqrt{T}} + r K e^{-rT} N(-d_2)

Vega

Sensitivity of option price to a 1.00 (i.e. 100 percentage point) change in volatility. Identical for European calls and puts on the same strike and expiration. Most broker platforms divide by 100 to show "$/1% vol move."

ν=Sφ(d1)T\nu = S \varphi(d_1) \sqrt{T}

Call Rho

Sensitivity of call price to a 1.00 (i.e. 100 percentage point) change in the risk-free rate. Positive for calls — higher rates increase call values via the present-value-of-strike channel.

ρcall=KTe−rTN(d2)\rho_{\text{call}} = K T e^{-rT} N(d_2)

Put Rho

Sensitivity of put price to a 1.00 (i.e. 100 percentage point) change in the risk-free rate. Negative for puts — higher rates decrease put values.

ρput=−KTe−rTN(−d2)\rho_{\text{put}} = -K T e^{-rT} N(-d_2)