> ## Documentation Index
> Fetch the complete documentation index at: https://docs.intention.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# 取引手数料

> 約定にかかるコスト。メイカーとテイカーの料率、自分に適用される料率の決まり方、丸めの規則、手数料の行き先です。

取引手数料は**約定ごと**に、その約定の想定元本に対して課されます。注文ごとでもブロックごとでもありません。5回に分かれて約定した注文は、5つの想定元本に対して5回課され、一度も約定しなかった注文には一切課されません。

適用される料率は2つあり、取引のどちら側にいたかで決まります。

**メイカー**。注文が板に置かれていて、他の誰かがそこに向かって取引した場合です。流動性を供給した側であり、料率は低くなります。

**テイカー**。注文がスプレッドをまたぎ、板にあった流動性を消費した場合です。料率は高くなります。

区別の基準は意図ではなく、注文が実際に*何をしたか*です。発注時点で板をまたぐ指値注文はテイカー料率を支払います。必ずメイカーでなければならない場合はポストオンリーを使ってください。流動性を取ってしまう状況では、約定せずに拒否されます。[注文タイプ](/ja/trading/order-types)を参照してください。

<h2 id="the-calculation">
  計算式
</h2>

$$
\text{手数料} = \text{約定の想定元本} \times \frac{\text{ppm単位の料率}}{1{,}000{,}000}
$$

料率はパーセントではなく**百万分率**（ppm）でオンチェーンに保存されます。ネットワークの既定値はテイカーが`450` ppm、メイカーが`150` ppmで、それぞれ0.045%と0.015%にあたります。

ppmで扱うのは見た目の問題ではありません。決済経路上の計算はすべて[固定小数点の整数演算](/ja/protocol/architecture/kernel)です。2つのバリデータの間の丸めの差は、単なる食い違いではなくフォークになるからです。パーセントのさらに端数として表した料率は、どこかで小数にせざるを得ませんが、すべてのマシンが同じ答えを出す小数表現は存在しません。

したがって丸めは、成り行きではなく仕様として定めてあります。

|                 | 規則                                            |
| --------------- | --------------------------------------------- |
| **徴収する手数料**     | 最近接に丸め、中間値はゼロから遠い側へ。料率が正である限り、下限は1クアンタム       |
| **支払うリベート**     | 最近接に丸め、中間値はゼロから遠い側へ。下限は**なし**。リベートはゼロに丸められてよい |
| **発注時に拘束する手数料** | 最近接に丸め、中間値はゼロから遠い側へ。下限は1クアンタム                 |

徴収側に1クアンタムの下限があるのは、ごく小さな約定が無料にならないようにするためです。リベート側に下限がないのはその裏返しで、プロトコルは稼いでいない単位を発行するくらいなら、支払いをゼロまで切り捨てます。

<h2 id="which-rate-applies-to-you">
  どの料率が適用されるか
</h2>

どの約定でも料率の決まり方は同じで、参照する順序も固定されています。

<div className="dg" data-dg="fee-rate-resolution">
  <div className="dg-c" style={{aspectRatio:"720 / 300"}}>
    <svg className="dg-w" viewBox="0 0 720 300" aria-hidden="true">
      <path className="dg-wire dg--blue" d="M 134.00 112.00 L 155.60 112.00" />

      <path className="dg-head dg--blue" d="M 162.00 112.00 L 155.60 116.40 L 155.60 107.60 Z" />

      <path className="dg-wire dg--green" d="M 340.00 112.00 L 373.26 41.78" />

      <path className="dg-head dg--green" d="M 376.00 36.00 L 377.24 43.67 L 369.28 39.90 Z" />

      <path className="dg-wire dg--sky" d="M 340.00 112.00 L 369.60 112.00" />

      <path className="dg-head dg--sky" d="M 376.00 112.00 L 369.60 116.40 L 369.60 107.60 Z" />

      <path className="dg-wire" d="M 340.00 112.00 L 373.26 182.22" />

      <path className="dg-head" d="M 376.00 188.00 L 369.28 184.10 L 377.24 180.33 Z" />
    </svg>

    <div className="dg-b dg--blue" style={{left:"0.0000%",top:"28.0000%",width:"18.0556%",height:"18.6667%"}}><span className="dg-t">約定</span></div>
    <div className="dg-b dg--yellow dg-round" style={{left:"23.0556%",top:"24.6667%",width:"23.6111%",height:"25.3333%"}}><span className="dg-t">このアカウントに料率があるか</span></div>
    <div className="dg-b dg--green dg-left" style={{left:"52.7778%",top:"0.6667%",width:"47.2222%",height:"22.6667%"}}><span className="dg-t">個別に取り決めた料率</span><span className="dg-s">アカウントへ直接設定し、夜間のティア処理からは意図的に除外される。再計算が合意済みの条件を上書きすることはない</span></div>
    <div className="dg-b dg--sky dg-left" style={{left:"52.7778%",top:"26.0000%",width:"47.2222%",height:"22.6667%"}}><span className="dg-t">出来高ティアの料率</span><span className="dg-s">ローリング出来高から算出し、毎日オンチェーンに書き戻す</span></div>
    <div className="dg-b dg-left" style={{left:"52.7778%",top:"51.3333%",width:"47.2222%",height:"22.6667%"}}><span className="dg-t">ネットワーク既定値</span><span className="dg-s">新規アカウントは料率なしではなくティア0で取引する</span><span className="dg-n">ゼロという料率も実在する料率です。設定されていればそのまま適用されます。</span></div>
    <div className="dg-b dg-dashed dg-left" style={{left:"0.0000%",top:"78.6667%",width:"100.0000%",height:"17.3333%"}}><span className="dg-s">オンチェーンの設定にはマーケットごとの基準料率もありますが、現時点では約定の経路で適用されていません。すべてのマーケットが、上のアカウント→既定値の順で解決されます。</span></div>
  </div>
</div>

**個別に取り決めたアカウント料率**は、アカウントへ直接設定します。夜間のティア処理を経ても残ります。個別料率を持つアカウントは意図的に除外されるため、出来高の再計算が、合意した条件を上書きすることはありません。

**出来高ティアの料率**は、ほぼすべてのアカウントが持つものです。ローリング出来高から算出され、毎日オンチェーンに書き戻されます。[手数料ティア](/ja/programs/fee-tiers)を参照してください。

**ネットワーク既定値**は、何も割り当てられたことのないアカウントに適用されます。新規アカウントは料率なしではなく、ティア0で取引します。

<Note>
  ゼロという料率は、料率が欠けている状態ではなく、実在する料率です。アカウントに明示的な料率が設定されていれば、プロトコルはそれをそのまま適用します。ゼロの場合も同じです。数値が空に見えるからといって、黙って既定値に戻ることはありません。
</Note>

オンチェーンの設定には**マーケットごとの基準料率**もあります。あるマーケットのリスク特性が取引所全体と大きく異なり、取引所共通の料率表で値付けするのが適切でない場合（プレマーケット契約や、極端に板の薄い上場銘柄）のためのものです。適用されると、そのマーケットではネットワーク既定値に代わる基準となり、アカウントの料率はその上に重なります。

<Warning>
  マーケットごとの基準料率は設定できますが、**現時点では約定の経路で適用されていません**。現在はすべてのマーケットが、上記のアカウント→既定値の順で解決されます。これが変われば、このページの記述もそのように変わります。
</Warning>

<h2 id="what-the-rate-can-be">
  料率が取りうる範囲
</h2>

どちらの料率にもオンチェーンで上下限があり、設定がそれを超える場合は、値が丸め込まれるのではなく書き込み自体が拒否されます。

|          | 範囲                            |
| -------- | ----------------------------- |
| **テイカー** | マイナスにはならない。上限は10%             |
| **メイカー** | マイナス（リベート）を許容し、−0.1%まで。上限は10% |

この非対称性は意図的です。メイカー料率がマイナスなのは設計されたインセンティブで、取引所が板に置いてほしい流動性に対価を払っているということです。テイカー料率がマイナスなら、自分自身と取引して資金を生み出す仕組みになってしまうため、単に推奨しないのではなく、表現できないようにしてあります。

10%という上限はガードレールであって、料率表ではありません。実際の料率はそれより2桁下にあります。この上限は、荒唐無稽な設定や悪意ある設定が実行まで届かないようにするためのもので、誰かが実際に支払う額を示すものではありません。

<h2 id="placing-orders-costs-no-gas">
  発注にgasはかからない
</h2>

注文の送信、変更、取り消しは、プロトコルネイティブなトランザクションです。gas残高を必要とせず、手数料市場で競合することもありません。

これは聞こえる以上に重要です。注文管理にgasがかかる取引所では、気配を出すこと自体が高くつき、変動時の取り消しは、最も必要なときに最も高くなります。その結果マーケットメイカーはコストを賄うために気配を広げ、そのスプレッドは全員が負担します。注文管理を無料にすることは、そのコストを別の場所へ移すのではなく、スプレッドから取り除くということです。

その帰結として、**取引にかかるプロトコル上のコストは取引手数料がすべてです**。2つ目の項目はありません。

<h2 id="why-your-reserved-margin-exceeds-the-initial-requirement">
  拘束証拠金が必要当初証拠金を上回る理由
</h2>

ポジションを建てるとき、プロトコルは必要当初証拠金に*想定される決済手数料*を加えた分を拘束します。決済する余力のないポジションは、取引所が引き受けざるをえないポジションだからです。

この想定手数料は**ネットワーク既定のテイカー料率**で計算し、発注した時点の値で固定します。自分の料率でもなければ、あとで変わった料率でもありません。

どちらも意図的に保守的です。既定のテイカー料率を使うのは、あとで料率が上がるアカウントに対しても拘束額が不足しないようにするためです。発注時点で固定するのは、途中の料率変更が、すでに検証して受理した証拠金を遡って無効にできないようにするためです。

実際に課されるのは、決済が約定した時点の自分の料率です。拘束額は上限であって、請求額ではありません。

<h2 id="where-fees-go">
  手数料の行き先
</h2>

取引手数料は、オンチェーンのプロトコル管理アカウントに集められます。そこから出ていく分は、内部に留保されるのではなくエコシステムに向けられます。

<div className="dg" data-dg="fee-destinations">
  <div className="dg-c" style={{aspectRatio:"720 / 314"}}>
    <svg className="dg-w" viewBox="0 0 720 314" aria-hidden="true">
      <path className="dg-wire dg--blue" d="M 134.00 138.00 L 165.60 138.83" />

      <path className="dg-head dg--blue" d="M 172.00 139.00 L 165.49 143.23 L 165.72 134.43 Z" />

      <path className="dg-wire dg-soft" d="M 371.00 139.00 L 408.72 39.98" />

      <path className="dg-head" d="M 411.00 34.00 L 412.83 41.55 L 404.61 38.41 Z" />

      <path className="dg-wire dg-soft" d="M 371.00 139.00 L 406.18 108.21" />

      <path className="dg-head" d="M 411.00 104.00 L 409.08 111.53 L 403.29 104.90 Z" />

      <path className="dg-wire dg-soft" d="M 371.00 139.00 L 406.18 169.79" />

      <path className="dg-head" d="M 411.00 174.00 L 403.29 173.10 L 409.08 166.47 Z" />

      <path className="dg-wire dg-soft" d="M 371.00 139.00 L 408.72 238.02" />

      <path className="dg-head" d="M 411.00 244.00 L 404.61 239.59 L 412.83 236.45 Z" />
    </svg>

    <div className="dg-b dg--blue" style={{left:"0.0000%",top:"35.0318%",width:"18.0556%",height:"17.8344%"}}><span className="dg-t">すべての約定</span></div>
    <div className="dg-b dg--blue" style={{left:"24.4444%",top:"32.1656%",width:"26.3889%",height:"24.2038%"}}><span className="dg-t">プロトコル手数料アカウント</span><span className="dg-s">オンチェーンで監査可能</span></div>
    <div className="dg-b dg--green" style={{left:"57.7778%",top:"0.6369%",width:"42.2222%",height:"20.3822%"}}><span className="dg-t">流動性ヴォールト</span><span className="dg-s">板に気配を出し、強制決済でポジションを引き取る。利益は預入者に帰属</span></div>
    <div className="dg-b dg--green" style={{left:"57.7778%",top:"22.9299%",width:"42.2222%",height:"20.3822%"}}><span className="dg-t">保険基金</span><span className="dg-s">デレバレッジが他のトレーダーに及ぶ前に不足額を吸収</span></div>
    <div className="dg-b dg-dashed" style={{left:"57.7778%",top:"45.2229%",width:"42.2222%",height:"20.3822%"}}><span className="dg-t">リファラルのリベート</span><span className="dg-s">プログラムが稼働している場合</span></div>
    <div className="dg-b dg-dashed" style={{left:"57.7778%",top:"67.5159%",width:"42.2222%",height:"20.3822%"}}><span className="dg-t">トークン発行者</span><span className="dg-s">第三者が持ち込んだスポットの上場に対して。スポットは未稼働</span></div>
    <div className="dg-free" style={{left:"0.0000%",top:"88.5350%",width:"100.0000%"}}><div className="dg-n">残高も動きもチェーン状態です。期首残高、流入した手数料、流出した送金、期末残高という照合は、コミット済みブロックから誰でも再計算できる合計です。</div></div>
  </div>
</div>

* **\[流動性ヴォールト]**(/ja/trading/vaults)。板に気配を出し、[強制決済](/ja/trading/liquidations)の際にポジションを引き取ります。手数料収入はその収益の一部であり、ヴォールトの利益は預入者に帰属します。
* **保険基金**。強制決済で賄えなかった不足額を、[デレバレッジ](/ja/trading/adl)が他のトレーダーに及ぶ前に吸収します。
* **[リファラル](/ja/programs/referrals)のリベート**。そのプログラムが稼働している場合です。
* **トークン発行者**。第三者が持ち込んだ上場に対して支払います。対象はスポットの上場で、まだ稼働していません。

残高も動きもチェーン状態です。期首残高、流入した手数料、流出した送金、期末残高という照合は、誰かが公表しなければならない数字ではなく、コミット済みブロックから誰でも再計算できる合計です。

ブリッジとアカウントの手数料は、別の勘定に分けて集められます。[取引以外の手数料](/ja/programs/other-fees)を参照してください。

<h2 id="what-is-not-a-trading-fee">
  取引手数料ではないもの
</h2>

| コスト                                    | 支払先     | 備考                   |
| -------------------------------------- | ------- | -------------------- |
| 取引手数料                                  | プロトコル   | このページ                |
| [資金調達率](/ja/trading/funding)           | 他のトレーダー | プロトコルは一切取らない         |
| スリッページ                                 | なし      | 実際に約定した価格であって、課金ではない |
| [強制決済のペナルティ](/ja/trading/liquidations) | 保険基金    | 強制決済のときだけ            |
| [出金手数料](/ja/programs/other-fees)       | プロトコル   | 取引ではなくブリッジ           |
| gas                                    | —       | 取引トランザクションでは課されない    |

手数料と最も取り違えられやすいのが、資金調達率の受け払いです。これはロングとショートの間の移転であり、どちら側を持っているかによってコストにも収入にもなります。

<h2 id="reducing-what-you-pay">
  支払いを減らす
</h2>

* **メイカーになる**。ほとんどのアカウントでは、メイカーとテイカーの差のほうが、隣り合う出来高ティアの差より大きくなります。取引量を増やすより、取引の*仕方*を変えるほうがコストは動きます。
* **ポストオンリーを使う**。誤ってテイカー料率を払ってはいけない場面で使います。板をまたぐ場合は、約定せずに拒否されます。
* **活動を1つの親アカウントにまとめる**。ティアの判定ではサブアカウントが合算されるため、分散しても得はなく、運用の複雑さだけが増えます。
* **大口注文を分割する**。[TWAP](/ja/trading/twap)と[スケール注文](/ja/trading/scale-orders)はスリッページを抑えます。大口注文では、スリッページが手数料を大きく上回るのが普通です。

<Warning>
  料率はハードコードせず、チェーンから読み取ってください。料率表はオンチェーンの設定であり、変わります。自前のコピーを持つ統合は、いずれネットワークが課していないコストを計算することになります。[開発者](/ja/developers/overview)を参照してください。
</Warning>

<h2 id="where-to-go-next">
  次に読む
</h2>

<CardGroup cols={2}>
  <Card title="手数料ティア" href="/ja/programs/fee-tiers">
    料率表、ティアの計算方法、マーケットメイカー向けリベートです。
  </Card>

  <Card title="取引以外の手数料" href="/ja/programs/other-fees">
    ブリッジ、アカウント、ヴォールト、強制決済にかかるコストです。
  </Card>

  <Card title="注文タイプ" href="/ja/trading/order-types">
    ポストオンリーと、メイカーであることを保証する方法です。
  </Card>

  <Card title="資金調達率" href="/ja/trading/funding">
    プロトコルではなく、他のトレーダーに渡るコストです。
  </Card>
</CardGroup>
