先物契約計算機
契約サイズ50の買いを2枚、4,500で建てて4,512.25で決済すると、12.25ポイント×50×2で1,225の利益です。サイズ、2つの価格、枚数、売買の方向を入れると決済後の損益が分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 契約サイズ
- 50
- エントリー価格
- 4,500
- エグジット価格
- 4,512.25
- 契約数
- 2
- 位置
- Long
- 価格変動
- 12.25
- 契約あたりの損益
- 612.5
- 損益
- 1,225
- エントリー時の想定元本
- 450,000
上場先物契約は、将来の期日に原資産の一定数量を売買する標準化された約束であり、それを保有した結果の現金は生の価格差そのものではありません。価格差に契約サイズと建玉枚数を掛けたものです。本先物契約計算機は、契約サイズ(1ポイントの動きの現金価値)、建値、決済値、枚数を受け取り、建玉の符号付き損益を返します。ロングは決済が建値を上回れば利益、ショートは決済が建値を下回れば利益です。非正の乗数は上場契約を表さないからです。
先物契約の損益が実際に測っているもの
先物契約は現金決済の株式ロットではありません。指数・原油・金属の印刷された1ポイントの動きは、取引所が定める固定の金額に対応します。それが契約サイズであり、乗数またはポイントバリューとも呼ばれます。
E-mini S&P 500 は指数1ポイントを五十ドルで掛け、典型的な原油契約は1バレルあたり1ドルを千バレルで掛け、百トロイオンスの金契約は1オンスあたり1ドルを百で掛けます。決済済み建玉の現金結果は、したがって価格差にその乗数と枚数を掛け、サイドの符号を付けたものです。ロング保有者は原資産の買いなので、建値から決済への上昇は利益、下落は損失です。
ショート保有者は同じ標準チケットの反対側なので、建値から決済への下落は利益、上昇は損失です。式は意図的に二つの約定だけに閉じます。残存期間を割り引かず、ライブのマークを取らず、手数料も取引所費用も引きません。
チケットが閉じたあとのブロッターの問いに答え、それは先物入門のワークシートの問いでもあります。一部の商品先物はゼロ未満で印刷されたことがあるため、価格は負でも構いません。算術は成り立ちます。 結果は profit、loss、breakeven として報告されるので、依頼者は現金結果の符号を再検査せずに分岐できます。
セッション中の変動証拠金が必要なら、ご自身の証拠金ワークシートと組み合わせてください。
活用例
閉じたチケットのブロッター再集計
先物の約定対を、価格差に契約サイズと枚数を掛け、ロングまたはショートの符号を付けて現金損益に変換します。デスクの表計算は開きません。
教室と試験の採点
契約サイズがゼロまたは負なら拒否し、生の指数ポイントをドル扱いしない決定的なオラクルで、先物損益の設問を採点します。
よくある質問
先物契約の損益はどう計算しますか?
ショートでは価格差が逆になります。結果は現金であり、生のポイントではありません。
先物のロングとショートはどう違いますか?
ロングは決済が建値を上回ると利益です。ショートは決済が建値を下回ると利益です。position を省略すると既定は long です。
先物の契約サイズとは何ですか?
契約サイズは1契約あたり1ポイントの値動きの現金価値で、乗数またはポイントバリューとも呼ばれます。例: E-mini S&P 500 では指数1ポイントあたり 50 ドルです。
手数料や取引所の費用は差し引かれますか?
差し引かれません。結果は2つの約定価格の間の損益だけです。手数料、取引所の費用、証拠金のコストは含まず、リアルタイムの価格も使わないので、費用はあとで差し引いてください。
先物の価格がマイナスになることはありますか?
あります。一部の商品先物はゼロを下回って取引されたことがあるため、建値と決済価格のどちらもマイナスを入力できます。価格差×契約サイズ×枚数で損益が出る計算はそのまま成り立ちます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/fin/futures-contract \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"contract_size":50,"entry_price":4500,"exit_price":4512.25,"contracts":2}'const res = await fetch("https://api.kit.forhosting.com/fin/futures-contract", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"contract_size": 50,
"entry_price": 4500,
"exit_price": 4512.25,
"contracts": 2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/fin/futures-contract",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"contract_size": 50,
"entry_price": 4500,
"exit_price": 4512.25,
"contracts": 2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/fin/futures-contract", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"contract_size":50,"entry_price":4500,"exit_price":4512.25,"contracts":2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"contract_size":50,"entry_price":4500,"exit_price":4512.25,"contracts":2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/fin/futures-contract", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"contract_size": 50,
"entry_price": 4500,
"exit_price": 4512.25,
"contracts": 2
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fin.futures_contract",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
契約サイズがゼロまたは負のとき、タスクは invalid_input で失敗し課金されません。
先物契約の損益が実際に測っているもの
本エンドポイントは閉じた取引の現金損益だけを返します。
入力契約、応答の形、誤り時のふるまい
上場契約は非正のポイントバリューを持てず、その失敗は課金されないからです。ゼロ未満で印刷する商品でも結果が定義されるよう、両価格は負でも構いません。contracts は枚数で、ゼロより真に大きい有限数でなければなりません。position は閉じた列挙 long または short で、省略時は long です。別名は side と direction です。例: サイズ五十のロング2枚を四千五百で建て、四千五百十二と四分の一で閉じると利益は千二百二十五です。十二ポイントと四分の一に五十と2を掛けた現金だからです。必須4欄と任意のサイドを含む JSON 本体を POST してください。contract_size は乗数で、ゼロより真に大きい有限数でなければなりません。別名 multiplier、size、point_value、contract_multiplier は同じ欄に対応します。契約サイズがゼロまたは負なら contract_size を名指しして invalid_input で失敗します。entry_price は建玉を建てた約定で有限数でなければなりません。別名は entry と open_price です。exit_price は建玉を閉じた約定で有限数でなければなりません。別名は exit と close_price です。別名は quantity、n、num_contracts です。それ以外の文字列は position を名指しして invalid_input で失敗します。数値欄は JSON の数でも数値文字列でも受け付けます。欠落、空文字、非有限値は該当欄を名指しして invalid_input で失敗します。成功時は5入力をエコーし、price_change を決済マイナス建値、profit_loss_per_contract、全体の profit_loss、notional_entry と notional_exit、outcome を profit・loss・breakeven、短い公式文字列を返します。
先物契約の損益計算機が役立つ場面
デスクや個人トレーダーは、乗数を黙って落とす表計算を開かずに、閉じたチケットを先物契約計算機で再集計します。トレード日記とバックテストのパイプラインは、手数料を捏造せず、気配ベンダーを呼ばず、誰かが後で四因子の積を書き換えてもずれない小さな parse 契約を必要とします。検証失敗は残高を消費しません。教室や試験対策の基盤は契約サイズ、建値、決済、枚数を送り、profit_loss を固定して、採点者が算術とロング対ショートの符号の両方を評価できるようにし、生の価格差を現金として受け入れません。製品チームは、ランタイムをまたいでもビット安定でなければならない継続的インテグレーション用の同じ JSON を置き、結果は八桁まで half-up で丸めます。実装は純粋な parse の tier A なので、成功した呼び出しは公表された基本料金 $0.002 で、モデルトークンも外向きネットワークもありません。契約サイズを真に正、枚数を真に正、position を閉じた列挙に保ち、丸めた profit_loss をテストに固定すれば、宿題・ブロッター確認・エッジワーカー向けに再現可能な先物結果が得られ、自前の清算エンジンを立てる必要はありません。
連携の活用例
日記とバックテスト用フィクスチャ
閉じた先物チケットの profit_loss を、ライブ気配も清算ライブラリも引かずに、トレード日記または継続的インテグレーションのフィクスチャへ固定します。
技術的な質問
契約サイズがゼロまたは負だとどうなりますか。
タスクは invalid_input で失敗します。上場先物は非正の乗数を持てないため、ゼロまたは負の contract_size は拒否され、課金されません。
先物契約計算機の料金はいくらですか。
ブラウザの用具は無料です。API 要求は成功した呼び出しあたり $0.002 の前払い KIT 残高を使い、無効な入力は課金されません。