MINI SPXThis is the XSP version of SPX, basically it's just the price of SPX divided by 10 and shown using labels.
Should only be used on SPX to watch the price of XSP since XSP doesn't have real-time data ATM.
Can be used on any time frames.
This script allows you to view the Daily (O, H, L, C) and Yesterday's (O, H, L, C) with a non intrusive price line.
Allows for extra customization of the price lines and labels.
Options
APIBridge Nifty Options Algo StrategyUsing Pinescript, we will use charts of Cash/Future to trade in Options. Note this strategy works well with even the free version of TradingView.
The Relative Strength Index ( RSI ). Is a momentum oscillator that measures the speed and change of price movements. The RSI oscillates between zero and 100. Increasing RSI shows increasing bullish momentum. Decreasing RSI shows increasing bearish momentum. We take RSI upper bound as 80 to indicate bullish momentum and RSI lower bound as 20 to indicate bearish momentum.
We use the above premise to create options buy-only strategy which trades in ATM strikes by default. This strategy requires very less margin (Minimum Rs . 15000).
Since this strategy uses underlying data (cash/future) to place trades in Options, please ignore the backtest of this strategy given by TradingView. TradingView does not provide options data but this strategy bypasses it.
Strategy Premise
The Relative Strength Index (RSI) is a momentum oscillator that measures the speed and change of price movements. The RSI oscillates between zero and 100. Increasing RSI shows increasing bullish momentum. Decreasing RSI shows increasing bearish momentum. We take RSI upper bound as 80 to indicate bullish momentum and RSI lower bound as 20 to indicate bearish momentum.
We use the above premise to create options buy-only strategy which trades in ATM strikes by default. This strategy requires very less margin (Rs. 15000 should be sufficient).
NSE Options Algo Strategy Logic
Long Entry: When RSI goes above 80, send LE in an auto-calculated option strike Call. When RSI goes below 20, send LE in auto-calculated option strike Put.
Long Exit: When we hit Stop loss or Target. In case SL/TGT does not hit and reverse RSI goes above 80 send Long Exit in auto-calculated option. Put as per last trade; RSI goes below 20, send LX in auto-calculated option call as per last trade.
For Long and Short entry the order is fired in the option buying side with auto strike price selection.
Option Strategy Parameters for TraingView Charts
RSI Length(Mandatory): Number of bars used to calculated RSI.
Upper Band(Mandatory): To specify upper band of RSI.
Lower Band(Mandatory): For specifying lower band of RSI.
Use reversal from Upper Band (Optional): This will enable short entry when RSI is falling below 80 from upper band. Recommended to keep unchecked initially.
Use reversal from Lower Band (Optional): This will enable long entry when RSI is raising above 20 from lower band. Recommended to keep unchecked initially.
Quantity: We use this specify the trade quantity (for Nifty min 75)
Custom Stop Loss in Points: Movement in chart price against the momentum which will trigger exit in options positions
Custom Target in Points: Movement in chart price against the momentum which will trigger exit in options positions
Base symbol: This is the base instrument symbol like NIFTY or BANK NIFTY.
Strike distance from ATM: Our default strike selection is considered as first ATM option (with nearest distance, only 100s are considered ). This strike distance allows to calculate ATM options which are at fixed distance.
Expiry: Expiry of option. Weekly and monthly both expiry are allowed.
Instrument: For index instrument will be OPTIDX, for stock instrument will be OPTSTK
Strategy Tag: The Strategy of Nifty options configured in Api bridge.
Setting Up Alert
Before setting up the alert make sure that you have selected desired script, time frame, strategy settings, and APIbridge configuration. Click in settings add alert and paste {{strategy.order.comment}} in message box.
Important: Do not change any settings during live trading. It may break the sequence of exit for the correct call/put.
Ichi-Price WaveWelcome to the Ichi-Price Wave. This indicator is designed for day trading options contracts for any ticker, using a number of indicators — Ichimoku Cloud, Volume-Weighted Average Price, Stochastic Relative Strength Index, Exponential Moving Average (13/48) — and calculating how they interact with each other to provide entry and exit signals for both Calls and Puts on normal days. ****Read the Important Information section before opening any positions based on this indicator. (Also *NFA)
The general concept is that you, the trader, are a Surfer 🏄🏾 who rides the best waves in deep water until it gets dangerous.
Emoji storyline: The 🏄🏾 emoji (Call or Put, depending on the color of its Green or Red label, respectively) indicates an upcoming *potential* entry that, for a number of reasons, may be disregarded. (See: Important Information section below). And just as there are no certainties in the stock market itself, the tiered exit signals are ranked by low 🐬, medium 🦈 and high risk 🦑 tolerance. (In other words, it's relatively safe to surf with dolphins around, but there's the off chance they even strike trainers and become aggressive. It's more dangerous to swim with sharks. And on the unlikely, rare occasion you see a literal, giant, mythical, ship destroying Kraken 😬 ... you definitely need to get out of the water.
Surfing for as long as possible reaps the greatest rewards — but risk/reward are to be considered for entries and exits. Exiting every time you see a 🐬 (E1) should secure profits nearly 100% of the time, but they'll be very minimal. Whereas surfing til you reach a Kraken 🦑 (which will not even appear on most Price Wave cycles) would reap the most rewards. (NFA: I recommend considering sharks 🦈 as an exit point for the majority of positions, and perhaps only keeping a few runners open with the hopes of finding that shiny Kraken. (On the non-Emoji chart, the low, medium and high risk exits are named E1, E2 and E3, respectively. Got to the indicator's Settings > Inputs > then toggle EMOJIs ON/OFF)
Boring stuff: The entry 🏄🏾 signals are triggered by multiple conditions that must be all true. For Call entries, one of the necessary conditions is that the RSI's K must be maximum 10 (this can be changed in default). This, along with another condition where current price must be below the VWAP Lower Bound 1, serves as a great reference point showing the stock price is currently uncomfortable where it is and may likely soon snap back closer to the VWAP, perhaps even to the other side due to a pendulum effect.
Important information
Relying on those two factors for setting entry and exit points are great for normal days. (Normal, as in the ticker price bounces within a channel (e.g., ≤3% + or -) that's trending slightly bullish or bearish depending on greater market trend). But there are abnormal days where news catalysts (e.g., CPI data, CEO scandals, unexpected company data release, etc.) trigger FOMO and FUD, ultimately rendering the logic behind most indicators non applicable (e.g., RSI's "buy when oversold"). On the chart, this indicator accounts for this with two measures:
One, you should only "Surf" in the water. That is, there are two bands — Shallow and Deep Water. Any "Surf" emojis where price action is outside of the water should be ignored**. Two, there are additional EMOJIs that show you "Bearish trend" ⛈ and "Bullish trend ☀️. (Story time again: You obviously shouldn't surf in thunder and lightning. But also, surfing in the blistering sun with no clouds in the sky during a heatwave is also dangerous to your health.)
You can use these two measures to disregard the "surfers" suggesting you join them in opening a position in the suggested direction. And surfers followed by Cloud EMOJIs — 🌤️ (Put) or 🌧️ (Call) — can be used as "perfect entry" points. (The clouds represent weather being less extreme and better for surfing).
(**While these should mostly be ignored, these have not been muted because there is the possibility of a very strong turn around if you happen to catch the last one (which is not ideal for risk-averse traders). Use other indicators, such as the MACD and trend lines, to find potential bottoms (or tops) as price action plunges (or soars) due to abnormal news circumstances.)
Entry and exit buffers
At the beginning of each day, most indicators usually are not immediately calibrated correctly due to premarket trading and open market (at least to the degree that the day's sentiment can be best read from them due to the amount of volatility). What I recommend when using this indicator is disregarding signals during the first 15 minutes (or possibly 30 minutes) of market open to get the best results. And also, considering this indicator is meant for day trading (i.e., not holding positions overnight), disregarding ENTRY signals for the last 45 minutes of the trading day could give yourself enough buffer on the back end for exiting comfortably.
RSI entry
Preparing for an entry when you see a surfer is recommended, but actually opening the position when you see a 🌤️ (Put) or 🌧️ (Call) would yield best results and avoid misfires — particularly when those two cloud EMOJIs are signaled when the RSI is overbought and K is at least 95 (Puts), or oversold and K at maximum 5 (Calls). (Story time logic: The cloud eclipsing the Sun means it's cooling off and better for surfing. And the rain cloud no longer having lightning means the "bearish" storm is possibly soon over).
Delta and the Greeks
You should experiment yourself, but keep in mind that this is for capitalizing off of a day's minor price swings (≤3% + or -). Entering a same day expiry contract that's deep OTM is not going to work with this indicator (even if you enter at a surfer 🏄🏾 and exit at a Kraken 🦑) because the price wave from one end to the other won't be enough to compensate for the other Greeks working against you. Use another indicator (or insider knowledge ... Just kidding, that's illegal, don't do that) if you want to buy those kind of contracts.
I personally purchase contracts w/ minimum 80% Implied Volatility and somewhere between 20-40 Delta. Having a nice range for yourself with these factors, depending also on the size of your own portfolio and the risk tolerance you have, will determine how much you're able to capitalize off successful entry and exits.
Tips
• I set stop losses 5-10% depending on the ticker. (e.g., $TSLA's volatility may require SL closer to 10% whereas using it on $SPY, a 5% could suffice). This is in addition to ignoring entry signals that don't meet the aforementioned two requirements (i.e., it's risky to Surf in shallow water, and you shouldn't try to Surf at all outside of the water, ref. Band 2 and outside of Band 2). Remember, this is the stock market — not the casino. We rely on strategy and risk management — not hope.
• It's recommended you use time intervals ≤ 5 min. (I use 1 minute and 5 min)
• Liquidity . Using these signals on a ticker with low liquidity (particularly if you enter on the Ask side), can reduce your profits to 0% or even to a loss even if you have a perfect entry and exit. I always point to SPY as the optimal bid-ask spread, but keep that in mind.
What's with the name "Ichi-Price Wave"?
The "Ichi" gives credit to Japanese journalist Goichi Hosoda, whose indicator I used in conjunction with the 13/48 Exponential Moving Averages to create some of the exit signal conditions (e.g., E2🦈). That E2 condition is: Signal the first time the price intersects the Ichimoku conversion line *after* it has entered the VWAP UB/LB channel on one end and has exited on the opposite end). And it's named "Price Wave" because it's a literal price wave, which is where the fun surf narrative comes in. Also, "Price" doubles as me naming it after myself (in a less pretentious way). It's actually convenient that my last name is literally Price. Almost as if I was born for this. Nonetheless, this indicator is far more accurate in spotting directional changes than the free 13/48 cross, which oddly enough, influencers are charging for access. It's free, but the code is protected, for now at least.
Try it out on any ticker and look at how accurately it catches the tops and bottoms (keeping in mind to ignore misfires according to the two measures and also setting ~5-10% stop losses). And of course, use this in conjunction with other indicators. Ignoring all of my other emojis and simply setting surfer 🏄🏾 alerts could serve as additional confirmations for your personal strategy. Or you could simply enter at a surfer 🏄🏾 and exit when it reaches VWAP (or at least increase your Stop Loss to sell at break even if it doesn't reach). That strategy is the most conservative and would secure consistent gains). AND AGAIN, use your stop losses. Either it makes a move or it doesn't. Simply re-enter at a better point if necessary.
Samuelson 1965 Option Pricing Formula [Loxx]Samuelson 1965 Option Pricing Formula is an options pricing formula that pre-dates Black-Scholes-Merton. This version includes Analytical Greeks.
Samuelson (1965; see also Smith, 1976) assumed the asset price follows a geometric Brownian motion with positive drift, p. In this way he allowed for positive interest rates and a risk premium.
c = SN(d1) * e^((rho - omega) * T) - Xe^(-omega * T)N(d2)
d1 = (log(S / X) + (rho + v^2 / 2) * T) / (v * T^0.5)
d2 = d1 - (v * T^0.5)
where rho is the average rate of growth of the share price and omega is the average rate of growth in the value of the call. This is different from the Boness model in that the Samuelson model can take into account that the expected return from the option is larger than that of the underlying asset omega > rho.
Analytical Greeks
Delta Greeks: Delta, DDeltaDvol, Elasticity
Gamma Greeks: Gamma, GammaP, DGammaDvol, Speed
Vega Greeks: Vega , DVegaDvol/Vomma, VegaP
Theta Greeks: Theta
Rate/Carry Greeks: Option growth rate sensitivity, Share growth rate sensitivity
Probability Greeks: StrikeDelta, Risk Neutral Density
Inputs
S = Stock price.
X = Strike price of option.
T = Time to expiration in years.
omega = Average growth rate option
rho = Average growth rate share
v = Volatility of the underlying asset price
cnd (x) = The cumulative normal distribution function
nd(x) = The standard normal density function
convertingToCCRate(r, cmp ) = Rate compounder
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Reset Strike Options-Type 2 (Gray Whaley) [Loxx]For a reset option type 2, the strike is reset in a similar way as a reset option 1. That is, the strike is reset to the asset price at a predetermined future time, if the asset price is below (above) the initial strike price for a call (put). The payoff for such a reset call is max(S - X, 0), and max(X - S, 0) for a put, where X is equal to the original strike X if not reset, and equal to the reset strike if reset. Gray and Whaley (1999) have derived a closed-form solution for the price of European reset strike options. The price of the call option is then given by (via "The Complete Guide to Option Pricing Formulas")
c = Se^(b-r)T2 * M(a1, y1; p) - Xe^(-rT2) * M(a2, y2; p) - Se^(b-r)T1 * N(-a1) * N(z2) * e^-r(T2-T1) + Se^(b-r)T2 * N(-a1) * N(z1)
p = Se^(b-r)T1 * N(a1) * N(-z2) * e^-r(T2-T1) + Se^(b-r)T2 * N(a1) * N(-z1) + Xe^(-rT2) * M(-a2, -y2; p) - Se^(b-r)T2 * M(-a1, -y1; p)
where b is the cost-of-carry of the underlying asset, a is the volatility of the relative price changes in the asset, and r is the risk-free interest rate. K is the strike price of the option, T1 the time to reset (in years), and T2 is its time to expiration. N(x) and M(a,b; p) are, respectively, the univariate and bivariate cumulative normal distribution functions. Further
a1 = (log(S/X) + (b+v^2/2)T1) / v*T1^0.5 ... a2 = a1 - v*T1^0.5
z1 = ((b+v^2/2)(T2-T1)) / v*(T2-T1)^0.5 ... z2 = z1 - v*(T2-T1)^0.5
y1 = (log(S/X) + (b+v^2/2)T1) / v*T1^0.5 ... y2 = a1 - v*T1^0.5
and p = (T1/T2)^0.5. For reset options with multiple reset rights, see Dai, Kwok, and Wu (2003) and Liao and Wang (2003).
Inputs
Asset price ( S )
Strike price ( K )
Reset time ( T1 )
Time to maturity ( T2 )
Risk-free rate ( r )
Cost of carry ( b )
Volatility ( s )
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Numerical Greeks Outputs
Delta D
Elasticity L
Gamma G
DGammaDvol
GammaP G
Vega
DvegaDvol
VegaP
Theta Q (1 day)
Rho r
Rho futures option r
Phi/Rho2
Carry
DDeltaDvol
Speed
Strike Delta
Strike gamma
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Writer Extendible Option [Loxx]These options can be exercised at their initial maturity date /I but are extended to T2 if the option is out-of-the-money at ti. The payoff from a writer-extendible call option at time T1 (T1 < T2) is (via "The Complete Guide to Option Pricing Formulas")
c(S, X1, X2, t1, T2) = (S - X1) if S>= X1 else cBSM(S, X2, T2-T1)
and for a writer-extendible put is
c(S, X1, X2, T1, T2) = (X1 - S) if S< X1 else pBSM(S, X2, T2-T1)
Writer-Extendible Call
c = cBSM(S, X1, T1) + Se^(b-r)T2 * M(Z1, -Z2; -p) - X2e^-rT2 * M(Z1 - vT^0.5, -Z2 + vT^0.5; -p)
Writer-Extendible Put
p = cBSM(S, X1, T1) + X2e^-rT2 * M(-Z1 + vT^0.5, Z2 - vT^0.5; -p) - Se^(b-r)T2 * M(-Z1, Z2; -p)
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
Asset price ( S )
Initial strike price ( X1 )
Extended strike price ( X2 )
Initial time to maturity ( t1 )
Extended time to maturity ( T2 )
Risk-free rate ( r )
Cost of carry ( b )
Volatility ( s )
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Numerical Greeks Output
Delta
Elasticity
Gamma
DGammaDvol
GammaP
Vega
DvegaDvol
VegaP
Theta (1 day)
Rho
Rho futures option
Phi/Rho2
Carry
DDeltaDvol
Speed
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Reset Strike Options-Type 1 [Loxx]In a reset call (put) option, the strike is reset to the asset price at a predetermined future time, if the asset price is below (above) the initial strike price. This makes the strike path-dependent. The payoff for a call at maturity is equal to max((S-X)/X, 0) where is equal to the original strike X if not reset, and equal to the reset strike if reset. Similarly, for a put, the payoff is max((X-S)/X, 0) Gray and Whaley (1997) x have derived a closed-form solution for such an option. For a call, we have
c = e^(b-r)(T2-T1) * N(-a2) * N(z1) * e^(-rt1) - e^(-rT2) * N(-a2)*N(z2) - e^(-rT2) * M(a2, y2; p) + (S/X) * e^(b-r)T2 * M(a1, y1; p)
and for a put,
p = e^(-rT2) * N(a2) * N(-z2) - e^(b-r)(T2-T1) * N(a2) * N(-z1) * e^(-rT1) + e^(-rT2) * M(-a2, -y2; p) - (S/X) * e^(b-r)T2 * M(-a1, -y1; p)
where b is the cost-of-carry of the underlying asset, a is the volatil- ity of the relative price changes in the asset, and r is the risk-free interest rate. X is the strike price of the option, r the time to reset (in years), and T is its time to expiration. N(x) and M(a, b; p) are, respec- tively, the univariate and bivariate cumulative normal distribution functions. The remaining parameters are p = (T1/T2)^0.5 and
a1 = (log(S/X) + (b+v^2/2)T1) / vT1^0.5 ... a2 = a1 - vT1^0.5
z1 = (b+v^2/2)(T2-T1)/v(T2-T1)^0.5 ... z2 = z1 - v(T2-T1)^0.5
y1 = log(S/X) + (b+v^2)T2 / vT2^0.5 ... y2 = y1 - vT2^0.5
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
Asset price ( S )
Initial strike price ( X1 )
Extended strike price ( X2 )
Initial time to maturity ( t1 )
Extended time to maturity ( T2 )
Risk-free rate ( r )
Cost of carry ( b )
Volatility ( s )
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Numerical Greeks Ouput
Delta
Elasticity
Gamma
DGammaDvol
GammaP
Vega
DvegaDvol
VegaP
Theta (1 day)
Rho
Rho futures option
Phi/Rho2
Carry
DDeltaDvol
Speed
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Fade-in Options [Loxx]A fade-in call has the same payoff as a standard call except the size of the payoff is weighted by how many fixings the asset price were inside a predefined range (L, U). If the asset price is inside the range for every fixing, the payoff will be identical to a plain vanilla option. More precisely, for a call option, the payoff will be max(S(T) - X, 0) X 1/n Sum(n(i)), where n is the total number of fixings and n(i) = 1 if at fixing i the asset price is inside the range, and n(i) = 0 otherwise. Similarly, for a put, the payoff is max(X - S(T), 0) X 1/n Sum(n(i)).
Brockhaus, Ferraris, Gallus, Long, Martin, and Overhaus (1999) describe a closed-form formula for fade-in options. For a call the value is given by
max(X - S(T), 0) X 1/n Sum(n(i))
describe a closed-form formula for fade-in options. For a call the value is given by
c = 1/n * Sum(S^((b-r)*T) * (M(-d5, d1; -p) - M(-d3, d1; -p)) - Xe^(-rT) * (M(-d6, d2; -p) - M(-d4, d2; -p))
where n is the number of fixings, p = (t1^0.5/T^0.5), t1 = iT/n
d1 = (log(S/X) + (b + v^2/2)*T) / (v * T^0.5) ... d2 = d1 - v*T^0.5
d3 = (log(S/L) + (b + v^2/2)*t1) / (v * t1^0.5) ... d4 = d3 - v*t1^0.5
d5 = (log(S/U) + (b + v^2/2)*t1) / (v * t1^0.5) ... d6 = d5 - v*t1^0.5
The value of a put is similarly
p = 1/n * Sum(Xe^(-rT) * (M(-d6, -d2; -p) - M(-d4, -d2; -p))) - S^((b-r)*T) * (M(-d5, -d1; -p) - M(-d3, -d1; -p)
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
Asset price ( S )
Strike price ( K )
Lower barrier ( L )
Upper barrier ( U )
Time to maturity ( T )
Risk-free rate ( r )
Cost of carry ( b )
Volatility ( s )
Fixings ( n )
cnd1(x) = Cumulative Normal Distribution
nd(x) = Standard Normal Density Function
cbnd3() = Cumulative Bivariate Distribution
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Log Contract Ln(S/X) [Loxx]A log contract, first introduced by Neuberger (1994) and Neuberger (1996), is not strictly an option. It is, however, an important building block in volatility derivatives (see Chapter 6 as well as Demeterfi, Derman, Kamal, and Zou, 1999). The payoff from a log contract at maturity T is simply the natural logarithm of the underlying asset divided by the strike price, ln(S/ X). The payoff is thus nonlinear and has many similarities with options. The value of this contract is (via "The Complete Guide to Option Pricing Formulas")
L = e^(-r * T) * (log(S/X) + (b-v^2/2)*T)
The delta of a log contract is
delta = (e^(-r*T) / S)
and the gamma is
gamma = (e^(-r*T) / S^2)
Inputs
S = Stock price.
K = Strike price of option.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = Variance of the underlying asset price
cnd1(x) = Cumulative Normal Distribution
nd(x) = Standard Normal Density Function
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Log Option [Loxx]A log option introduced by Wilmott (2000) has a payoff at maturity equal to max(log(S/X), 0), which is basically an option on the rate of return on the underlying asset with strike log(X). The value of a log option is given by: (via "The Complete Guide to Option Pricing Formulas")
e^−rT * n(d2)σ√(T − t) + e^−rT*(log(S/K) + (b −σ^2/2)T) * N(d2)
where N(*) is the cumulative normal distribution function, n(*) is the normal density function, and
d = ((log(S/X) + (b - v^2/2)*T) / (v*T^0.5)
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
S = Stock price.
K = Strike price of option.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = Variance of the underlying asset price
cnd1(x) = Cumulative Normal Distribution
nd(x) = Standard Normal Density Function
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Log Contract Ln(S) [Loxx]A log contract, first introduced by Neuberger (1994) and Neuberger (1996), is not strictly an option. It is, however, an important building block in volatility derivatives (see Chapter 6 as well as Demeterfi, Derman, Kamal, and Zou, 1999). The payoff from a log contract at maturity T is simply the natural logarithm of the underlying asset divided by the strike price, ln(S/ X). The payoff is thus nonlinear and has many similarities with options. The value of this contract is (via "The Complete Guide to Option Pricing Formulas")
L = e^(-r * T) * (log(S/X) + (b-v^2/2)*T)
The delta of a log contract is
delta = (e^(-r*T) / S)
and the gamma is
gamma = (e^(-r*T) / S^2)
An even simpler version of the log contract is when the payoff simply is ln(S). The payoff is clearly still nonlinear in the underlying asset. It follows that the value of this contract is:
L = e^(-r * T) * (log(S) + (b-v^2/2)*T)
The theta/time decay of a log contract is
theta = - 1/T * v^2
and its exposure to the stock price, delta, is
delta = - 2/T * 1/S
This basically tells you that you need to be long stocks to be delta- neutral at any time. Moreover, the gamma is
gamma = 2 / (T * S^2)
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
S = Stock price.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = volatility of the underlying asset price
cnd1(x) = Cumulative Normal Distribution
nd(x) = Standard Normal Density Function
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Powered Option [Loxx]At maturity, a powered call option pays off max(S - X, 0)^i and a put pays off max(X - S, 0)^i . Esser (2003 describes how to value these options (see also Jarrow and Turnbull, 1996, Brockhaus, Ferraris, Gallus, Long, Martin, and Overhaus, 1999). (via "The Complete Guide to Option Pricing Formulas")
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
S = Stock price.
K = Strike price of option.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = volatility of the underlying asset price
i = power
cnd1(x) = Cumulative Normal Distribution
nd(x) = Standard Normal Density Function
combin(x) = Combination function, calculates the number of possible combinations for two given numbers
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Capped Standard Power Option [Loxx]Power options can lead to very high leverage and thus entail potentially very large losses for short positions in these options. It is therefore common to cap the payoff. The maximum payoff is set to some predefined level C. The payoff at maturity for a capped power call is min . Esser (2003) gives the closed-form solution: (via "The Complete Guide to Option Pricing Formulas")
c = S^i * (e^((i - 1) * (r + i*v^2 / 2) - i * (r - b))*T) * (N(e1) - N(e3)) - e^(-r*T) * (X*N(e2) - (C + X) * N(e4))
while the value of a put is
e1 = (log(S/X^(1/i)) + (b + (i - 1/2)*v^2)*T) / v*T^0.5
e3 = (log(S/(C + X)^(1/i)) + (b + (i - 1/2)*v^2)*T) / v*T^0.5
e4 = e3 - i * v * T^0.5
In the case of a capped power put, we have
p = e^(-r*T) * (X*N(-e2) - (C + X) * N(-e4)) - S^i * (e^((i - 1) * (r + i*v^2 / 2) - i * (r - b))*T) * (N(-e1) - N(-e3))
where e1 and e2 is as before. e3 and e4 has to be changed to
e3 = (log(S/(X - C)^(1/i)) + (b + (i - 1/2)*v^2)*T) / v*T^0.5
e4 = e3 - i * v * T^0.5
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
S = Stock price.
K = Strike price of option.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = Variance of the underlying asset price
i = power
c = Capped on pay off
cnd1(x) = Cumulative Normal Distribution
nd(x) = Standard Normal Density Function
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Standard Power Option [Loxx]Standard power options (aka asymmetric power options) have nonlinear payoff at maturity. For a call, the payoff is max(S^i - X, 0), and for a put, it is max(X - S^i , 0), where i is some power (i > 0). The value of this power call is given by (see Heynen and Kat, 1996c; Zhang, 1998; and Esser, 2003). (via "The Complete Guide to Option Pricing Formulas")
c = S^i * (e^((i - 1) * (r + i*v^2 / 2) - i * (r - b))*T) * N(d1) - X*e^(-r*T) * N(d2)
while the value of a put is
p = X*e^(-r*T) * N(-d2) - S^i * (e^((i - 1) * (r + i*v^2 / 2) - i * (r - b))*T) * N(-d1)
where
d1 = (log(S/X^(1/i)) + (b + (i - 1/2)*v^2)*T) / v*T^0.5
d2 = d1 - i * v * T^0.5
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
S = Stock price.
K = Strike price of option.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = Variance of the underlying asset price
pwr = power
cnd1(x) = Cumulative Normal Distribution
nd(x) = Standard Normal Density Function
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Power Contract [Loxx]There are two main categories of power options. Standard power options' payoff depends on the price of the underlying asset raised to some power. For powered options, the "standard" payoff (stock price in excess of the exercise price) is raised to some power.
A power contract is a simple derivative instrument paying (S/ X)^i at maturity, where i is some fixed power. The value of such a power contract is given by Shaw (1998) as: (via "The Complete Guide to Option Pricing Formulas")
VPower = (S/X)^i * e^((b-v^2)/2)*i - r + i^2 * v^2/2)*T
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
S = Stock price.
K = Strike price of option.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = Variance of the underlying asset price
lambda = Jump rate per year
cnd1(x) = Cumulative Normal Distribution
nd(x) = Standard Normal Density Function
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Moneyness Options [Loxx]A moneyness option is basically a plain vanilla option where the strike is set to a percentage of the future/forward price. For example, a 120% moneyness call would have a strike equal to 120% of the forward price. A 120% moneyness put would have a spot equal to 120% of the strike. The value of this option is given in percent of the forward. The value of a moneyness call or put is thus given by: (via "The Complete Guide to Option Pricing Formulas")
c = p = c^-rT * (N(d1) - LN(d2))
where L = X/F for a call and L = F/X for a put, and
d1 = (-log(L) + v^2*T/2) / (v*T^0.5)
d2 = d1 - (v*T^0.5)
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
S = Stock price.
K = Strike price of option.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = Variance of the underlying asset price
lambda = Jump rate per year
cnd1(x) = Cumulative Normal Distribution
nd(x) = Standard Normal Density Function
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Forward Start Options [Loxx]A forward start option with time to maturity T starts at-the-money or proportionally in- or out-of-the-money after a known elapsed time t in the future. The strike is set equal to a positive constant a times the asset price S after the known time t. If a is less than unity, the call (put) will start 1 - a percent in-the-money (out-of-the- money); if a is unity, the option will start at-the-money; and if a is larger than unity, the call (put) will start a - 1 percentage out-of-the- money (in-the-money).A forward start option can be priced using the Rubinstein (1990) formula: (via "The Complete Guide to Option Pricing Formulas")
c = S*e^(b-r)t * (e^(b-r)(T-t) * N(d1)) - alpha * e^-r(T-t) * N(d2))
p = S*e^(b-r)t * (alpha*e^r(T-t) * N(-d2)) - e^-(b-r)(T-t) * N(-d1))
where
d1 = (log(1/alpha) + (b + v^2/2)(T-1))/v*(T-t)^0.5
d2 = d1 - v*(T-t)^0.5
Application
Employee options are often of the forward starting type. Ratchet options (aka cliquet options) consist of a series of forward starting options.
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
S = Stock price.
a = Alpha
T1 = Time to forward start
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
v = volatility of the underlying asset price
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Executive Stock Options [Loxx]The Jennergren and Naslund (1993) formula takes into account that an employee or executive often loses her options if she has to leave the company before the option's expiration: (via "The Complete Guide to Option Pricing Formulas")
c = e^(-lambda*T) * (Se^((b-r)T) * N(d1) - Xe^-rT * N(d2))
p = e^(-lambda*T) * (Xe^(-rT) * N(-d2) - Se^(b-r)T * N(-d1))
where
d1 = (log(S/X) + (b + v^2/2)T) / vT^0.5
d2 = d1 - vT^0.5
lambda is the jump rate per year. The value of the executive option equals the ordinary Black-Scholes option price multiplied by the probability e —AT that the executive will stay with the firm until the option expires.
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
S = Stock price.
K = Strike price of option.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = Variance of the underlying asset price
lambda = Jump rate per year
cnd1(x) = Cumulative Normal Distribution
nd(x) = Standard Normal Density Function
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Variable Purchase Options [Loxx]Handley (2001) describes how to value variable purchase options (VPO). A VPO is basically a call option, but where the number of underlying shares is stochastic rather than fixed, or more precisely, a deterministic function of the asset price. The strike price of a VPO is typically a fixed discount to the underlying share price at maturity. The payoff at maturity is equal to max , where N is the number of shares. VPOs may be an interesting tool for firms that need to raise capital relatively far into the future at a given time. The number of underlying shares N is decided on at maturity and is equal to
N = X / St(1 -D)
where X is the strike price, ST is the asset price at maturity, and D is the fixed discount expressed as a proportion 0 > D < 1. The number of shares is in this way a deterministic function of the asset price. Further, the number of shares is often subjected to a minimum and maximum. In this case, we will limit the minimum number of shares to Nmin = X / U(1 -D) if, the asset price at maturity is above a predefined level U at maturity. Similarly, we will reach the maximum number of shares A T = x if the stock price at maturity is equal Nmax = X / L(1 -D) or lower than a predefined level L. Based on Handley (2001), we get the following closed-form solution: (via "The Complete Guide to Option Pricing Formulas")
c = XD / 1-D e^-rT + Nmin(Se^(b-r)T * N(d1) - Ue^-rT * N(d2))
- Nmax(Le^-rT * N(-d4) - Se^(b-r)T * N(-d3))
+ Nmax(L(1-D)e^-rT * N(-d6) - Se^(b-r)T * N(-d5))
where
d1 = (log(S/U) + (b+v^2/2)T) / vT^0.5 ... d2 = d1 - vT^0.5
d3 = (log(S/L) + (b+v^2/2)T) / vT^0.5 ... d4 = d3 - vT^0.5
d5 = (log(S/L(1-D)) + (b+v^2/2)T) / vT^0.5 ... d6 = d5 - vT^0.5
Inputs
Asset price (S)
Strike price (K)
Discount %
Lower bound
Upper bound
Time to maturity
Risk-free rate (r) %
Cost of carry (b) %
Volatility (v) %
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
Perpetual American Options [Loxx]Perpetual American Options is Perpetual American Options pricing model. This indicator also includes numerical greeks.
American Perpetual Options
While there in general is no closed-form solution for American options (except for non-dividend-paying stock call options) it is possible to find a closed-form solution for options with an infinite time to expiration. The reason is that the time to expiration will always be the same: infinite. The time to maturity, therefore, does not depend on at what point in time we look at the valuation problem, which makes the valuation problem independent of time McKean (1965) and Merton (1973) gives closed-form solutions for American perpetual options. For a call option we have
c = (X / (y1 - 1)) * ((y1 - 1)/y1 * S/X)^y1
where
y1 = 1/2 - b/v^2 + ((b/v^2 - 1/2)^2 + 2*r/v^2)^0.5
If b >= r, then there is never optimal to exercise a call option. In the case of an American perpetual put, we have
p = X/(1-y2) * (((y2 - 1) / y2) * S/X)^y2
where
y2 = 1/2 - b/v^2 - ((b/v^2 - 1/2)^2 + 2*r/v^2)^0.5
In practice, one can naturally discuss if there is such a thing as infinite time to maturity. For instance, credit risk could play an important role: Even when you are buying an option from an AAA bank, there is no guarantee the bank will be around forever.
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
S = Stock price.
K = Strike price of option.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = Variance of the underlying asset price
cnd1(x) = Cumulative Normal Distribution
cbnd3(x) = Cumulative Bivariate Normal Distribution
nd(x) = Standard Normal Density Function
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
American Approximation Bjerksund & Stensland 2002 [Loxx]American Approximation Bjerksund & Stensland 2002 is an American Options pricing model. This indicator also includes numerical greeks. You can compare the output of the American Approximation to the Black-Scholes-Merton value on the output of the options panel.
The Bjerksund & Stensland (2002) Approximation
The Bjerksund and Stensland (2002) approximation divides the time to maturity into two parts, each with a separate flat exercise boundary. It is thus a straightforward generalization of the Bjerksund-Stensland 1993 algorithm. The method is fast and efficient and should be more accurate than the Barone-Adesi and Whaley (1987) and the Bjerksund and Stensland (1993b) approximations. The algorithm requires an accurate cumulative bivariate normal approximation. Several approximations that are described in the literature are not sufficiently accurate, but the Genze algorithm works.
C = alpha2*S^B - alpha2*phi(S, t1, B, I2, I2)
+ phi(S, t1, I2, I2) - phi(S, t1, I, I1, I2)
- X*phi(S, t1, 0, I2, I2) + X*phi(S, t1, 0, I1, I2)
+ alpha1*phi(X, t1, B, I1, I2) - alpha1*psi*St, T, B, I1, I2, I1, t1)
+ psi(S, T, 1, I1, I2, I1, t1) - psi(S, T, 1, X, I2, I1, t1)
- X*psi(S, T, 0, I1, I2, I1, t1) + psi(S, T, 0 ,X, I2, I1, t1)
where
alpha1 = (I1 - X)*I1^-B
alpha2 = (I2 - X)*I2^-B
B = (1/2 - b/v^2) + ((b/v^2 - 1/2)^2 + 2*(r/v^2))^0.5
The function psi(S, T, y, H, I) is given by
psi(S, T, gamma, H, I) = e^lambda * S^gamma * (N(-d) - (I/S)^k * N(-d2))
d = (log(S/H) + (b + (gamma - 1/2) * v^2) * T) / (v * T^0.5)
d2 = (log(I^2/(S*H)) + (b + (gamma - 1/2) * v^2) * T) / (v * T^0.5)
lambda = -r + gamma * b + 1/2 * gamma * (gamma - 1) * v^2
k = 2*b/v^2 + (2 * gamma - 1)
and the trigger price I is defined as
I1 = B0 + (B(+infi) - B0) * (1 - e^h1)
I2 = B0 + (B(+infi) - B0) * (1 - e^h2)
h1 = -(b*t1 + 2*v*t1^0.5) * (X^2 / ((B(+infi) - B0))*B0)
h2 = -(b*T + 2*v*T^0.5) * (X^2 / ((B(+infi) - B0))*B0)
t1 = 1/2 * (5^0.5 - 1) * T
B(+infi) = (B / (B - 1)) * X
B0 = max(X, (r / (r - b)) * X)
Moreover, the function psi(S, T, gamma, H, I2, I1, t1) is given by
psi(S, T, gamma, H, I2, I1, t1, r, b, v) = e^(lambda * T) * S^gamma * (M(-e1, -f1, rho) - (I2/S)^k * M(-e2, -f2, rho)
- (I1/S)^k * M(-e3, -f3, -rho) + (I1/I2)^k * M(-e4, -f4, -rho))
where (see screenshot for e and f values)
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
S = Stock price.
K = Strike price of option.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = Variance of the underlying asset price
cnd1(x) = Cumulative Normal Distribution
cbnd3(x) = Cumulative Bivariate Normal Distribution
nd(x) = Standard Normal Density Function
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
American Approximation Bjerksund & Stensland 1993 [Loxx]American Approximation Bjerksund & Stensland 1993 is an American Options pricing model. This indicator also includes numerical greeks. You can compare the output of the American Approximation to the Black-Scholes-Merton value on the output of the options panel.
The Bjerksund and Stensland (1993) approximation can be used to price American options on stocks, futures, and currencies. The method is analytical and extremely computer-efficient. Bjerksund and Stensland's approximation is based on an exercise strategy corresponding to a flat boundary / (trigger price). Numerical investigation indicates that the Bjerksund and Stensland model is somewhat more accurate for long-term options than the Barone-Adesi and Whaley model. (The Complete Guide to Option Pricing Formulas)
C = alpha * X^beta - alpha Ø(S, T, beta, I, I) + Ø(S, T, I, I, I) - Ø(S, T, I, X, I) - XØ(S, T, 0, I, I) + XØ(S, T, 0, X, I)
where
alpha = (1 - X) * I^-beta
beta = (1/2 - b/v^2) + ((b/v^2 - 1/2)^2 + 2*(r/v^2))^0.5
The function Ø(S, T, y, H, I) is given by
Ø(S, T, gamma, H, I) = e^lambda * S^gamma * (N(d) - (I/S)^k * N(d - (2 * log(I/S)) / v*T^0.5))
lambda = (-r + gamma * b + 1/2 * gamma(gamma - 1) * v^2) * T
d = (log(S/H) + (b + (gamma - 1/2) * v^2) * T) / (v * T^0.5)
k = 2*b/v^2 + (2 * gamma - 1)
and the trigger price I is defined as
I = B0 + (B(+infi) - B0) * (1 - e^h(T))
h(T) = -(b*T + 2*v*T^0.5) * (B0 / (B(+infi) - B0))
B(+infi) = (B / (B - 1)) * X
B0 = max(X, (r / (r - b)) * X)
If s > I, it is optimal to exercise the option immediately, and the value must be equal to the intrinsic value of S - X. On the other hand, if b > r, it will never be optimal to exercise the American call option before expiration, and the value can be found using the generalized BSM formula. The value of the American put is given by the Bjerksund and Stensland put-call transformation
P(S, X, T, r, b, v) = C(X, S, T, r -b, -b, v)
where C(*) is the value of the American call with risk-free rate r - b and drift -b. With the use of this transformation, it is not necessary to develop a separate formula for an American put option.
b=r options on non-dividend paying stock
b=r-q options on stock or index paying a dividend yield of q
b=0 options on futures
b=r-rf currency options (where rf is the rate in the second currency)
Inputs
S = Stock price.
K = Strike price of option.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = Variance of the underlying asset price
cnd1(x) = Cumulative Normal Distribution
cbnd3(x) = Cumulative Bivariate Normal Distribution
nd(x) = Standard Normal Density Function
convertingToCCRate(r, cmp ) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen
American Approximation: Barone-Adesi and Whaley [Loxx]American Approximation: Barone-Adesi and Whaley is an American Options pricing model. This indicator also includes numerical greeks. You can compare the output of the American Approximation to the Black-Scholes-Merton value on the output of the options panel.
An American option can be exercised at any time up to its expiration date. This added freedom complicates the valuation of American options relative to their European counterparts. With a few exceptions, it is not possible to find an exact formula for the value of American options. Several researchers have, however, come up with excellent closed-form approximations. These approximations have become especially popular because they execute quickly on computers compared to numerical techniques. At the end of the chapter, we look at closed-form solutions for perpetual American options.
The Barone-Adesi and Whaley Approximation
The quadratic approximation method by Barone-Adesi and Whaley (1987) can be used to price American call and put options on an underlying asset with cost-of-carry rate b. When b > r, the American call value is equal to the European call value and can then be found by using the generalized Black-Scholes-Merton (BSM) formula. The model is fast and accurate for most practical input values.
American Call
C(S, C, T) = Cbsm(S, X, T) + A2 / (S/S*)^q2 ... when S < S*
C(S, C, T) = S - X ... when S >= S*
where Cbsm(S, X, T) is the general Black-Scholes-Merton call formula, and
A2 = S* / q2 * (1 - e^((b - r) * T)) * N(d1(S*)))
d1(S) = (log(S/X) + (b + v^2/2) * T) / (v * T^0.5)
q2 = (-(N-1) + ((N-1)^2 + 4M/K))^0.5) / 2
M = 2r/v^2
N = 2b/v^2
K = 1 - e^(-r*T)
American Put
P(S, C, T) = Pbsm(S, X, T) + A1 / (S/S**)^q1 ... when S < S**
P(S, C, T) = X - S .... when S >= S**
where Pbsm(S, X, T) is the generalized BSM put option formula, and
A1 = -S** / q1 * (1 - e^((b - r) * T)) * N(-d1(S**)))
q1 = (-(N-1) - ((N-1)^2 + 4M/K))^0.5) / 2
where S* is the critical commodity price for the call option that satisfies
S* - X = c(S*, X, T) + (1 - e^((b - r) * T) * N(d1(S*))) * S* * 1/q2
These equations can be solved by using a Newton-Raphson algorithm. The iterative procedure should continue until the relative absolute error falls within an acceptable tolerance level. See code for details on the Newton-Raphson algorithm.
Inputs
S = Stock price.
K = Strike price of option.
T = Time to expiration in years.
r = Risk-free rate
c = Cost of Carry
V = Variance of the underlying asset price
cnd1(x) = Cumulative Normal Distribution
cbnd3(x) = Cumulative Bivariate Normal Distribution
nd(x) = Standard Normal Density Function
convertingToCCRate(r, cmp) = Rate compounder
Numerical Greeks or Greeks by Finite Difference
Analytical Greeks are the standard approach to estimating Delta, Gamma etc... That is what we typically use when we can derive from closed form solutions. Normally, these are well-defined and available in text books. Previously, we relied on closed form solutions for the call or put formulae differentiated with respect to the Black Scholes parameters. When Greeks formulae are difficult to develop or tease out, we can alternatively employ numerical Greeks - sometimes referred to finite difference approximations. A key advantage of numerical Greeks relates to their estimation independent of deriving mathematical Greeks. This could be important when we examine American options where there may not technically exist an exact closed form solution that is straightforward to work with. (via VinegarHill FinanceLabs)
Things to know
Only works on the daily timeframe and for the current source price.
You can adjust the text size to fit the screen