curl --request POST \
--url https://api.riskportal.activeviam.com/api/Tradable/GetVol \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json-patch+json' \
--data '
{
"$type": "Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core",
"strikes": [
123
],
"surface": {
"$type": "Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core",
"provider_id": "<string>",
"derivitec_created": "<string>",
"derivitec_modified": "<string>",
"uploaded_date_time": "<string>",
"derivitec_modified_by": "<string>",
"uploaded_by": "<string>",
"rolled": false,
"benchmark_fwd_factors": [
123
],
"benchmark_maturities": [
123
],
"call_wings": [
123
],
"put_wings": [
123
],
"reference_date": "2023-11-07T05:31:56Z",
"skews": [
123
],
"smiles": [
123
],
"spot_ref": 123,
"vols": [
123
]
},
"maturity": 123
}
'import requests
url = "https://api.riskportal.activeviam.com/api/Tradable/GetVol"
payload = {
"$type": "Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core",
"strikes": [123],
"surface": {
"$type": "Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core",
"provider_id": "<string>",
"derivitec_created": "<string>",
"derivitec_modified": "<string>",
"uploaded_date_time": "<string>",
"derivitec_modified_by": "<string>",
"uploaded_by": "<string>",
"rolled": False,
"benchmark_fwd_factors": [123],
"benchmark_maturities": [123],
"call_wings": [123],
"put_wings": [123],
"reference_date": "2023-11-07T05:31:56Z",
"skews": [123],
"smiles": [123],
"spot_ref": 123,
"vols": [123]
},
"maturity": 123
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json-patch+json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json-patch+json'},
body: JSON.stringify({
$type: 'Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core',
strikes: [123],
surface: {
$type: 'Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core',
provider_id: '<string>',
derivitec_created: '<string>',
derivitec_modified: '<string>',
uploaded_date_time: '<string>',
derivitec_modified_by: '<string>',
uploaded_by: '<string>',
rolled: false,
benchmark_fwd_factors: [123],
benchmark_maturities: [123],
call_wings: [123],
put_wings: [123],
reference_date: '2023-11-07T05:31:56Z',
skews: [123],
smiles: [123],
spot_ref: 123,
vols: [123]
},
maturity: 123
})
};
fetch('https://api.riskportal.activeviam.com/api/Tradable/GetVol', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.riskportal.activeviam.com/api/Tradable/GetVol",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'$type' => 'Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core',
'strikes' => [
123
],
'surface' => [
'$type' => 'Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core',
'provider_id' => '<string>',
'derivitec_created' => '<string>',
'derivitec_modified' => '<string>',
'uploaded_date_time' => '<string>',
'derivitec_modified_by' => '<string>',
'uploaded_by' => '<string>',
'rolled' => false,
'benchmark_fwd_factors' => [
123
],
'benchmark_maturities' => [
123
],
'call_wings' => [
123
],
'put_wings' => [
123
],
'reference_date' => '2023-11-07T05:31:56Z',
'skews' => [
123
],
'smiles' => [
123
],
'spot_ref' => 123,
'vols' => [
123
]
],
'maturity' => 123
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json-patch+json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.riskportal.activeviam.com/api/Tradable/GetVol"
payload := strings.NewReader("{\n \"$type\": \"Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core\",\n \"strikes\": [\n 123\n ],\n \"surface\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core\",\n \"provider_id\": \"<string>\",\n \"derivitec_created\": \"<string>\",\n \"derivitec_modified\": \"<string>\",\n \"uploaded_date_time\": \"<string>\",\n \"derivitec_modified_by\": \"<string>\",\n \"uploaded_by\": \"<string>\",\n \"rolled\": false,\n \"benchmark_fwd_factors\": [\n 123\n ],\n \"benchmark_maturities\": [\n 123\n ],\n \"call_wings\": [\n 123\n ],\n \"put_wings\": [\n 123\n ],\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"skews\": [\n 123\n ],\n \"smiles\": [\n 123\n ],\n \"spot_ref\": 123,\n \"vols\": [\n 123\n ]\n },\n \"maturity\": 123\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json-patch+json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.riskportal.activeviam.com/api/Tradable/GetVol")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json-patch+json")
.body("{\n \"$type\": \"Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core\",\n \"strikes\": [\n 123\n ],\n \"surface\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core\",\n \"provider_id\": \"<string>\",\n \"derivitec_created\": \"<string>\",\n \"derivitec_modified\": \"<string>\",\n \"uploaded_date_time\": \"<string>\",\n \"derivitec_modified_by\": \"<string>\",\n \"uploaded_by\": \"<string>\",\n \"rolled\": false,\n \"benchmark_fwd_factors\": [\n 123\n ],\n \"benchmark_maturities\": [\n 123\n ],\n \"call_wings\": [\n 123\n ],\n \"put_wings\": [\n 123\n ],\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"skews\": [\n 123\n ],\n \"smiles\": [\n 123\n ],\n \"spot_ref\": 123,\n \"vols\": [\n 123\n ]\n },\n \"maturity\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.riskportal.activeviam.com/api/Tradable/GetVol")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json-patch+json'
request.body = "{\n \"$type\": \"Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core\",\n \"strikes\": [\n 123\n ],\n \"surface\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core\",\n \"provider_id\": \"<string>\",\n \"derivitec_created\": \"<string>\",\n \"derivitec_modified\": \"<string>\",\n \"uploaded_date_time\": \"<string>\",\n \"derivitec_modified_by\": \"<string>\",\n \"uploaded_by\": \"<string>\",\n \"rolled\": false,\n \"benchmark_fwd_factors\": [\n 123\n ],\n \"benchmark_maturities\": [\n 123\n ],\n \"call_wings\": [\n 123\n ],\n \"put_wings\": [\n 123\n ],\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"skews\": [\n 123\n ],\n \"smiles\": [\n 123\n ],\n \"spot_ref\": 123,\n \"vols\": [\n 123\n ]\n },\n \"maturity\": 123\n}"
response = http.request(request)
puts response.read_body{
"$type": "Derivitec.Web.Core.Tradables.ApiGetVolResponse, Derivitec.Web.Core",
"is_success": true,
"error_messages": [
"<string>"
],
"strike_type": "absolute",
"vols": [
123
]
}Calculate volatility values at selected strikes.
Evaluates the supplied SVI-compatible volatility surface for each strike using the selected strike convention and maturity. This synchronous operation is read-only. The maturity is accepted as a scalar; its unit is not specified here.
curl --request POST \
--url https://api.riskportal.activeviam.com/api/Tradable/GetVol \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json-patch+json' \
--data '
{
"$type": "Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core",
"strikes": [
123
],
"surface": {
"$type": "Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core",
"provider_id": "<string>",
"derivitec_created": "<string>",
"derivitec_modified": "<string>",
"uploaded_date_time": "<string>",
"derivitec_modified_by": "<string>",
"uploaded_by": "<string>",
"rolled": false,
"benchmark_fwd_factors": [
123
],
"benchmark_maturities": [
123
],
"call_wings": [
123
],
"put_wings": [
123
],
"reference_date": "2023-11-07T05:31:56Z",
"skews": [
123
],
"smiles": [
123
],
"spot_ref": 123,
"vols": [
123
]
},
"maturity": 123
}
'import requests
url = "https://api.riskportal.activeviam.com/api/Tradable/GetVol"
payload = {
"$type": "Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core",
"strikes": [123],
"surface": {
"$type": "Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core",
"provider_id": "<string>",
"derivitec_created": "<string>",
"derivitec_modified": "<string>",
"uploaded_date_time": "<string>",
"derivitec_modified_by": "<string>",
"uploaded_by": "<string>",
"rolled": False,
"benchmark_fwd_factors": [123],
"benchmark_maturities": [123],
"call_wings": [123],
"put_wings": [123],
"reference_date": "2023-11-07T05:31:56Z",
"skews": [123],
"smiles": [123],
"spot_ref": 123,
"vols": [123]
},
"maturity": 123
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json-patch+json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json-patch+json'},
body: JSON.stringify({
$type: 'Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core',
strikes: [123],
surface: {
$type: 'Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core',
provider_id: '<string>',
derivitec_created: '<string>',
derivitec_modified: '<string>',
uploaded_date_time: '<string>',
derivitec_modified_by: '<string>',
uploaded_by: '<string>',
rolled: false,
benchmark_fwd_factors: [123],
benchmark_maturities: [123],
call_wings: [123],
put_wings: [123],
reference_date: '2023-11-07T05:31:56Z',
skews: [123],
smiles: [123],
spot_ref: 123,
vols: [123]
},
maturity: 123
})
};
fetch('https://api.riskportal.activeviam.com/api/Tradable/GetVol', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.riskportal.activeviam.com/api/Tradable/GetVol",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'$type' => 'Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core',
'strikes' => [
123
],
'surface' => [
'$type' => 'Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core',
'provider_id' => '<string>',
'derivitec_created' => '<string>',
'derivitec_modified' => '<string>',
'uploaded_date_time' => '<string>',
'derivitec_modified_by' => '<string>',
'uploaded_by' => '<string>',
'rolled' => false,
'benchmark_fwd_factors' => [
123
],
'benchmark_maturities' => [
123
],
'call_wings' => [
123
],
'put_wings' => [
123
],
'reference_date' => '2023-11-07T05:31:56Z',
'skews' => [
123
],
'smiles' => [
123
],
'spot_ref' => 123,
'vols' => [
123
]
],
'maturity' => 123
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json-patch+json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.riskportal.activeviam.com/api/Tradable/GetVol"
payload := strings.NewReader("{\n \"$type\": \"Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core\",\n \"strikes\": [\n 123\n ],\n \"surface\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core\",\n \"provider_id\": \"<string>\",\n \"derivitec_created\": \"<string>\",\n \"derivitec_modified\": \"<string>\",\n \"uploaded_date_time\": \"<string>\",\n \"derivitec_modified_by\": \"<string>\",\n \"uploaded_by\": \"<string>\",\n \"rolled\": false,\n \"benchmark_fwd_factors\": [\n 123\n ],\n \"benchmark_maturities\": [\n 123\n ],\n \"call_wings\": [\n 123\n ],\n \"put_wings\": [\n 123\n ],\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"skews\": [\n 123\n ],\n \"smiles\": [\n 123\n ],\n \"spot_ref\": 123,\n \"vols\": [\n 123\n ]\n },\n \"maturity\": 123\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json-patch+json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.riskportal.activeviam.com/api/Tradable/GetVol")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json-patch+json")
.body("{\n \"$type\": \"Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core\",\n \"strikes\": [\n 123\n ],\n \"surface\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core\",\n \"provider_id\": \"<string>\",\n \"derivitec_created\": \"<string>\",\n \"derivitec_modified\": \"<string>\",\n \"uploaded_date_time\": \"<string>\",\n \"derivitec_modified_by\": \"<string>\",\n \"uploaded_by\": \"<string>\",\n \"rolled\": false,\n \"benchmark_fwd_factors\": [\n 123\n ],\n \"benchmark_maturities\": [\n 123\n ],\n \"call_wings\": [\n 123\n ],\n \"put_wings\": [\n 123\n ],\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"skews\": [\n 123\n ],\n \"smiles\": [\n 123\n ],\n \"spot_ref\": 123,\n \"vols\": [\n 123\n ]\n },\n \"maturity\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.riskportal.activeviam.com/api/Tradable/GetVol")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json-patch+json'
request.body = "{\n \"$type\": \"Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core\",\n \"strikes\": [\n 123\n ],\n \"surface\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.VolatilitySurfaceSvi, Derivitec.Web.Core\",\n \"provider_id\": \"<string>\",\n \"derivitec_created\": \"<string>\",\n \"derivitec_modified\": \"<string>\",\n \"uploaded_date_time\": \"<string>\",\n \"derivitec_modified_by\": \"<string>\",\n \"uploaded_by\": \"<string>\",\n \"rolled\": false,\n \"benchmark_fwd_factors\": [\n 123\n ],\n \"benchmark_maturities\": [\n 123\n ],\n \"call_wings\": [\n 123\n ],\n \"put_wings\": [\n 123\n ],\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"skews\": [\n 123\n ],\n \"smiles\": [\n 123\n ],\n \"spot_ref\": 123,\n \"vols\": [\n 123\n ]\n },\n \"maturity\": 123\n}"
response = http.request(request)
puts response.read_body{
"$type": "Derivitec.Web.Core.Tradables.ApiGetVolResponse, Derivitec.Web.Core",
"is_success": true,
"error_messages": [
"<string>"
],
"strike_type": "absolute",
"vols": [
123
]
}Authorizations
OAuth2 access-token requested from AWS Cognito and provided as a Auth Bearer header
Body
JSON request with non-null Surface and Strikes, StrikeType, and integer Maturity. An empty strike list is accepted.
Volatility surface, maturity coordinate, strike values, and strike convention used to request volatilities.
Derivitec.Web.Core.Tradables.ApiGetVolRequest, Derivitec.Web.Core Convention used to interpret the supplied strike values.
absolute, logarithmic, normalized, logarithmic_spot Strike coordinates at which volatility values are requested.
Dated volatility surface carrying benchmark and fitted parameter sequences.
- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
Show child attributes
Show child attributes
Integer maturity coordinate supplied to the volatility-surface lookup.
Response
Returns values aligned to input strikes and the echoed strike type, or an unsuccessful payload for invalid input.
Volatility values returned for the requested maturity and strikes.
Derivitec.Web.Core.Tradables.ApiGetVolResponse, Derivitec.Web.Core Whether the operation completed successfully. The default is true; error outcomes set it to false.
true
Messages explaining operation-level failures. The collection is empty by default.
Strike convention used for the returned volatility values.
absolute, logarithmic, normalized, logarithmic_spot Volatility values returned for the requested strike sequence; volatility scale is not defined here.
Was this page helpful?