Formulas for Payoff at Expiry (Black-Scholes not required at/for expiry)
The PnL(S) column shows the formula for computing the outcome (payoff) at expiry for any stock price (S) you supply.
If you spot an error or want to make improvements/additions/extensions, let me know.
This is a WIP (work in progress).
ATTN: Non-programmers should not participate in this thread, as this is mostly interesting,
and is intended, for programmers only.
The PnL(S) column shows the formula for computing the outcome (payoff) at expiry for any stock price (S) you supply.
If you spot an error or want to make improvements/additions/extensions, let me know.
This is a WIP (work in progress).
ATTN: Non-programmers should not participate in this thread, as this is mostly interesting,
and is intended, for programmers only.
Code:
Formulas for Payoff at Expiry
(Black-Scholes not required at/for expiry)
Abbrevations:
S Stock Price
S0 Initial Stock Price
Pr0 Initial Option Premium (ie. the Option Price)
K Option Strike
BEP Break/Even Point (the stock price at which PnL is 0)
PnL(S) The formula for computing PnL for any S
Infinity means "unlimited"
Type NetPr MinPnL MaxPnL BEP ProfitZone PnL(S)
----------------------------------------------------------------------------------------------------------------------------------------
LongStock Bullish -S0 -S0 +Infinity S0 BEP.right S
ShortStock Bearish S0 -Infinity S0 S0 BEP.left S
LongCall Bullish -Pr0 -Pr0 +Infinity K + Pr0 BEP.right max(S - K - Pr0, -Pr0)
ShortCall Bearish Pr0 -Infinity Pr0 K + Pr0 BEP.left min(K - S + Pr0, Pr0)
LongPut Bearish -Pr0 -Pr0 K - Pr0 K - Pr0 BEP.left max(K - S - Pr0, -Pr0)
ShortPut Bullish Pr0 -K + Pr0 Pr0 K - Pr0 BEP.right min(S - K + Pr0, Pr0)
CoveredCall Bullish -S0 + Pr0 NetPr K - Pr0 S0 - Pr0 BEP.right S < 0.0 ? MinPnL : S > K ? MaxPnL : MinPnL + S
(= LS + SC)
CashSecuredPut Bullish -K + Pr0 NetPr K - Pr0 K - Pr0 BEP.right S < 0.0 ? MinPnL : S > K ? MaxPnL : MinPnL + S
(= SP + Cash)
Last edited:
