Source: https://guthlabs.ai/docs/instruments/black-scholes-option-price-educational/implementation/

instrument implementation / implementation-contract

# Black-Scholes Option Price (Educational) implementation

A source-bound implementation contract for Black-Scholes Option Price (Educational); deployment and executable qualification remain separate.

Status: **VERIFIED_CLEAN**Lifecycle: **implementation-contract**

## Binding contract

This record describes what an executable surface must bind and validate. It does not claim that a public calculator, package, or production route is deployed.

**Record owner**: Guth Instruments

**Lifecycle**: verified-clean

**Evidence ID**: t6-081

**Effect**: Computation or source lookup only

## Input and validation requirements

- Division by zero or undefined logarithm behavior occurs when t<=0, sigma<=0, S<=0, or K<=0.

- If r, sigma, or t are entered in percentages, monthly units, or days without conversion, outputs are wrong; the interface should enforce or clearly display decimal annual units.

- The option type must be constrained to call or put, with an explicit formula for each.

- Theta sign and time convention must be stated; the supplied output name does not define whether theta is per year or per day.

- Vega scaling must be stated because some systems report per unit volatility while others report per 1 percentage point.

- The model assumes European exercise, no transaction costs, frictionless markets, constant volatility and interest rate, and no dividends unless q is added.

- At or near expiry, numerical CDF and greek calculations can be unstable; price should use an expiry boundary rule and greeks should be labeled undefined or given an explicit convention.

## Required corrections

No binding erratum is attached to this unique-name record. Implementers must still preserve the declared units, domain, and failure behavior.

## Inspectable interface fixture

The sample below is evidence for interface and validation tests, not a production implementation.

````
{
  "inputs": {
    "spot": 100,
    "strike": 100,
    "rate": 0,
    "volatility": 0.2,
    "time_to_expiry_years": 1,
    "type": "call"
  },
  "expected_outputs": {
    "d1": 0.1,
    "d2": -0.1,
    "price": 7.965567,
    "delta": 0.539828,
    "gamma": 0.0198476,
    "theta_per_year": -3.96953,
    "vega_per_volatility_unit": 39.6953
  },
  "working": "sqrt(t)=sqrt(1)=1. sigma*sqrt(t)=0.2. d1=(ln(100/100)+(0+0.2^2/2)*1)/0.2=(0+0.02)/0.2=0.1. d2=0.1-0.2=-0.1. Using N(0.1)=0.539827837 and N(-0.1)=0.460172163: price=100*0.539827837-100*e^0*0.460172163=53.9827837-46.0172163=7.9655674. phi(0.1)=0.396952547. delta=N(d1)=0.539827837. gamma=phi(d1)/(S*sigma*sqrt(t))=0.396952547/(100*0.2*1)=0.0198476274. vega=S*phi(d1)*sqrt(t)=100*0.396952547*1=39.6952547. theta=-S*phi(d1)*sigma/(2*sqrt(t))-r*K*e^(-r*t)*N(d2)=-(100*0.396952547*0.2/2)-0=-3.96952547."
}
````

## Other records

[01**Overview**](<https://guthlabs.ai/docs/instruments/black-scholes-option-price-educational/>)[02**Mechanism**](<https://guthlabs.ai/docs/instruments/black-scholes-option-price-educational/mechanism/>)[04**Qualification**](<https://guthlabs.ai/docs/instruments/black-scholes-option-price-educational/qualification/>)

## Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

- `VERIFIED_LEDGER.json`

- `evidence-tranche6/tranche6-results.json`
