RicardoSantos

FunctionBlackScholes

RicardoSantos Wizard Updated   
Library "FunctionBlackScholes"
Some methods for the Black Scholes Options Model, which demonstrates several approaches to the valuation of a European call.


// reference:
// people.math.sc.edu/B...s/black_scholes.html
// people.math.sc.edu/B...les/black_scholes.py

asset_path(s0, mu, sigma, t1, n) Simulates the behavior of an asset price over time.
  Parameters:
    s0: float, asset price at time 0.
    mu: float, growth rate.
    sigma: float, volatility.
    t1: float, time to expiry date.
    n: int, time steps to expiry date.
  Returns: option values at each equal timed step (0 -> t1)

binomial(s0, e, r, sigma, t1, m) Uses the binomial method for a European call.
  Parameters:
    s0: float, asset price at time 0.
    e: float, exercise price.
    r: float, interest rate.
    sigma: float, volatility.
    t1: float, time to expiry date.
    m: int, time steps to expiry date.
  Returns: option value at time 0.

bsf(s0, t0, e, r, sigma, t1) Evaluates the Black-Scholes formula for a European call.
  Parameters:
    s0: float, asset price at time 0.
    t0: float, time at which the price is known.
    e: float, exercise price.
    r: float, interest rate.
    sigma: float, volatility.
    t1: float, time to expiry date.
  Returns: option value at time 0.

forward(e, r, sigma, t1, nx, nt, smax) Forward difference method to value a European call option.
  Parameters:
    e: float, exercise price.
    r: float, interest rate.
    sigma: float, volatility.
    t1: float, time to expiry date.
    nx: int, number of space steps in interval (0, L).
    nt: int, number of time steps.
    smax: float, maximum value of S to consider.
  Returns: option values for the european call, float array of size ((nx-1) * (nt+1)).

mc(s0, e, r, sigma, t1, m) Uses Monte Carlo valuation on a European call.
  Parameters:
    s0: float, asset price at time 0.
    e: float, exercise price.
    r: float, interest rate.
    sigma: float, volatility.
    t1: float, time to expiry date.
    m: int, time steps to expiry date.
  Returns: confidence interval for the estimated range of valuation.
Release Notes:
v2 fixed some issues.
Pine library

In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in a publication is governed by House Rules.

Disclaimer

The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Want to use this library?

Copy the following line and paste it in your script.