Exchange Economy Analysis
curl --request POST \
--url https://api.fincept.in/quantlib/economics/equilibrium/exchange-economy \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"endowments": [
[
10,
5
],
[
5,
10
]
],
"alphas": [
0.6,
0.4
],
"prices": [
1,
1
]
}
'import requests
url = "https://api.fincept.in/quantlib/economics/equilibrium/exchange-economy"
payload = {
"endowments": [[10, 5], [5, 10]],
"alphas": [0.6, 0.4],
"prices": [1, 1]
}
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({endowments: [[10, 5], [5, 10]], alphas: [0.6, 0.4], prices: [1, 1]})
};
fetch('https://api.fincept.in/quantlib/economics/equilibrium/exchange-economy', 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/economics/equilibrium/exchange-economy",
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([
'endowments' => [
[
10,
5
],
[
5,
10
]
],
'alphas' => [
0.6,
0.4
],
'prices' => [
1,
1
]
]),
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/economics/equilibrium/exchange-economy"
payload := strings.NewReader("{\n \"endowments\": [\n [\n 10,\n 5\n ],\n [\n 5,\n 10\n ]\n ],\n \"alphas\": [\n 0.6,\n 0.4\n ],\n \"prices\": [\n 1,\n 1\n ]\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/economics/equilibrium/exchange-economy")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"endowments\": [\n [\n 10,\n 5\n ],\n [\n 5,\n 10\n ]\n ],\n \"alphas\": [\n 0.6,\n 0.4\n ],\n \"prices\": [\n 1,\n 1\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fincept.in/quantlib/economics/equilibrium/exchange-economy")
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 \"endowments\": [\n [\n 10,\n 5\n ],\n [\n 5,\n 10\n ]\n ],\n \"alphas\": [\n 0.6,\n 0.4\n ],\n \"prices\": [\n 1,\n 1\n ]\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"aggregate_endowment": [
15,
15
],
"excess_demand": [
3,
-3
],
"walras_law_check": 0,
"prices_used": [
1,
1
]
}
}{
"detail": "Invalid API key"
}{
"detail": "Endpoint requires Basic tier or higher"
}{
"detail": [
{
"loc": [
"body",
"endowments"
],
"msg": "field required",
"type": "value_error.missing"
}
]
}quantlib-economics
Exchange Economy Analysis
Analyze a 2-consumer, 2-good pure exchange economy. Computes aggregate endowments, excess demand at given prices, and verifies Walras’s Law (that the value of excess demand is zero). Essential for understanding general equilibrium theory, Pareto efficiency, and the core of an economy. Use before finding equilibrium to analyze market conditions. [Tier: STANDARD, Credits: 2]
POST
/
quantlib
/
economics
/
equilibrium
/
exchange-economy
Exchange Economy Analysis
curl --request POST \
--url https://api.fincept.in/quantlib/economics/equilibrium/exchange-economy \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"endowments": [
[
10,
5
],
[
5,
10
]
],
"alphas": [
0.6,
0.4
],
"prices": [
1,
1
]
}
'import requests
url = "https://api.fincept.in/quantlib/economics/equilibrium/exchange-economy"
payload = {
"endowments": [[10, 5], [5, 10]],
"alphas": [0.6, 0.4],
"prices": [1, 1]
}
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({endowments: [[10, 5], [5, 10]], alphas: [0.6, 0.4], prices: [1, 1]})
};
fetch('https://api.fincept.in/quantlib/economics/equilibrium/exchange-economy', 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/economics/equilibrium/exchange-economy",
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([
'endowments' => [
[
10,
5
],
[
5,
10
]
],
'alphas' => [
0.6,
0.4
],
'prices' => [
1,
1
]
]),
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/economics/equilibrium/exchange-economy"
payload := strings.NewReader("{\n \"endowments\": [\n [\n 10,\n 5\n ],\n [\n 5,\n 10\n ]\n ],\n \"alphas\": [\n 0.6,\n 0.4\n ],\n \"prices\": [\n 1,\n 1\n ]\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/economics/equilibrium/exchange-economy")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"endowments\": [\n [\n 10,\n 5\n ],\n [\n 5,\n 10\n ]\n ],\n \"alphas\": [\n 0.6,\n 0.4\n ],\n \"prices\": [\n 1,\n 1\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fincept.in/quantlib/economics/equilibrium/exchange-economy")
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 \"endowments\": [\n [\n 10,\n 5\n ],\n [\n 5,\n 10\n ]\n ],\n \"alphas\": [\n 0.6,\n 0.4\n ],\n \"prices\": [\n 1,\n 1\n ]\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"aggregate_endowment": [
15,
15
],
"excess_demand": [
3,
-3
],
"walras_law_check": 0,
"prices_used": [
1,
1
]
}
}{
"detail": "Invalid API key"
}{
"detail": "Endpoint requires Basic tier or higher"
}{
"detail": [
{
"loc": [
"body",
"endowments"
],
"msg": "field required",
"type": "value_error.missing"
}
]
}Authorizations
API key for authentication. Get your key at https://api.fincept.in/auth/register
Body
application/json
Initial endowments for each consumer [[e1_good1, e1_good2], [e2_good1, e2_good2]]
Required array length:
2 elementsRequired array length:
2 elementsRequired range:
x >= 0Example:
[[10, 5], [5, 10]]
Cobb-Douglas preference parameters for each consumer [alpha1, alpha2]
Required array length:
2 elementsRequired range:
0 <= x <= 1Example:
[0.6, 0.4]
Prices to evaluate excess demand at [p1, p2]. If null, uses [1.0, 1.0]
Required array length:
2 elementsRequired range:
x >= 0Example:
[1, 1]
⌘I
