> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rails.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Pricing & Greeks

The formulas Rails uses to price options and compute Greeks. For a conceptual overview,
see the [Pricing & Greeks](/latest/options/guides/pricing-and-greeks) guide.

## Notation

| Symbol | Meaning                                                                 |
| ------ | ----------------------------------------------------------------------- |
| `F`    | Forward price of the underlying                                         |
| `S`    | Index price of the underlying                                           |
| `K`    | Strike price                                                            |
| `σ`    | Volatility (implied volatility, annualized as a decimal — `0.55` = 55%) |
| `r`    | Annualized risk-free rate                                               |
| `T`    | Time to expiry, in years                                                |
| `N(x)` | Standard normal cumulative distribution function (CDF)                  |
| `φ(x)` | Standard normal probability density function (PDF)                      |
| `V`    | Option price                                                            |

## Price (Black-76)

Rails prices options with the **Black-76** model, which prices on the forward `F` rather
than spot.

| Term | Formula                                     |
| ---- | ------------------------------------------- |
| `d1` | `[ ln(F / K) + (σ² / 2) · T ] / (σ · √T)`   |
| `d2` | `d1 − σ · √T`                               |
| Call | `V = e^(−rT) · [ F · N(d1) − K · N(d2) ]`   |
| Put  | `V = e^(−rT) · [ K · N(−d2) − F · N(−d1) ]` |

<Note>
  To go the other way — from a market price `V` to its implied volatility `σ` — invert this
  model numerically (solve for the `σ` that reproduces `V`), then feed `σ` into the Greeks below.
</Note>

## Greeks

| Greek | Formula                                              | Notes                          |
| ----- | ---------------------------------------------------- | ------------------------------ |
| Delta | Call: `e^(−rT) · N(d1)`  ·  Put: `−e^(−rT) · N(−d1)` | Per `1` change in `F`          |
| Gamma | `e^(−rT) · φ(d1) / (F · σ · √T)`                     | Same for calls and puts        |
| Vega  | `e^(−rT) · F · φ(d1) · √T`                           | Per `1.0` (100%) change in `σ` |
| Theta | `−[ e^(−rT) · F · φ(d1) · σ ] / (2 · √T)  +  r · V`  | Per year                       |
| Rho   | `−T · V`                                             | Per `1.0` (100%) change in `r` |

## Normalization

The raw formulas above are normalized before they are published on the
[Contracts Stream](/latest/options/websocket-api/contracts-stream) and REST responses:

| Greek | Published as           | Conversion  |
| ----- | ---------------------- | ----------- |
| Vega  | Per **1%** IV change   | raw `÷ 100` |
| Theta | **Daily** decay        | raw `÷ 365` |
| Rho   | Per **1%** rate change | raw `÷ 100` |

Delta and gamma are published as computed.

## Expected Price Move

The expected move of the index price by an expiry, published per expiry as
`expectedPriceMove` on the [Contracts Stream](/latest/options/websocket-api/contracts-stream)
and from [Get Expirations](/latest/options/rest-api/get-expirations).

| Term          | Formula      |
| ------------- | ------------ |
| Expected move | `S · σ · √T` |

`σ` is the expiry's at-the-money implied volatility, published as `atmIV` — its IV curve
interpolated at the forward `F`. The result is one standard deviation, so roughly 68% of
outcomes fall within that distance of `S`.
