Skip to main content
POST
/
quantlib
/
volatility
/
surface
/
smile
Volatility Smile
curl --request POST \
  --url https://finceptbackend.share.zrok.io/quantlib/volatility/surface/smile \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "expiries": [
    0.25,
    0.5,
    1
  ],
  "strikes": [
    90,
    95,
    100,
    105,
    110
  ],
  "vol_matrix": [
    [
      0.28,
      0.26,
      0.24,
      0.25,
      0.27
    ],
    [
      0.27,
      0.25,
      0.23,
      0.24,
      0.26
    ],
    [
      0.26,
      0.24,
      0.22,
      0.23,
      0.25
    ]
  ],
  "query_expiry": 0.5,
  "query_strikes": [
    92,
    97,
    102,
    107
  ]
}
'
{
  "success": true,
  "data": {
    "expiry": 0.5,
    "smile": [
      {
        "strike": 92,
        "volatility": 0.262
      },
      {
        "strike": 97,
        "volatility": 0.244
      },
      {
        "strike": 102,
        "volatility": 0.236
      },
      {
        "strike": 107,
        "volatility": 0.249
      }
    ]
  }
}

Authorizations

X-API-Key
string
header
required

API key for authentication. Get your key at https://finceptbackend.share.zrok.io/auth/register

Body

application/json
expiries
number[]
required

Array of expiry times in years

Minimum array length: 2
Example:
[0.25, 0.5, 1]
strikes
number[]
required

Array of strike prices

Minimum array length: 2
Example:
[90, 95, 100, 105, 110]
vol_matrix
number[][]
required

2D volatility matrix [expiry_index][strike_index]

Example:
[
[0.28, 0.26, 0.24, 0.25, 0.27],
[0.27, 0.25, 0.23, 0.24, 0.26],
[0.26, 0.24, 0.22, 0.23, 0.25]
]
query_expiry
number
required

Expiry time for which to extract the smile

Required range: x >= 0
Example:

0.5

query_strikes
number[]
required

Array of strikes at which to evaluate the smile

Minimum array length: 1
Example:
[92, 97, 102, 107]

Response

Successful Response

success
boolean
Example:

true

data
object