価格変化による消費者余剰の変化計算
価格が変わると、買い手が支払う金額だけでなく、購入を希望する数量も変化します。この計算ツールは、線形需要曲線に沿った両方の変化をまとめ、買い手の厚生への影響を測定します。数量切片、正の傾きの大きさ、変更前と変更後の価格をご入力ください。両時点の需要量と消費者余剰を示し、符号付きの差を買い手の利益、損失、または変化なしとして判定します。政策分析、価格調査、経済学の課題、前提を明示したモデルの確認にご利用いただけます。
無料で実行
線形需要曲線を正しく指定してください
本ツールでは、数量で表した需要式 Q = a - bP を使用します。demand_intercept の値は a であり、価格がゼロの場合の需要量です。demand_slope は正の大きさ b ですので、価格が通貨1単位上昇するたびに数量は b 単位減少します。マイナス記号は式に含まれているため、b を負の数で入力しないでください。a を b で割った値は、需要量がゼロになる留保価格です。直線をそれより上まで延長すると需要量が負になるため、変更前と変更後の価格はいずれもゼロ以上、留保価格以下である必要があります。測定単位は一貫させてください。数量を千個単位で入力した場合、余剰も通貨千単位となり、個数で入力した場合は通常の通貨単位となります。この明示的な形式により、前提と比較結果を確認しやすくなります。
厚生変化の計算方法をご確認ください
消費者余剰とは、購入された数量について、需要曲線より下かつ市場価格より上にある面積です。需要曲線が直線の場合、この面積は三角形になります。高さは留保価格と実際の価格との差、底辺はその価格での需要量です。本ツールは、変更前の価格について高さと数量と2分の1を掛け、変更後についても同じ計算を行い、新しい余剰から古い余剰を差し引きます。正の結果は通常、値下げによる買い手の利益を表します。負の結果は通常、値上げによる損失です。この計算には、購入を続ける買い手の支払額が変わる効果と、数量の変化に伴って限界的な買い手が市場へ出入りする効果の両方が含まれます。変更前後の数量、余剰額、変化の絶対値、効果の判定を表示するため、各段階をご確認いただけます。
結果と適用範囲を適切に解釈してください
出力は、安定した線形需要曲線を前提とする部分均衡の推定値としてお取り扱いください。符号付きの consumer_surplus_change が中心的な厚生指標です。ゼロより大きければ買い手全体の利益、ゼロより小さければ損失、ゼロなら測定された余剰に変化がないことを示します。absolute_change は方向と切り離した変化の大きさです。このモデルは、2つの価格の間で需要の切片と傾きが変わらず、全員が同じ価格に直面し、幾何学的な面積を用いられる程度に財が分割可能であり、追加料金や品質変更がないと仮定します。生産者余剰、税収、外部費用、所得効果、社会的総余剰は計算しません。税、補助金、規制、企業の価格決定を検討する際は、売り手や第三者への影響と組み合わせてください。また、需要推定の精度を超える桁数を示しても、推定自体の不確実性は解消されません。
活用例
値上げ案をご評価いただけます
企業が推定された線形需要に沿って価格を上げた場合に、買い手が失う厚生を推定します。
値下げの便益をご測定いただけます
割引、補助金、または市場価格低下による消費者の利益を、一貫した需要の前提で数量化します。
経済学の設問をご確認いただけます
変更前後の数量、三角形の余剰面積、符号付きの厚生変化を検算します。
よくある質問
符号付きの変化は何を意味しますか?
新しい余剰から古い余剰を引いた値です。正なら買い手の利益、負なら買い手の損失を表します。
どの形式の需要曲線を入力すればよいですか?
Q = a - bP をお使いください。demand_intercept が a、demand_slope が正の大きさ b です。
価格が留保価格を超えてはいけないのはなぜですか?
線形モデルでは、それより上で需要量が負となり、経済的に意味のない延長になるためです。
消費者余剰の単位は何ですか?
価格の単位と数量の単位を掛けたものです。数量に選んだ倍率が結果にも維持されます。
総厚生や死荷重も計算されますか?
いいえ。2つの価格での消費者余剰とその差のみを測定し、生産者、政府、外部効果は含めません。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/econ/consumer-surplus-change-price \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"demand_intercept":100,"demand_slope":2,"old_price":20,"new_price":30}'const res = await fetch("https://api.kit.forhosting.com/econ/consumer-surplus-change-price", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"demand_intercept": 100,
"demand_slope": 2,
"old_price": 20,
"new_price": 30
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/econ/consumer-surplus-change-price",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"demand_intercept": 100,
"demand_slope": 2,
"old_price": 20,
"new_price": 30
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/econ/consumer-surplus-change-price", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"demand_intercept":100,"demand_slope":2,"old_price":20,"new_price":30}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"demand_intercept":100,"demand_slope":2,"old_price":20,"new_price":30}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/econ/consumer-surplus-change-price", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"demand_intercept": 100,
"demand_slope": 2,
"old_price": 20,
"new_price": 30
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "econ.consumer_surplus_change_price",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |