# Derivatives Pricer – Black-Scholes European Option Pricing

> Derivatives Pricer – Black-Scholes European Option Pricing is a paid API for AI agents from derivatives-pricer-production.up.railway.app, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-12).

Prices European call/put options using Black-Scholes-Merton and returns the option premium plus analytic Greeks (delta, gamma, theta, vega, rho), paid per-call via USDC on Solana or Base.

## Facts

- Endpoint: POST https://derivatives-pricer-production.up.railway.app/v1/option/price?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-12
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/derivatives-pricer-black-scholes-european-option-pricing-6f5494a8
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_xmt9rRqvGq6Vp7KfMdNxD

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability derivatives-pricer-black-scholes-european-option-pricing-6f5494a8 -d '<json body>'
```

Example prompt: Price a European call option for me: the underlying spot is 100, strike is 100, annualized vol is 20%, time to expiry is 1 year, risk-free rate is 5%, and no dividend yield — give me the Black-Scholes price and all the Greeks.

## When to prefer this

Choose this endpoint when you need fast, analytic Black-Scholes pricing and exact closed-form Greeks for vanilla European options — it's ideal for real-time hedging calculations, scenario analysis, or educational tooling where an analytical solution suffices. Prefer it over Monte Carlo or finite-difference APIs when you need speed, reproducibility, and precise analytic Greeks without numerical noise. It is not suitable for American options, barrier options, or instruments requiring path-dependent simulation.

## Known failure modes

- Invalid or zero spot/strike/volatility — returns 400 with validation error
- timeToExpiry set to 0 for an in-the-money option — returns intrinsic value with zero Greeks
- Payment not processed or insufficient USDC balance — returns 402 Payment Required
- Missing required fields (e.g. optionType, spot, strike) — returns 400 schema validation error
- Extremely deep in/out-of-the-money with near-zero expiry — numerical edge cases may yield near-zero Greeks

## How this service works

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.

## Output

A JSON object containing the Black-Scholes-Merton option price in spot currency units, a full analytic Greeks set (delta, gamma, theta per year, vega per unit vol, rho per unit rate), the echoed input parameters, the model name, a UUID request ID, and a UTC computation timestamp.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "rate": {
   "type": "number",
   "examples": [
    0.03,
    0.05
   ],
   "description": "Continuously compounded risk-free rate r (e.g. 0.05 = 5%). For futures-style early exercise set r≈dividendYield."
  },
  "spot": {
   "type": "number",
   "examples": [
    100,
    82.5,
    45.5
   ],
   "description": "Underlying price S (> 0). Equity spot OR power/commodity forward mark for the option's window.",
   "exclusiveMinimum": 0
  },
  "model": {
   "enum": [
    "bsm",
    "black76"
   ],
   "type": "string",
   "default": "bsm",
   "description": "Pricing model: \"bsm\" (default European BSM on spot) or \"black76\" (forward/futures)."
  },
  "strike": {
   "type": "number",
   "examples": [
    100,
    50
   ],
   "description": "Strike price K (> 0) in the same units as spot.",
   "exclusiveMinimum": 0
  },
  "forward": {
   "type": "number",
   "examples": [
    100,
    82.5
   ],
   "description": "Forward mark F for model=black76 (preferred). If omitted, spot is used as F.",
   "exclusiveMinimum": 0
  },
  "treeSteps": {
   "type": "integer",
   "maximum": 500,
   "minimum": 50,
   "description": "CRR steps for American (default 200 on single price)."
  },
  "expiration": {
   "type": "string",
   "format": "date-time",
   "description": "ISO-8601 end of vol/exercise window. Mutually exclusive with timeToExpiry."
  },
  "optionType": {
   "enum": [
    "call",
    "put"
   ],
   "type": "string",
   "description": "Call or put."
  },
  "volatility": {
   "type": "number",
   "examples": [
    0.15,
    0.2,
    0.45
   ],
   "description": "Annualized volatility σ as a decimal (> 0). Applies over the vol-accrual window τ.",
   "exclusiveMinimum": 0
  },
  "optionStyle": {
   "enum": [
    "european",
    "american"
   ],
   "type": "string",
   "default": "european",
   "description": "Exercise style (default \"european\"). American uses CRR binomial with early exercise."
  },
  "forwardStart": {
   "type": "string",
   "format": "date-time",
   "description": "ISO-8601 start of vol/exercise window. If ≤ now, behaves like plain option to expiration."
  },
  "timeToExpiry": {
   "type": "number",
   "minimum": 0,
   "examples": [
    0.25,
    1
   ],
   "description": "Time to expiry T in years (≥ 0). Required unless expiration is set. Mutually exclusive with expiration."
  },
  "dividendYield": {
   "type": "number",
   "minimum": 0,
   "examples": [
    0,
    0.02
   ],
   "description": "Continuous div
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "model": "black-scholes-merton",
  "price": 10.45057562,
  "units": {
   "rho": "dV/dr per 1.0 absolute rate (not per 1%)",
   "vega": "dV/dσ per 1.0 absolute volatility (not per 1%)",
   "delta": "dV/dS or dV/dF (share / forward equivalent)",
   "gamma": "d²V/dS² or d²V/dF²",
   "price": "option value in spot/forward currency units",
   "theta": "dV/dT per year (not per day)"
  },
  "greeks": {
   "rho": 53.23248343,
   "vega": 37.52403469,
   "delta": 0.63683059,
   "gamma": 0.01876202,
   "theta": -6.41402764
  },
  "inputs": {
   "rate": 0.05,
   "spot": 100,
   "model": "bsm",
   "strike": 100,
   "optionType": "call",
   "volatility": 0.2,
   "optionStyle": "european",
   "timeToExpiry": 1,
   "dividendYield": 0,
   "greekConvention": "raw"
  },
  "timeline": {
   "tauYears": 1,
   "yearBasis": "ACT/365.25",
   "expiration": "2027-01-01T06:00:00.000Z",
   "forwardStart": "2026-01-01T00:00:00.000Z",
   "effectiveStart": "2026-01-01T00:00:00.000Z",
   "calendarYearsToExpiry": 1
  },
  "requestId": "00000000-0000-4000-8000-000000000001",
  "computedAt": "2026-01-01T00:00:00.000Z",
  "optionStyle": "european",
  "greeksQuality": "analytic",
  "greekConvention": "raw"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/derivatives-pricer-black-scholes-european-option-pricing-6f5494a8/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from derivatives-pricer-production.up.railway.app](https://www.zero.xyz/host/derivatives-pricer-production.up.railway.app/llms.txt)
