Monte Carlo Integration
curl --request POST \
--url https://api.fincept.in/quantlib/numerical/integration/monte-carlo \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"func_name": "sphere",
"bounds": [
[
-1,
1
],
[
-1,
1
]
],
"n_samples": 10000,
"seed": 42
}
'import requests
url = "https://api.fincept.in/quantlib/numerical/integration/monte-carlo"
payload = {
"func_name": "sphere",
"bounds": [[-1, 1], [-1, 1]],
"n_samples": 10000,
"seed": 42
}
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({func_name: 'sphere', bounds: [[-1, 1], [-1, 1]], n_samples: 10000, seed: 42})
};
fetch('https://api.fincept.in/quantlib/numerical/integration/monte-carlo', 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/numerical/integration/monte-carlo",
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([
'func_name' => 'sphere',
'bounds' => [
[
-1,
1
],
[
-1,
1
]
],
'n_samples' => 10000,
'seed' => 42
]),
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/numerical/integration/monte-carlo"
payload := strings.NewReader("{\n \"func_name\": \"sphere\",\n \"bounds\": [\n [\n -1,\n 1\n ],\n [\n -1,\n 1\n ]\n ],\n \"n_samples\": 10000,\n \"seed\": 42\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/numerical/integration/monte-carlo")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"func_name\": \"sphere\",\n \"bounds\": [\n [\n -1,\n 1\n ],\n [\n -1,\n 1\n ]\n ],\n \"n_samples\": 10000,\n \"seed\": 42\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fincept.in/quantlib/numerical/integration/monte-carlo")
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 \"func_name\": \"sphere\",\n \"bounds\": [\n [\n -1,\n 1\n ],\n [\n -1,\n 1\n ]\n ],\n \"n_samples\": 10000,\n \"seed\": 42\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"estimate": 2.6667,
"std_error": 0.0235,
"n_samples": 10000
}
}{
"detail": "Invalid API key"
}{
"detail": "Endpoint requires Basic tier or higher"
}quantlib-numerical
Monte Carlo Integration
Estimate the integral of a function over a hyper-rectangle using Monte Carlo sampling. Particularly effective for high-dimensional integrals where traditional methods suffer from the curse of dimensionality. Returns both the integral estimate and standard error, allowing confidence interval construction. Essential for option pricing, risk calculations, and multidimensional probability computations. [Tier: BASIC, Credits: 1]
POST
/
quantlib
/
numerical
/
integration
/
monte-carlo
Monte Carlo Integration
curl --request POST \
--url https://api.fincept.in/quantlib/numerical/integration/monte-carlo \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"func_name": "sphere",
"bounds": [
[
-1,
1
],
[
-1,
1
]
],
"n_samples": 10000,
"seed": 42
}
'import requests
url = "https://api.fincept.in/quantlib/numerical/integration/monte-carlo"
payload = {
"func_name": "sphere",
"bounds": [[-1, 1], [-1, 1]],
"n_samples": 10000,
"seed": 42
}
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({func_name: 'sphere', bounds: [[-1, 1], [-1, 1]], n_samples: 10000, seed: 42})
};
fetch('https://api.fincept.in/quantlib/numerical/integration/monte-carlo', 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/numerical/integration/monte-carlo",
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([
'func_name' => 'sphere',
'bounds' => [
[
-1,
1
],
[
-1,
1
]
],
'n_samples' => 10000,
'seed' => 42
]),
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/numerical/integration/monte-carlo"
payload := strings.NewReader("{\n \"func_name\": \"sphere\",\n \"bounds\": [\n [\n -1,\n 1\n ],\n [\n -1,\n 1\n ]\n ],\n \"n_samples\": 10000,\n \"seed\": 42\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/numerical/integration/monte-carlo")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"func_name\": \"sphere\",\n \"bounds\": [\n [\n -1,\n 1\n ],\n [\n -1,\n 1\n ]\n ],\n \"n_samples\": 10000,\n \"seed\": 42\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fincept.in/quantlib/numerical/integration/monte-carlo")
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 \"func_name\": \"sphere\",\n \"bounds\": [\n [\n -1,\n 1\n ],\n [\n -1,\n 1\n ]\n ],\n \"n_samples\": 10000,\n \"seed\": 42\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"estimate": 2.6667,
"std_error": 0.0235,
"n_samples": 10000
}
}{
"detail": "Invalid API key"
}{
"detail": "Endpoint requires Basic tier or higher"
}Authorizations
API key for authentication. Get your key at https://api.fincept.in/auth/register
Body
application/json
Built-in function (multi-variable for multi-d, scalar for 1-d)
Available options:
rosenbrock, sphere, rastrigin, quadratic, exp, sin, cos Example:
"sphere"
Integration bounds for each dimension [[a1,b1], [a2,b2], ...]
Required array length:
2 elementsExample:
[[-1, 1], [-1, 1]]
Number of Monte Carlo samples (more samples = more accurate)
Example:
10000
Random seed for reproducibility
Example:
42
⌘I
