価格下限による超過供給の計算ツール
拘束力のある価格下限は市場価格を均衡価格より高く保つため、売り手の供給量が増える一方で、買い手の需要量は減少します。この計算ツールでは、線形の需要式と供給式から、その結果生じる超過供給を求めます。各曲線の切片、正の傾きの大きさ、規制された最低価格を入力してください。競争均衡、価格下限における需要量と供給量、そして政策によって生じる数量差を確認できます。
無料で実行
一貫した線形の需要曲線と供給曲線を入力します
このツールは需要に Qd = a - bP、供給に Qs = c + dP を使用します。a には需要量の切片、b には右下がりの需要曲線の傾きの正の大きさを入力します。c は供給量の切片、d は右上がりの供給曲線の正の傾きです。供給曲線が価格軸の正の位置を通る場合など、供給の切片は負でも構いませんが、2つの傾きは必ず正でなければなりません。数量は、月間トン数、住宅戸数、労働時間千時間など、すべて同じ単位にそろえます。価格についても通貨と対象期間を統一してください。需要の傾きに負号を付ける必要はありません。式に減算が含まれているためです。また、入力した式が対象市場の妥当な範囲を表しているかご確認ください。線形モデルは観測範囲から離れると不可能な負の数量を予測することがあるため、いずれかの曲線で数量が負になる価格下限はエラーになります。
価格下限が超過供給を生む理由を確認します
まず、需要量と供給量を等しくして競争均衡を求めます。ここでの式では、均衡価格は (a - c) を (b + d) で割った値であり、均衡数量はその価格をいずれかの曲線に代入した値です。価格下限が拘束力を持つのは、均衡価格を厳密に上回る場合だけです。より高い規制価格では、消費者は需要曲線に沿って購入量を減らし、生産者は供給曲線に沿って販売希望量を増やします。したがって、超過供給は価格下限での供給量から需要量を引いたものです。これは数量としての超過供給であり、生産者余剰、消費者余剰、財政費用、社会的余剰ではありません。それらは面積や支出を表しますが、この結果は数量の差を表します。入力した価格下限が均衡価格以下なら、この単純なモデルでは市場を拘束しないため、ゼロや負の差を余剰と呼ばず入力エラーを返します。
結果を解釈して政策シナリオを比較します
需要量は規制価格で買い手が購入を希望する量、供給量は売り手が販売を希望する量です。その差は、その価格で通常の取引相手を見つけられない在庫、生産物、労働力などの市場数量を表します。均衡の項目は、政策介入が市場をどれだけ動かしたか説明する際の基準になります。それぞれの候補が均衡価格より高く、かつ曲線が妥当な範囲にある限り、異なる価格下限を入力して政策案を比較できます。多くの教科書的な市場では、価格下限が高いほど需要が減り供給が増えるため、超過供給も大きくなります。ただし、実際の制度では政府による余剰購入、生産割当、取引上の摩擦、期待の変化などが結果を変える場合があります。この計算は、入力された2本の線形式が直接示す比較静学上の結果としてお使いください。死荷重、政府支出、保管費用、税、割当、闇市場、動学的反応は、それらが入力曲線に既に反映されていない限り推計しません。
活用例
農産物の支持価格を評価する
保証最低価格が競争均衡を上回る場合に、売れ残る農産物の数量を推計できます。
最低賃金モデルを分析する
労働需要と労働供給を線形曲線として扱い、拘束力のある最低賃金で生じる労働の超過供給を計算できます。
経済学の課題を確認する
価格下限の設問について均衡と超過供給を検算し、厚生上の余剰との混同を防げます。
よくある質問
計算される余剰は何を表しますか?
拘束力のある価格下限において、供給量が需要量を上回る単位数を表します。
生産者余剰と同じものですか?
異なります。このツールは超過供給の数量を返します。生産者余剰は面積であり、別の計算が必要です。
価格下限が均衡価格より高い必要があるのはなぜですか?
競争均衡以下の価格下限は市場を拘束せず、モデル上の超過供給を生まないためです。
需要の傾きは負の数で入力しますか?
いいえ。Qd = a - bP を使用するため、b には正の大きさを入力してください。
供給の切片は負でもよいですか?
はい。経済的に意味のある範囲で、均衡時と価格下限時の価格および数量が非負であれば使用できます。
1回の計算料金はいくらですか?
API の料金は1回 $0.002 です。計算は決定論的で、ネットワークサービスや予測モデルを使用しません。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/econ/price-floor-surplus \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"demand_intercept":100,"demand_slope":2,"supply_intercept":10,"supply_slope":1,"price_floor":40}'const res = await fetch("https://api.kit.forhosting.com/econ/price-floor-surplus", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"demand_intercept": 100,
"demand_slope": 2,
"supply_intercept": 10,
"supply_slope": 1,
"price_floor": 40
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/econ/price-floor-surplus",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"demand_intercept": 100,
"demand_slope": 2,
"supply_intercept": 10,
"supply_slope": 1,
"price_floor": 40
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/econ/price-floor-surplus", 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,"supply_intercept":10,"supply_slope":1,"price_floor":40}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"demand_intercept":100,"demand_slope":2,"supply_intercept":10,"supply_slope":1,"price_floor":40}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/econ/price-floor-surplus", 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,
"supply_intercept": 10,
"supply_slope": 1,
"price_floor": 40
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "econ.price_floor_surplus",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |