Calculate Basis
curl --request POST \
--url https://api.fincept.in/quantlib/solver/finance/basis \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"spot": 100,
"futures": 102
}
'import requests
url = "https://api.fincept.in/quantlib/solver/finance/basis"
payload = {
"spot": 100,
"futures": 102
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({spot: 100, futures: 102})
};
fetch('https://api.fincept.in/quantlib/solver/finance/basis', 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.fincept.in/quantlib/solver/finance/basis",
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([
'spot' => 100,
'futures' => 102
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$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.fincept.in/quantlib/solver/finance/basis"
payload := strings.NewReader("{\n \"spot\": 100,\n \"futures\": 102\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/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.fincept.in/quantlib/solver/finance/basis")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"spot\": 100,\n \"futures\": 102\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fincept.in/quantlib/solver/finance/basis")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"spot\": 100,\n \"futures\": 102\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"basis": -2
}
}{
"detail": "Invalid API key"
}{
"detail": "Endpoint requires Basic tier or higher"
}{
"detail": [
{}
]
}quantlib-solver
Calculate Basis
Calculate the basis - the difference between the spot price and the futures price (Basis = Spot - Futures). Basis represents the net cost of carry and can be positive (contango) or negative (backwardation). Understanding basis is crucial for hedging strategies, arbitrage opportunities, and futures contract pricing. Basis typically converges to zero as the futures contract approaches expiry. Used extensively in commodity trading, equity index arbitrage, and bond futures hedging. [Tier: STANDARD, Credits: 2]
POST
/
quantlib
/
solver
/
finance
/
basis
Calculate Basis
curl --request POST \
--url https://api.fincept.in/quantlib/solver/finance/basis \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"spot": 100,
"futures": 102
}
'import requests
url = "https://api.fincept.in/quantlib/solver/finance/basis"
payload = {
"spot": 100,
"futures": 102
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({spot: 100, futures: 102})
};
fetch('https://api.fincept.in/quantlib/solver/finance/basis', 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.fincept.in/quantlib/solver/finance/basis",
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([
'spot' => 100,
'futures' => 102
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$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.fincept.in/quantlib/solver/finance/basis"
payload := strings.NewReader("{\n \"spot\": 100,\n \"futures\": 102\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/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.fincept.in/quantlib/solver/finance/basis")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"spot\": 100,\n \"futures\": 102\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fincept.in/quantlib/solver/finance/basis")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"spot\": 100,\n \"futures\": 102\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"basis": -2
}
}{
"detail": "Invalid API key"
}{
"detail": "Endpoint requires Basic tier or higher"
}{
"detail": [
{}
]
}Authorizations
API key for authentication. Get your key at https://api.fincept.in/auth/register
Body
application/json
⌘I
