ロット計算・意思決定ガイド · 14

一部を利確しても、残ったロットの停止損失は消えない

1.00ロットの買いを100で建て、0.40ロットを104で決済すると、160米ドルの実現益と0.60ロットの未決済ポジションが同時に残ります。残りが98の停止価格へ達する仮定では未実現部分が−120米ドル、総費用12米ドルを含む合計は+28米ドルです。

先に押さえる三点

  • 各決済の約定数量を初期数量から引き、残存ロットを取引記録と照合する。
  • 実現損益と残存ポジションの停止時損益を分けてから同じ通貨で合算する。
  • プラスの実現益だけを見ず、残りの停止価格、費用、価格不連続も条件として表示する。

長期参照の見取り図

条件が変わるたびに使える三段階

相場予想ではなく、入力・計算・適用外判定の順を固定すると、同じ記事を繰り返し検算に使えます。

  1. 入力と単位をそろえる式と定義へ残存数量・分割決済の実現粗損益・残りが停止した場合の合計
  2. 仮想例で計算を戻す数値表と手順へ1.00ロットから0.40ロットを104で決済した後の二つの停止条件
  3. 適用外と次の確認を決める判断ルールと反例へ残存数量は初期約定数量から確認済みの決済約定だけを引いて求める。

分割決済は二つの損益状態を作る

0.40ロットを決済した約定は実現損益になり、残り0.60ロットは価格変動を受け続けます。一部決済の直後に全体を決済済みと扱ったり、反対に実現分を未実現へ戻したりすると、数量と損益が一致しません。

取引履歴では親ポジション、各決済約定、決済数量、価格、時刻、残存数量を結びます。ネットポジション口座では反対売買が新規ではなく削減として記録されたかも確認します。

  • 初期、決済済み、残存の数量恒等式
  • 実現と未実現の別フィールド
  • 費用控除前と費用控除後の別表示

実現益は決済した数量だけで計算する

買い1.00ロットを100で建て、0.40ロットを104で決済し、倍率が100米ドル/価格単位/ロットなら、実現粗損益は0.40 × (104 − 100) × 100 = 160米ドルです。残り0.60ロットの含み益をこの160米ドルへ先取りして加えません。

先入れ先出し、平均原価、個別ロット指定など口座の原価規則が異なる場合、表示された実現損益と自前計算の入口原価が変わり得ます。規則と原価を保存します。

残存ロットを停止価格まで再評価する

残り0.60ロットが98で停止すると仮定すれば、入口100に対する残存損益は0.60 × (98 − 100) × 100 = −120米ドルです。実現粗益160米ドルからこの120米ドルと総費用12米ドルを引くと、全体の条件付き結果は+28米ドルです。

停止を95に置くストレス条件では残存損益が−300米ドルとなり、同じ実現粗益があっても合計は−152米ドルへ変わります。『一部利確したから安全』ではなく、残数量と実行可能な停止条件から判断します。

  • 基準停止98では+28米ドル
  • ストレス停止95では−152米ドル
  • いずれも総費用12米ドルを控除

費用は全決済が終わる前にも予約する

既に発生した入口・部分決済手数料は実額を使い、残存ポジションの将来決済費用は明示した仮定として予約します。スプレッド費用が約定記録に含まれる場合、別の固定費として二重控除しません。

口座通貨が損益通貨と違う場合は、記事12の損失側換算係数と時刻を使ってから合算します。

  • 発生済み費用と将来費用を分ける
  • 費用控除前、費用、費用控除後を同じ通貨で表示する
  • 接続仕様の費用内包関係を確認する

未約定の入口注文との境界

記事13は、入口注文の一部しか約定せず、残りがまだライブかもしれない状態を扱います。本稿では初期ポジションは成立済みで、0.40ロットの決済も確認済みです。残りは未約定注文ではなく保有中の0.60ロットです。

  • 未完了の新規注文に残る数量なら記事13
  • 確認済みの部分決済後に残る保有数量なら本稿

建値停止は次の記事で別検証する

本稿の+28米ドルは98で約定するという指定価格の条件付き算術です。停止を100の建値へ移した後も、スプレッド、手数料、不利約定、ギャップでゼロ損益が保証されない問題は記事15が扱います。ここでは『停止注文を置いた価格』と『実際の決済価格』を同一だと一般化しません。

検算可能な例

1.00ロットから0.40ロットを104で決済した後の二つの停止条件

入口100、倍率100米ドル/価格単位/ロット、決済価格、停止価格、総費用はすべて教育用の仮想データです。税務上の損益や特定商品の実績ではありません。
停止条件初期数量ロット決済済み数量ロット残存数量ロット実現粗損益米ドル残存停止時損益米ドル総費用米ドル停止時の合計純損益米ドル
停止価格9810.40.6160-1201228
ストレス停止価格9510.40.6160-30012-152

計算手順

  1. 残存数量は1.00 − 0.40 = 0.60ロット。

  2. 実現粗損益は0.40 × (104 − 100) × 100 = 160米ドル。

  3. 98停止条件の残存損益は0.60 × (98 − 100) × 100 = −120米ドル。

  4. 合計純損益は160 − 120 − 12 = 28米ドル。

  5. 95停止のストレス条件では0.60 × (95 − 100) × 100 = −300米ドル、合計は160 − 300 − 12 = −152米ドル。

結論: 0.40ロットの実現益だけでは残りの安全性を決められず、0.60ロットの停止価格と総費用を含む合計は98条件で+28米ドル、95条件で−152米ドルとなる。

この結論を適用しない条件: 確認済み実現純益が、明示した最悪約定価格までの残存損失と全残余費用の合計を上回るなら、そのモデル内では合計がプラスに固定される。ただし価格を飛び越えるギャップを除外した保証にはならない。

計算の骨格

残存数量

先に式の役割を把握し、その後で数値例を追うと判断の流れを確認しやすくなります。

01

残存数量

残存ロット = 初期ロット − 各部分決済ロットの合計
初期ロット: 確認済み初期ポジション数量
部分決済ロット: 重複を除いた各部分決済の約定数量

式を言葉にすると: 成立済みポジションから確認済み決済だけを差し引く。

この結論を適用しない条件: 初期ロットと各部分決済ロットは0以上で同じ数量単位とし、Σ部分決済ロット ≤ 初期ロットを満たす場合だけ計算します。取消、拒否、未約定の決済注文は部分決済ロットへ含めません。

02

分割決済の実現粗損益

分割決済の実現粗損益 = 各決済ロット × 売買方向 ×(決済価格 − 入口価格)× 1ロット・1価格単位当たり価値 の合計
部分決済価格: 各部分決済の約定価格
入口価格: 価格差損益へ用いる入口価格または原価基準。ここへ含めた費用は総費用から除く
1ロット・1価格単位当たり価値: 1ロット・1価格単位当たりの通貨価値
売買方向: 買いポジションは+1、売りポジションは−1

式を言葉にすると: 決済済み数量だけの価格差を通貨額へ変換する。

この結論を適用しない条件: 各部分決済ロットが0以上、1ロット・1価格単位当たり価値 > 0で、売買方向を+1または−1に確定し、価格と1ロット・1価格単位当たり価値を同じ通貨・価格単位へそろえた場合だけ計算します。原価規則は口座仕様に合わせます。

03

残りが停止した場合の合計

残存分が損切りされた場合の合計損益 = 実現粗損益 + 残存ロットの価格差損益 − 総費用
損切り価格: 残存数量の仮定決済価格
総費用: 入口価格へ含めていない入口、部分決済、残存決済の総費用
売買方向: 買いポジションは+1、売りポジションは−1

式を言葉にすると: 実現分、残存分、費用を一つの条件付き全体結果へまとめる。

この結論を適用しない条件: 0 ≤ 残存ロット ≤ 初期ロット、1ロット・1価格単位当たり価値 > 0、総費用 ≥ 0で、売買方向、価格、通貨単位が確定した場合だけ計算します。入口価格へ含めた費用は総費用へ重複計上せず、停止価格での約定も保証しません。

分割決済を二つの残高変化として捉える

1.00ロットの成立済みポジションから0.40ロットを決済すると、確認済み決済の実現損益と0.60ロットの未決済ポジションが同時に生じます。一部利確という一語で両者をまとめると、確定した金額と将来変わる金額の境界が消えます。入口約定、各決済約定、残存数量を別台帳にし、同じ取引識別子へ関連付けます。決済注文を送信しただけでは部分決済ロットへ含めず、約定確認後に数量を減らします。決済要求は操作履歴として保持しますが、約定確認と同じ色で表示しません。送信後に拒否された0.40を差し引くと残量を過小表示するため、約定識別子が付くまで保留欄に置きます。決済要求と約定確認を別色・別状態で示し、拒否された0.40ロットを保有数量から先に引かないようにします。

本記事の残数量は、記事13で扱う未約定の入口注文ではありません。すでに成立した建玉のうち、まだ決済していない数量です。0.60ロットには市場価格変化が直接作用し、保護注文の対象になります。入口残注文なら将来建玉が増える予約として扱います。この状態差を数量という同じ列だけで表すと計算式を取り違えるため、建玉残量と新規注文残を別型にします。記事13との型分離は名称だけでなく遷移規則にも反映します。新規注文残量は約定で建玉を増やし、建玉残量は決済で減るため、同じ更新事象処理を符号反転だけで共有しません。建玉残量と新規注文残には反対の遷移規則を持たせ、同じ数量列から符号だけで状態を推定しません。

分割決済後の画面には当初約定済み数量、確認済み決済、残存建玉を並べ、初期ロット = Σ部分決済ロット + 残存ロットの保存則を表示します。取消、拒否、未約定の決済はΣ部分決済ロットへ入りません。明細が遅延して残差が出る間は新しい残存損失を確定せず、同期中とします。数量が一致した場合も、使用した約定識別子と基準時点時刻を保存し、後日の訂正でどの版が変わったか追えるようにします。保存則の残差には、未反映約定数と最古更新事象時刻を添えます。残差が自然解消した場合も不一致版を削除せず、非同期遅延の頻度を品質指標として集計します。保存則に使った約定識別子と基準時刻を版へ固定し、遅延解消後も不一致が生じた履歴を削除しません。

複数回に分けて決済する場合は、各行へ数量、価格、売買方向、費用、サーバー時刻を持たせます。最終残量だけを上書きすると、実現損益の価格加重や費用を再現できません。0.40一回の教育例は構造を簡潔に示す標本であり、実運用が一回決済に限られるという意味ではありません。部分約定した決済自身も個別約定へ分解し、注文時数量を確定決済量として足しません。複数決済を価格順に並べ替えても実現合計が変わらないことを確認します。一方、原価方式が先入れ先出しなら入口ロットとの対応順が重要なので、表示順と会計割当順を分けて保存します。集約表示から任意の決済行へ戻れるリンクも検査します。各決済行の明細へ戻れるリンクを保持し、先入れ先出しの会計割当順と画面表示順を混同しないようにします。

残存数量を確認済み決済から再構成する

残存数量は残存ロット = 初期ロット − Σ部分決済ロットで求めます。初期ロットと各部分決済ロットは同じ数量単位、非負で、決済合計が当初を超えないことを検査します。負の残数量を0へ丸めると、重複明細や反対売買の誤分類を隠します。0未満なら建玉反転、過剰決済、重複約定を調べ、状態を確定しません。数量刻みの微小誤差は十進数または整数スケールで扱い、許容差の根拠を記録します。刻み=0.01を二進浮動小数点で引いた結果が0.599999になっても、表示丸めだけで0.60へ直しません。百分の一ロットを一単位とする整数へ変換し、保存則と送信単位の双方を同じ表現で検査します。残数量が負になった場合は0へ丸めず、重複約定、反転、過剰決済の三経路を個別に調査します。

初期ロットは注文送信量ではなく、入口の確認済み約定数量です。1.00を要求して0.80だけ成立し、その後0.40を決済したなら残数量は0.40であり0.60ではありません。入口と決済の双方で約定台帳を使い、取引配分や口座間振替がある場合は専用イベントとして調整します。履歴にない手動補正を当初へ入れず、調整理由、操作者、時刻を別行にします。入口の部分約定が複数価格なら初期ロットだけでなく原価層も保持します。後の決済を単一入口価格へ割り当てられるかは口座方式で決まり、数量一致だけでは損益を確定できません。入口訂正が届けば、影響する全決済の原価計算を再承認待ちにします。入口訂正が届いた時点で関連する全決済の原価計算を保留に戻し、旧入口数量による純損益を確定表示しません。

決済数量を集計するときは、売買方向が元建玉を減らすか確認します。ロングへの売りは通常削減ですが、数量を超えれば反転する可能性があります。ショートへの買戻しも同様です。売買方向だけで決めず、ブローカーの縮小約定、決済約定、新規約定などの分類を読みます。OANDAの注文約定明細がこれらを区別することは、約定を単純な正負数量へ潰さない根拠になります。削減と保有が同一約定内に混在する場合、ブローカーが返す割当量を優先して二行へ分解します。分類が欠ける接続仕様では超過量を検出し、自動的な全量削減を避けます。同一約定内の削減部分と新規部分を提供元配分で分け、反対建玉の入口を元建玉の実現損益へ含めません。

分割後に追加新規があれば、同じ取引として平均原価へ統合されるか別取引になるかは口座仕様で異なります。本稿の単純式は当初の新規建玉を固定した分割決済を対象とします。追加新規を混ぜる場合は新しいロットの原価と数量を層別管理し、0.60へただ加えません。適用範囲外を同じ表へ押し込むと、実現損益と残存原価の双方が誤るため、計算モデルを分岐します。追加新規が存在するケースを単純な分割決済から除外した理由を状態へ記録します。モデル未対応を残数量0や損益0で表現せず、必要な原価明細を列挙します。追加新規を検出した更新事象識別子と未対応理由を残し、手作業で単純モデルへ戻す操作を監査します。追加新規を検出した更新事象を記録し、単純分割決済モデルへ手動で戻す操作には承認理由を要求します。

実現粗損益を売買方向込みで算出する

各決済の実現粗損益は部分決済ロット × 売買方向 × (部分決済価格 − 入口価格) × 1ロット・1価格単位当たり価値です。ロングは売買方向=+1、ショートは−1とし、数量は非負で保持します。入口100、決済104、倍率100米ドル/価格単位/ロット、0.40ロットなら160米ドルです。式の160は手数料控除前であり、実現純益と呼びません。価格、倍率、数量単位、通貨を変数辞書へ結び付け、表示された差額だけを保存しないようにします。160の中間値は丸め前価格と乗数から再計算し、表示された104や100を逆利用しません。契約仕様版も式へ結び、倍率変更後の再生で現在値を混ぜないようにします。粗損益160米ドルの変数には価格、倍率、数量、契約仕様版を結び、表示済み差額から元入力を逆算しません。

複数の入口価格がある場合、入口価格にどの原価方式を使うかが結果を変えます。平均原価、先入れ先出し、指定ロットなど口座仕様を確認し、都合のよい価格を選びません。ブローカー表示と自前計算が違う場合は、原価方式、日次リセット、通貨換算、費用内包を順に調べます。自前値を画面値へ合わせるため入口価格を逆算せず、明細定義の差を記録します。原価方式の選択履歴には口座設定の取得時刻を添えます。設定が後日変わった場合、過去約定へ新方式を遡及適用せず、明細が用いる期間別ルールを確認します。差異照合には提供元明細の原価ラベルを保存し、表示額だけから先入れ先出しと推測しません。原価方式の取得時刻と明細期間を保存し、現在の口座設定を過去決済へ遡及適用して差を消しません。

IBKR 学習資料が未決済建玉の損益を未実現、売却後を実現と分け、実現時に関連手数料を考慮すると説明することは、状態分離の根拠になります。本稿の価格100、104、倍率100は教育用仮定であり、資料がその収益性を支持するものではありません。直接支援される概念と、記事固有の数値例を出典欄で分けます。引用監査では、実現済み・未実現の定義を支える文と、仮想160を生成した式を別要素にします。出典リンクの近接だけで数値が公的実績に見えない表示を保ちます。引用元の更新日を定期確認し、用語定義が変われば記事の直接支援範囲を再レビューします。出典が支える実現・未実現の区分と仮想160米ドルを表示層でも分け、公的な収益実績のように見せません。

実現という語も、約定確認と明細確定の段階を区別します。約定受信直後の暫定費用と、後日確定する手数料や税務上の取扱いが違う場合があります。実現粗損益は価格差から先に確定し、費用確定待ちを別状態で持ちます。純額が未確定なのに160米ドルを再投資可能資金として自動加算しません。費用訂正待ちの実現純損益には暫定印と未確定成分数を示します。粗損益額を他画面へコピーする操作には粗損益であることをデータ属性にも含め、純額欄へ貼り付けません。確定前に転記を試みた操作は拒否理由とともに記録し、後から純額確定時に自動再実行しません。費用確定前の粗損益を利用可能資金へ転記せず、純額確定後にも過去の拒否操作を自動再実行しません。

残りが損切りされた条件を別想定で置く

0.60ロットが停止価格98で決済される仮定では、残存価格差損益は0.60 × (98−100) ×100 = −120米ドルです。これは損切り価格で実際に約定するという保証ではなく、指定価格条件のシナリオ計算です。残存数量、新規価格基準、損切り、乗数を一つの想定識別子へ固定し、損切りを変更したら新しい版を作ります。過去の98条件を上書きせず、どの時点でどの仮定を見ていたかを残します。98の想定の作成時刻と損切り注文の最終確認時刻を分けます。分析画面で98を選んでも保護注文が受理されていなければ、損切り成立時と保護済みの二状態を一致させません。98の想定作成時刻と損切り注文の受理時刻を分け、分析価格が画面にあるだけで保護済みと判定しません。

ストレス停止95なら残存部分は−300米ドルとなります。98と95を平均して単一の予測損失へせず、通常条件とストレス条件を別行にします。二つの価格に確率を勝手に割り当てず、境界検査として利用します。停止価格が分析上の無効化点なのか、執行ストレス用の仮想価格なのかをラベルで分けます。同じ価格欄へ入れると、戦略規則変更と約定余裕変更の原因を区別できません。ストレス価格95の選択根拠には履歴、仕様、純粋仮定の区分を付けます。範囲を変えた場合は新想定識別子を発行し、悪化した結果だけを残す選択的更新を防ぎます。ストレス幅の採用履歴を期間別に比較し、損失結果を見た後だけ幅を変える選択バイアスを検出します。通常98とストレス95では他入力を固定し、結果を見た後に不利な幅だけを残す選択的な更新を防ぎます。

残存損益は未実現であり、停止が約定するまで口座結果として確定しません。現在市場価格の含み益と損切り想定の損益も別概念です。画面では時価評価、損切り成立時の価格成分、実現粗損益を三列にし、一つの合計損益へ無説明で合算しません。時刻の違う市場価格と損切り仮定を混ぜる場合は基準時点を明示します。時価評価の価格配信時刻が古い場合、その列だけを古いにします。実現明細と損切り想定まで一括して古い扱いにせず、各成分の時計を独立表示します。時価評価、損切り成立時、実現粗損益の各時計を独立表示し、一列の古さで全成分を失効させません。

残存ロットが0なら残存停止シナリオは不要です。損切り価格が欠測、方向と矛盾、契約倍率が0、通貨が不一致なら計算不能であり0損益ではありません。失敗状態を数値0と分けることで、完全決済と入力欠測を区別します。残存数量が正なのに保護注文がない場合は未保護として表示し、架空の損切りを自動補完しません。未保護状態では損失を0にせず、損切り想定を算出不能と保有数量0.60を残します。後から損切りが受理された時点で新しい価格成分を作り、空白を遡及補完しません。残数量が正で保護注文がない場合は未保護と明記し、損切り価格欠測を損失0へ変換しません。

実現、残存、費用を最後に合算する

停止条件での合計は実現粗損益 + 残存分の損切り損益 − 総費用です。98条件では160−120−12 = 28米ドル、95条件では160−300−12 = −152米ドルとなります。順序を明示し、実現粗益160から総費用12を一度だけ控除します。入口価格へ費用調整を内包しているなら総費用へ同じ成分を足しません。各成分の包含済み項目集合を持ち、重複を検査します。式の三成分にそれぞれ更新事象識別子を持たせ、160、−120、12がどの明細版から来たか追跡します。合計28だけを保存せず、成分訂正時に影響する想定を逆参照します。成分識別子が欠けた合計は保存できても確定表示を付けず、再現不能箇所を直ちに表示します。合計28米ドルへ三成分の更新事象識別子を関連付け、どれか欠ける合計へ確定表示を付けないようにします。

総費用には入口、確認済み決済、将来の残存決済に関する費用が混在し得ます。既発生、見積り、未確定を別行にし、合計12がどの範囲かを注記します。米国投資家向け情報サイトが費用は投資価値を低下させると説明することは控除の必要性を支えますが、仮想12米ドルが実在口座へ適用される根拠ではありません。実口座では明細と料金体系を確認し、仮定費用を観測値と呼びません。12米ドルの内訳が入口4、決済4、将来損切り4という仮定なら、既発生と将来見積りを別状態にします。全て確定費用と見せず、残存決済が起きなければ発生しない成分を区別します。将来の損切り費用の仮定には数量0.60と料金版を結び、残量変更時に比例更新だけで済むかを再確認します。将来の損切り費用は0.60ロットと料金版へ結び、実際に決済されない可能性を既発生費用と分けます。

合計が+28でも残存建玉が安全になった、将来利益が保証されたとは言えません。98で約定する仮定の範囲だけで純額が正という意味です。価格が飛び越える、追加費用、換算変動があれば結果は変わります。反対に−152は95条件の算術であり、必ずその損失になる予測ではありません。想定範囲を結果ラベルへ含め、符号だけを大きく表示しないようにします。結果カードには想定名、価格の基準、費用確定度を同じ領域へ配置します。正負の色だけを先に読んでも、98と95の条件差が見える情報設計にします。音声読上げ機能でも想定名が符号より先に読まれる順序にし、色覚だけへ条件識別を依存させません。正負の色より先に想定名と価格基準を読める配置にし、+28を将来利益の保証へ広げません。

複数通貨の成分は合算前に口座通貨へそろえます。実現が約定時係数、残存が計算時係数なら時刻差を明示し、換算の影響を別に出します。日次参照レートを実現係数の代用にせず、取引記録の口座換算係数があれば用います。換算不能成分が一つでもある場合、既知部分だけを完全純損益と表示しません。換算時刻差が大きい場合、合計の幅を算出できるなら範囲で示します。取得不能なら既知成分の下限だけを純額と呼ばず、未換算通貨と金額を残します。換算範囲の上下限へ使った係数と時刻を保存し、幅だけを根拠なしに手入力できないようにします。換算不能な通貨成分を金額付きで残し、既知部分だけを完全な純損益として表示しないようにします。

売り建玉と複数決済で式の対称性を試す

ショートでは売買方向=−1により、入口100から96へ0.40ロット買戻すと同じ倍率で+160米ドルになります。残り0.60が102で停止する条件なら−120米ドルです。別の式を手作業で作らず、売買方向変数で対称に処理します。ロングとショートを価格軸で反転した標本が同じ金額構造になるかをテストし、符号の二重反転を検出します。対称テストの価格は100を中心に96と104、98と102のように組み、売買方向以外の入力を同一にします。期待符号が違えば、価格差か売買方向の実装を独立に調べます。対称検査例のハッシュを固定し、片側だけ入力を修正して比較条件が崩れた場合にテストを失敗させます。買い建玉と売り建玉の対称検査では価格軸以外を固定し、符号の二重反転を独立に検出します。

複数決済ではΣ(部分決済ロット × 売買方向 × 価格差 × 1ロット・1価格単位当たり価値)を明細ごとに合計します。0.20を103、0.20を105で決済した場合、単純に0.40×104としてよいのは数量加重平均が104になると確認できた場合だけです。異なる数量なら価格単純平均を使いません。個別行を残し、集計値から元明細へ戻れるようにします。数量加重平均へ集約した後も元の決済識別子一覧を失いません。将来一行が訂正された際、平均値だけを手修正せず、明細集合から実現を再生成します。集約値と元行の数量合計も同時に検査し、価格平均だけ正しい不完全データを通過にしません。集約後も元決済識別子を保持し、数量加重平均の一行訂正を明細集合から再生成できるようにします。

一つの決済が建玉を超えて反転した場合、超過分は新しい反対建玉の新規です。全数量を元建玉の実現へ入れると、残量が負になり損益原価も誤ります。ブローカーの縮小約定と新規約定を読み、削減部分と保有部分へ割り当てます。自動化が対応しない場合は計算を停止し、0へ切捨てしません。反転部分には新取引識別子と新しい建玉の原価を付けます。旧建玉の残数量を0へ閉じた版と、新建玉を開いた版を同じ約定から関連付け、二重計上を防ぎます。反転後の新建玉には独立損切りと費用見積りが必要です。旧0.60の想定を新売買方向へ符号反転して流用しません。建玉反転の超過分には新しい取引識別子と原価を付け、旧損切り想定を符号反転だけで流用しません。

価格0、負倍率、非数の数量、決済合計超過などの異常をロングとショート双方へ注入します。片方向だけ検査すると、売買方向分岐の一方が異常値を通す可能性があります。エラー後に前回の+28が画面へ残らず、コピーや発注連携から無効化されることまで確認します。例外時に画面を再読込しても前回値が復活しないかを検査します。無効スナップショットを端末内保存領域へ保存せず、原因コードと対象取引だけを復旧キューへ残します。復旧後は元取引を再取得して新スナップショットを作り、画面キャッシュの値だけを有効化し直しません。再取得時刻も記録します。異常後は元取引を再取得して新しいスナップショットを作り、端末キャッシュの+28を復活させません。

実現益を新しい予算へ自動転記しない

0.40ロットの実現粗益160米ドルは、残存0.60の損失余地を自動的に消しません。98条件なら価格差−120、費用12を合わせて+28ですが、95条件では−152です。一部利確済みという事実だけでリスク台帳を0へしないよう、実現、残存、費用を別々に更新します。損切りが変わるたび残存成分だけを再計算し、実現明細を改変しません。損切り変更後は0.60だけを再評価し、確定済み0.40の約定価格を現在値へ動かしません。実現と残存の更新頻度を分けることで、履歴改変を検出できます。損切り更新事象が取消された場合は前版へ戻るのではなく、サーバーで現在有効な保護注文を再照会します。損切り変更では残存0.60だけを再評価し、確定した0.40の約定価格を現在値へ動かさない履歴を保ちます。

実現純益を別の取引予算へ組み込むかはポートフォリオ方針であり、本記事の算術から自動決定しません。未確定費用、税務、通貨換算、全体ドローダウン制約を無視して粗損益160を利用可能予算へ足すと、同じ利益を複数計画へ配る可能性があります。資金台帳に転記するなら確認済み純額、転記時刻、配分識別子を使い、利用可能残高を一度だけ減算します。配分識別子は資金台帳で一意にし、同じ160米ドルの利益事象を二計画が全額参照したら過剰配分として止めます。利用可能額を粗損益ではなく確認済み純額から作る規則も版管理します。同じ利益事象を二つの計画が参照したら過剰配分として止め、粗損益を利用可能予算へ二重転記しません。

含み益はさらに不確定です。現在価格で残りが利益でも、損切りまでの想定損失と同じ金額ではありません。未実現価格&損失側を実現済み欄へ移し、追加数量の根拠にする操作を禁止します。取引基盤が合計価格&損失側だけを返す場合、明細から実現と保有を再構成し、分離不能なら新しい予算計算を保留します。取引基盤の合計損益しかない場合、分離不能の理由と対象期間を表示します。推定で実現と未実現を半分ずつ割らず、追加数量計算へ接続しません。分離不能期間に作られた分析レポートへ制限注記を埋め込み、後の再構成値と混在しない版表示を行います。取引基盤の合計損益しかない期間は分離不能と明示し、推定半分ずつを追加数量へ接続しないようにします。

予算転記の監査では、同じ約定利益が複数配分へ参照されていないかを確認します。利益事象識別子を冪等キーにし、取消や訂正で純益が減った場合は影響する未送信計画を失効させます。実現益が増えた結果だけを取り込み、後日の費用訂正を無視する片方向更新を避けます。費用訂正で利用可能額が減った場合、既約定建玉を自動決済はしませんが、未送信計画と予約枠を失効させます。影響先を配分参照から列挙します。影響先が既に送信済みか未送信かを区分し、外部状態を勝手に変更せず、監査通知と新規枠停止を分けます。費用訂正で利用可能額が減ったときは未送信枠だけを失効し、既約定建玉を勝手に決済しません。

損切り価格と実約定価格の境界を残す

本記事の98や95は損切り条件の価格であり、実際の約定価格ではありません。急変時には停止価格を飛び越えて約定することがあります。したがって残存分が損切りされた場合の合計損益は指定価格で成立した場合の想定であり、損失上限ではありません。記事15では、残存数量に不利な約定差と費用を加え、建値損切り後にも残る損失を扱います。二つの計算範囲を重複させないよう、損切り想定と約定ストレスを別ノードにします。損切り想定から約定ストレスへ進むとき、98を発動価格として残し、実約定・仮定約定を別価格へ置きます。二つの差が約定差であり、入口100との差と混同しません。損切り価格98と仮定約定価格を別項目へ置き、その差を入口価格からの距離と混同しないようにします。

ストップリミットを使う場合は価格制御と未約定リスクが交換されます。指値で損失額が固定されるとみなさず、市場が飛び越えたとき建玉が残る状態を別想定にします。保護注文種別、発動価格の基準、指値価格、注文有効期限を記録し、単に損切り=98という一欄へまとめません。ストップリミット注文の未約定想定では建玉数量が0.60のまま残るため、瞬時損失額だけで終わりません。監視時間、代替決済条件、追加価格範囲を未確定状態として示します。未約定が続く時間に価格が変わる想定を追加し、指値到達の有無だけでリスクが閉じないことを示します。ストップリミット注文の未約定中は0.60ロットを保有したままとし、指値到達だけで損失経路を閉じません。

実約定後は想定値を上書きせず、予定損切り損益と実約定損益を並べます。差を滑り、価格差、費用、換算へ分解し、説明不能残差を残します。後日の実績を使って当時損切り条件を予見可能だったように書き換えません。事前仮定の妥当性と実現照合は別の監査です。予定と実績の差分には当時利用可能だった執行履歴の版を付けます。結果が悪かった取引だけ後知恵でストレス幅を広げると、事前モデルの公平な評価になりません。当時モデルの評価では全取引へ同じ版を適用し、結果の良い標本と悪い標本で別のストレス規則を使いません。予定値と実績値を二行で残し、結果が悪い取引だけ後知恵でストレス幅を広げる改変を防ぎます。

契約上の保証付き仕組みが実約定上限を定める場合は、対象商品、費用、適用除外、時刻を仕様から確認します。画面の「保証」という語や希望価格だけを根拠にしません。保証範囲が確認できても、本記事の手数料や通貨換算を含むかを別途検査します。保証機能の適用除外がニュース発表、価格差、時間外などにある場合、該当更新事象との照合を行います。保証名だけを真にする真偽値ではなく、条件集合と適用判定を保存します。適用判定は注文時刻、更新事象種別、契約条項版へ結びます。条件不足なら保証あり・なしの二択へ丸めず不明を返します。保証費用が別建てなら総費用との重複も検査します。保証条項の適用は注文時刻、更新事象種別、契約版へ結び、名称だけの真偽値で有効化しません。

ブローカー表示との差を原価と費用へ分解する

取引基盤の実現価格&損失側が自前値と違うとき、計算器を表示へ合わせるため定数調整しません。まず入口原価方式、決済明細、契約乗数、売買方向、手数料、換算時刻を比較します。OANDAの全約定の出来高加重平均価格、半スプレッド費用、口座通貨換算係数などの区別は、単一表示額の裏に複数成分があることを示します。各成分へ明細識別子をリンクし、差額が消える順を記録します。差額調査では、全約定の出来高加重平均価格と半スプレッド費用の通貨の内包範囲も確認します。同じ米ドル表示でも口座換算済みかを判別し、換算を二度掛けないよう成分型を用います。表示差を原価、手数料、換算時刻へ順に分け、全約定の出来高加重平均価格へ係数を二度掛ける成分誤認を避けます。

日次清算や口座の価格&損失側のリセットがある商品では、入口からの全期間差額と日次表示が一致しないことがあります。表示期間、清算価格、持越しを確認し、同じ対象期間へそろえます。過去日の実現値を現在行へ二重加算せず、明細期間で分割します。日次リセット境界を跨ぐ建玉では、各期間の期首基準と清算調整を保存します。入口100からの全期間差と日次明細を同じ対象だと決めません。明細区切りがタイムゾーンでずれないよう、期間開始・終了を協定世界時と口座現地時間の双方で保持します。明細期間の開始と終了を協定世界時・口座時刻で持ち、日次清算額と入口からの全期間損益を同一視しません。

手数料が約定ごとに後着する場合、暫定純額と確定純額を版分けします。費用確定待ちを費用0と呼ばず、見積りまたは不明として表示します。訂正費用が届けば旧純額を旧版にし、予算転記や合計想定への影響を再計算します。暫定費用から確定費用へ変わった時刻を記録し、その間に作られた予算転記を抽出します。単に現行純額を更新するだけで過去判断への影響を消しません。影響抽出では訂正費用の更新事象を参照した想定と配分を逆引きし、画面を開いていない計画も漏らしません。費用訂正事象から影響する想定と配分を逆引きし、画面を開いていない未送信計画も再計算対象にします。

照合の許容差は通貨小数桁だけでなく、倍率と換算精度を考慮します。差が許容内でも明細識別子が欠けるなら証跡通過にはしません。数値一致率、明細完備率、原価方式判別率を別指標にし、偶然の一致で再現可能性を高く報告しないようにします。許容差内の一致でも、原約定が欠測なら照合未完了です。数値通過と証拠通過を二つの表示へ分け、総合状態は両方がそろうまで閉じません。証拠欠測が多い銘柄を数値一致率の母集団から除外せず、欠測そのものを別分母で併記します。対象期間も分離します。母数も記録します。数値一致と証拠完備を別表示にし、元約定欠測を許容差内という理由だけで通過へ昇格させません。

分割決済の境界事例を破壊的に試す

決済明細の重複、順序逆転、取消、訂正を注入し、残存ロットが一意に再構成されるかを確認します。同じ約定識別子を二度受信しても0.40を二回引かず、別識別子で同量同価格なら二件として扱います。訂正前後を上書きせず、有効明細集合で集計します。重複試験では同識別子同内容、同識別子異内容、別識別子同内容の三型を分けます。重複除去規則が正しい二件を一件へ潰さず、訂正衝突を見逃さないことを確認します。三型検査例を価格、数量、時刻の組合せでも展開し、識別子だけ正しい内容違いを検出します。送信データ差分まで比較します。項目名も照合します。同一識別子同内容、同一識別子異内容、別識別子同内容の三型で重複除去と訂正競合を分けます。

数量境界ではΣ部分決済ロットが当初と同じ、刻みだけ小さい、刻みだけ大きいケースを作ります。完全決済は残数量0、わずかな残りは正の格子量、超過はエラーです。浮動小数点誤差を理由に負残量を0へする前に、十進表現と提供元精度を確認します。完全決済の直前直後を十進刻みで作り、0.009999の幽霊残量が残らないかを調べます。提供元精度を超える値は入力生成段階で拒否します。提供元が返す最小単位未満の残差は原値を保存して照会し、利用者側で勝手に切り捨てません。完全決済の直前直後を提供元精度で試し、負残量や幽霊残量を利用者側の丸めで消さないようにします。

損益境界では合算純損益が0、わずかに正、わずかに負となる損切りと費用を用意します。表示丸めで+0と−0が同じに見えても内部符号と原値を保持します。利益という色だけで判断させず、想定価格と未算入項目を隣接表示します。ゼロ境界の帳票には丸め前十進数と表示文字列を併記します。表示スタイルの色や丸め後0.00だけで符号を消さず、想定識別子ごとの比較を可能にします。−0を損失として色付けするかは表示方針ですが、丸め前符号と十進数値を失わず、集計符号へ影響させません。表示方針の版も残します。合算純損益の丸め前符号を保持し、表示上の+0と−0が同じでも想定別の原値を比較可能にします。

原価方式を平均、先入れ先出し、指定ロットへ切り替え、同じ決済明細から異なる実現が出る標本をテストします。口座設定と一致しない方式を選んだ場合は結果を出さず、最も有利な方式を自動採用しません。テスト期待値は本番関数と別計算で作ります。原価方式テストの検査例には同数量・異価格の入口ロットを用意します。方式差が実際に実現へ現れる標本でなければ、分岐未実装でも通過してしまいます。方式選択画面を変更しただけでは計算を確定せず、口座仕様との一致確認を要求します。検査例の期待値も方式ごとに独立保存します。方式差が実現損益へ出る入口明細を使い、原価方式分岐が未実装でも偶然通る検査を避けます。

合計が正に固定される反例の限界を示す

確認済み実現純益が、明示した最悪約定価格までの残存損失と全残余費用の合計を上回るなら、そのモデル範囲では合算純損益が正に固定されます。これは「一部利確後も必ず損失になる」という過度な一般化を防ぐ反例です。ただし最悪価格の定義に価格差を含まない、費用が未確定、換算が変わるなら固定性はその範囲外です。正に固定という判定には約定価格下限の由来を必須にします。単なる希望損切りを最悪約定価格と呼ばず、価格差除外や保証条件を結果文へ埋め込みます。約定価格下限が市場流動性に対する希望的な仮定にすぎないなら、契約上の保証とは分類しません。分類誤りを独立監査で確認します。正値下限の表示には約定価格下限、残存費用、換算条件の証拠を付け、希望損切りだけで固定性を宣言しません。

反例を成立させるには、実現が純額で確認済み、残存数量が正確、約定価格下限が契約上または分析上明示、全費用が同一通貨で上限化されている必要があります。一つでも仮定なら保証という語を使いません。条件集合と証拠識別子を結果へ付けます。条件集合の一項が期限切れになったら正値下限表示を失効させます。実現純損益が確定でも残存費用上限が古ければ、固定性を継続表示しません。正値下限の失効更新事象を参照する帳票を検索し、古い固定性表示へ警告を付けます。新条件の承認まで再発行しません。条件の一項が期限切れなら正値下限表示を失効させ、古い固定性を参照する帳票へ警告を関連付けます。

通常例の+28とストレス例の−152は、同じ分割決済でも損切り条件が結果を変えることを示します。数字を記事間で再利用して一般的な勝率や収益性を推定しません。入口100、倍率100、費用12は教育用であり、特定商品の観測値ではありません。記事の二想定は同一当初と決済明細を共有し、損切りだけを変えます。他入力まで変わると、+28と−152の差を停止条件へ帰属できなくなるためです。想定比較表では共有入力を一度定義し、異なるのが損切りだけであることを機械判読可能な差分で検査します。+28と−152の比較では損切りだけを変え、他入力の差を機械判読可能な比較から排除します。

本稿は分割決済後の数量と損益を再構成する教育資料です。特定の利確割合、損切り、再投資、商品を推奨せず、利益または損失上限を保証しません。実際の原価方式、費用、税務、換算、注文約定は口座と時点で異なります。未確定明細が残る場合、純額を数値で閉じないことも検証可能な結論です。未確定で閉じた件数を失敗として隠さず、原因別に報告します。教育例を本番初期値として配布せず、利用環境の明細と仕様がそろうまで計算を無効にします。保留件数の改善目標を理由に不明を0へ変えません。再取得、明細補完、仕様確認という実際の解消経路ごとに完了条件を置きます。未確定件数を理由別に報告し、改善率を作るために不明値を0へ置換する運用を認めません。

判断・管理ルール

  1. 残存数量は初期約定数量から確認済みの決済約定だけを引いて求める。
  2. 実現粗損益、残存停止時損益、総費用を分離してから合算する。
  3. 一部利確済みという事実だけで残存リスクをゼロにしない。
  4. 原価方式、通貨換算、費用内包関係を記録する。
  5. 停止価格と実約定価格を同一とする限界を明示し、必要なら記事15のストレスを重ねる。

誤りやすい点

  • 0.40ロットの実現益を1.00ロット全体の利益として計上する。
  • 部分決済後も残存数量を1.00ロットのままにする。
  • 未実現損益を実現済みとして再投資予算へ足す。
  • 手数料やスプレッド費用を無視または二重控除する。
  • 建値停止なら必ず総損益ゼロ以上だとみなす。

根拠資料

  1. OANDA v20 REST API — Transaction Definitions

    この資料が支える範囲: OANDAの注文約定明細は新規約定、縮小約定、決済済み取引、全約定の出来高加重平均価格、半スプレッド費用、口座通貨換算係数を区別しており、部分決済数量・約定・費用を取引記録から再構成する根拠になる。

  2. IBKR Campus — Unrealized P&L

    この資料が支える範囲: IBKRは未決済ポジションの損益を未実現、売却後を実現と分け、実現時には関連手数料も考慮されると説明しており、部分決済後の二つの損益状態を分離する根拠になる。

  3. Investor.gov — Updated Investor Bulletin: How Fees and Expenses Affect Your Investment Portfolio

    この資料が支える範囲: SECの米国投資家向け情報サイトは取引手数料を含む費用が投資価値を低下させると説明しており、段階決済の総結果から入口・出口・残存決済の費用を控除する根拠になる。

よくある確認

0.40ロットを利確したらリスクも40%減りますか。

停止距離と契約価値が不変なら残存価格リスクは数量に比例しますが、停止変更、費用、通貨換算、ギャップがあれば全体結果は単純な40%減ではありません。

実現益を残りの損失予算に使えますか。

まず実現純益、残存停止損失、将来費用を同じ時点・通貨で表示してください。新しい予算へ組み込むかは別の方針であり、本稿は自動的な再投資を勧めません。

ブローカー表示と実現損益が違うのはなぜですか。

平均原価や先入れ先出しなどの原価方式、手数料、換算時刻、日次リセットが異なる場合があります。約定履歴と明細定義を照合します。

記事13との最小の違いは何ですか。

記事13の残存はまだ約定していない入口注文です。本稿の残存は部分決済後も保有している成立済みポジションです。

現在の入力値で再計算する

ロット計算機へ初期数量、決済済み数量、残存数量と実現損益・費用を分けて入力し、残存停止条件を再計算してください。

重要事項: これは分割決済後の数量と損益を検算する教育資料です。価格、倍率、原価方式、費用、税務処理、停止約定は商品と口座で異なり、利益や損失上限を保証しません。