Api Endpoint

BSM Price+Greeks

When to use: you already have model inputs (S or forward mark, K, T, r, σ) and need fair value + hedge ratios — not market-premium IV. European BSM price + analytic Greeks (delta, gamma, vega, theta, rho). Works for equity spots and power/commodity forwards (use the maturity mark as spot). USDC exact on Solana/Base. Free fixed sample: GET /v1/demo/option-price.

Open interactive test console

Offering

Provider
derivatives-pricer-production.up.railway.app
Method
POST
Offering type
Api Endpoint
Transport type
http
Category
Financial Analysis
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://derivatives-pricer-production.up.railway.app/v1/option/price
MIME type
Not provided
First seen
2026-10-16T01:50:45.949Z
Last seen
Tags
options, black-scholes, greeks, multi-chain, USDC

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.01 USDC
Atomic price: 10000 · Network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp · Asset: USDC · Scheme: exact
Payment option 2
0.01 USDC
Atomic price: 10000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
    "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
    "amount": "10000",
    "payTo": "DCi9X5mmacNGLeJvCw9fdWgX3G8V4QquDn4EuXATkcYr"
  },
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "10000",
    "payTo": "0x34cfb8bdbf16e4484b7da0ed31deed5771b16c8f"
  }
]

Observed health

Status
Healthy
Latest latency
130 ms
Average latency
112 ms
HTTP status
204
Last checked
Reachability
100% over 15 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "additionalProperties": false,
  "properties": {
    "body": {
      "additionalProperties": false,
      "description": "European (default) or American option fair value. Legacy bodies use timeToExpiry year-fractions. Optional forwardStart+expiration (ISO-8601 with Z/offset) define a vol/exercise window; τ = years in that window (ACT/365.25), not calendar time from purchase. Not a swing/multi-exercise engine.",
      "properties": {
        "dividendYield": {
          "description": "Continuous dividend / convenience / yield q (≥ 0, default 0).",
          "examples": [
            0,
            0.02
          ],
          "minimum": 0,
          "type": "number"
        },
        "expiration": {
          "description": "ISO-8601 end of vol/exercise window. Mutually exclusive with timeToExpiry.",
          "format": "date-time",
          "type": "string"
        },
        "forward": {
          "description": "Forward mark F for model=black76 (preferred). If omitted, spot is used as F.",
          "examples": [
            100,
            82.5
          ],
          "exclusiveMinimum": 0,
          "type": "number"
        },
        "forwardStart": {
          "description": "ISO-8601 start of vol/exercise window. If ≤ now, behaves like plain option to expiration.",
          "format": "date-time",
          "type": "string"
        },
        "greekConvention": {
          "default": "raw",
          "description": "Greek units: \"raw\" (vega/1.0 vol, theta/year, rho/1.0 rate) or \"trading\" (vega/1%, theta/day, rho/bp).",
          "enum": [
            "raw",
            "trading"
          ],
          "type": "string"
        },
        "model": {
          "default": "bsm",
          "description": "Pricing model: \"bsm\" (default European BSM on spot) or \"black76\" (forward/futures).",
          "enum": [
            "bsm",
            "black76"
          ],
          "type": "string"
        },
        "optionStyle": {
          "default": "european",
          "description": "Exercise style (default \"european\"). American uses CRR binomial with early exercise.",
          "enum": [
            "european",
            "american"
          ],
          "type": "string"
        },
        "optionType": {
          "description": "Call or put.",
          "enum": [
            "call",
            "put"
          ],
          "type": "string"
        },
        "rate": {
          "description": "Continuously compounded risk-free rate r (e.g. 0.05 = 5%). For futures-style early exercise set r≈dividendYield.",
          "examples": [
            0.03,
            0.05
          ],
          "type": "number"
        },
        "spot": {
          "description": "Underlying price S (> 0). Equity spot OR power/commodity forward mark for the option's window.",
          "examples": [
            100,
            82.5,
            45.5
          ],
          "exclusiveMinimum": 0,
          "type": "number"
        },
        "strike": {
          "description": "Strike price K (> 0) in the same units as spot.",
          "examples": [
            100,
            50
          ],
          "exclusiveMinimum": 0,
          "type": "number"
        },
        "timeToExpiry": {
          "description": "Time to expiry T in years (≥ 0). Required unless expiration is set. Mutually exclusive with expiration.",
          "examples": [
            0.25,
            1
          ],
          "minimum": 0,
          "type": "number"
        },
        "treeSteps": {
          "description": "CRR steps for American (default 200 on single price).",
          "maximum": 500,
          "minimum": 50,
          "type": "integer"
        },
        "volatility": {
          "description": "Annualized volatility σ as a decimal (> 0). Applies over the vol-accrual window τ.",
          "examples": [
            0.15,
            0.2,
            0.45
          ],
          "exclusiveMinimum": 0,
          "type": "number"
        }
      },
      "required": [
        "spot",
        "strike",
        "rate",
        "volatility",
        "optionType"
      ],
      "title": "OptionPriceRequest",
      "type": "object"
    },
    "bodyType": {
      "enum": [
        "json",
        "form-data",
        "text"
      ],
      "type": "string"
    },
    "method": {
      "enum": [
        "POST"
      ],
      "type": "string"
    },
    "type": {
      "const": "http",
      "type": "string"
    }
  },
  "required": [
    "type",
    "method",
    "bodyType",
    "body"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "body": {
          "additionalProperties": false,
          "description": "European (default) or American option fair value. Legacy bodies use timeToExpiry year-fractions. Optional forwardStart+expiration (ISO-8601 with Z/offset) define a vol/exercise window; τ = years in that window (ACT/365.25), not calendar time from purchase. Not a swing/multi-exercise engine.",
          "properties": {
            "dividendYield": {
              "description": "Continuous dividend / convenience / yield q (≥ 0, default 0).",
              "examples": [
                0,
                0.02
              ],
              "minimum": 0,
              "type": "number"
            },
            "expiration": {
              "description": "ISO-8601 end of vol/exercise window. Mutually exclusive with timeToExpiry.",
              "format": "date-time",
              "type": "string"
            },
            "forward": {
              "description": "Forward mark F for model=black76 (preferred). If omitted, spot is used as F.",
              "examples": [
                100,
                82.5
              ],
              "exclusiveMinimum": 0,
              "type": "number"
            },
            "forwardStart": {
              "description": "ISO-8601 start of vol/exercise window. If ≤ now, behaves like plain option to expiration.",
              "format": "date-time",
              "type": "string"
            },
            "greekConvention": {
              "default": "raw",
              "description": "Greek units: \"raw\" (vega/1.0 vol, theta/year, rho/1.0 rate) or \"trading\" (vega/1%, theta/day, rho/bp).",
              "enum": [
                "raw",
                "trading"
              ],
              "type": "string"
            },
            "model": {
              "default": "bsm",
              "description": "Pricing model: \"bsm\" (default European BSM on spot) or \"black76\" (forward/futures).",
              "enum": [
                "bsm",
                "black76"
              ],
              "type": "string"
            },
            "optionStyle": {
              "default": "european",
              "description": "Exercise style (default \"european\"). American uses CRR binomial with early exercise.",
              "enum": [
                "european",
                "american"
              ],
              "type": "string"
            },
            "optionType": {
              "description": "Call or put.",
              "enum": [
                "call",
                "put"
              ],
              "type": "string"
            },
            "rate": {
              "description": "Continuously compounded risk-free rate r (e.g. 0.05 = 5%). For futures-style early exercise set r≈dividendYield.",
              "examples": [
                0.03,
                0.05
              ],
              "type": "number"
            },
            "spot": {
              "description": "Underlying price S (> 0). Equity spot OR power/commodity forward mark for the option's window.",
              "examples": [
                100,
                82.5,
                45.5
              ],
              "exclusiveMinimum": 0,
              "type": "number"
            },
            "strike": {
              "description": "Strike price K (> 0) in the same units as spot.",
              "examples": [
                100,
                50
              ],
              "exclusiveMinimum": 0,
              "type": "number"
            },
            "timeToExpiry": {
              "description": "Time to expiry T in years (≥ 0). Required unless expiration is set. Mutually exclusive with expiration.",
              "examples": [
                0.25,
                1
              ],
              "minimum": 0,
              "type": "number"
            },
            "treeSteps": {
              "description": "CRR steps for American (default 200 on single price).",
              "maximum": 500,
              "minimum": 50,
              "type": "integer"
            },
            "volatility": {
              "description": "Annualized volatility σ as a decimal (> 0). Applies over the vol-accrual window τ.",
              "examples": [
                0.15,
                0.2,
                0.45
              ],
              "exclusiveMinimum": 0,
              "type": "number"
            }
          },
          "required": [
            "spot",
            "strike",
            "rate",
            "volatility",
            "optionType"
          ],
          "title": "OptionPriceRequest",
          "type": "object"
        },
        "bodyType": {
          "enum": [
            "json",
            "form-data",
            "text"
          ],
          "type": "string"
        },
        "method": {
          "enum": [
            "POST"
          ],
          "type": "string"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method",
        "bodyType",
        "body"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "description": "Fair value and Greeks. European Greeks are analytic BSM; American Greeks are finite-difference on the CRR tree. timeline.tauYears is the model life (window); calendarYearsToExpiry is purchase→expiry.",
          "properties": {
            "computedAt": {
              "description": "ISO-8601 UTC timestamp of computation",
              "type": "string"
            },
            "greeks": {
              "description": "Greeks for hedge construction",
              "properties": {
                "delta": {
                  "description": "∂V/∂S",
                  "type": "number"
                },
                "gamma": {
                  "description": "∂²V/∂S²",
                  "type": "number"
                },
                "rho": {
                  "description": "∂V/∂r per 1.0 absolute rate",
                  "type": "number"
                },
                "theta": {
                  "description": "∂V/∂T per year",
                  "type": "number"
                },
                "vega": {
                  "description": "∂V/∂σ per 1.0 absolute vol",
                  "type": "number"
                }
              },
              "required": [
                "delta",
                "gamma",
                "vega",
                "theta",
                "rho"
              ],
              "type": "object"
            },
            "greeksQuality": {
              "enum": [
                "analytic",
                "finite-difference"
              ],
              "type": "string"
            },
            "inputs": {
              "description": "Echo of validated request inputs (timeToExpiry may be resolved τ)",
              "type": "object"
            },
            "model": {
              "enum": [
                "black-scholes-merton",
                "binomial-crr-american"
              ],
              "type": "string"
            },
            "optionStyle": {
              "enum": [
                "european",
                "american"
              ],
              "type": "string"
            },
            "price": {
              "description": "Model option fair value in underlying currency units",
              "type": "number"
            },
            "requestId": {
              "description": "Correlation id for this call",
              "type": "string"
            },
            "timeline": {
              "description": "Resolved ACT/365.25 window",
              "type": "object"
            },
            "treeSteps": {
              "type": "integer"
            },
            "units": {
              "description": "Human/agent readable unit notes for price and Greeks",
              "type": "object"
            }
          },
          "required": [
            "price",
            "greeks",
            "inputs",
            "model",
            "optionStyle",
            "timeline",
            "greeksQuality",
            "requestId",
            "computedAt"
          ],
          "title": "OptionPriceResponse",
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}