> ## 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.

# Торговые комиссии

> Во что обходится исполнение: мейкерская и тейкерская ставки, как определяется ваша ставка, правила округления и куда идут комиссии.

Торговая комиссия берётся **с каждого исполнения**, с номинальной стоимости этого исполнения. Не с ордера и не с блока: ордер, исполнившийся пятью частями, оплачивается пять раз, с пяти номиналов, а ордер, который так и не исполнился, не оплачивается никогда.

Ставок две — какая из них применится, зависит от того, на какой стороне сделки вы оказались.

**Мейкер** — ваш ордер стоял в стакане, и кто-то другой в него исполнился. Вы дали ликвидность, и ставка ниже.

**Тейкер** — ваш ордер пересёк спред и забрал ликвидность из стакана. Ставка выше.

Различие в том, что ордер *сделал*, а не в том, что вы задумывали. Лимитный ордер, пересекающий спред при выставлении, платит тейкерскую ставку. Если вам обязательно нужно быть мейкером, используйте «только мейкер»: такой ордер отклоняется, а не исполняется, если он забрал бы ликвидность. См. [Типы ордеров](/ru/trading/order-types).

<h2 id="the-calculation">
  Расчёт
</h2>

$$
\text{комиссия} = \text{номинал исполнения} \times \frac{\text{ставка в ppm}}{1{,}000{,}000}
$$

Ставки хранятся в блокчейне в **миллионных долях**, а не в процентах. Значения сети по умолчанию — `450` ppm для тейкера и `150` ppm для мейкера, то есть 0,045% и 0,015%.

Работа в ppm — не косметика. Всё на пути расчёта — это [целочисленная арифметика с фиксированной запятой](/ru/protocol/architecture/kernel), потому что расхождение в округлении между двумя валидаторами — это форк, а не неточность. Ставка, выраженная как процент от процента, где-то обязана стать десятичной дробью, а такой её версии, с которой согласится любая машина, не существует.

Поэтому округление задано явно, а не оставлено на волю случая:

|                                                    | Правило                                                                                                                               |
| -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| **Списываемая комиссия**                           | Округление до ближайшего; при равном удалении — в большую по модулю сторону; нижняя граница 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>

**Договорная ставка счёта** назначается напрямую счёту. Она переживает ночной проход по уровням: счёт с договорной ставкой намеренно пропускается, поэтому пересчёт объёмов никогда не перезаписывает условия, о которых кто-то договорился.

**Ставка уровня по обороту** есть почти у каждого счёта. Она выводится из скользящего объёма и ежедневно записывается в блокчейн. См. [Комиссионные уровни](/ru/programs/fee-tiers).

**Ставка сети по умолчанию** применяется к счёту, которому ничего не назначали: новый счёт торгует по уровню 0, а не вовсе без ставки.

<Note>
  Нулевая ставка — это настоящая ставка, а не отсутствие ставки. Как только счёту явно назначена ставка, протокол применяет её буквально, в том числе когда она равна нулю. Ничто не откатывается молча к значению по умолчанию только потому, что число выглядит пустым.
</Note>

В ончейн-конфигурации есть и **базовая ставка на уровне рынка** — на случай, когда профиль риска рынка настолько отличается от площадки в целом, что оценивать его по общей тарифной сетке неверно: предрыночный контракт, необычно тонкий листинг. Когда она применяется, базовой для этого рынка становится она, а не ставка сети по умолчанию; ставки счёта по-прежнему накладываются поверх.

<Warning>
  Базовые ставки на уровне рынка настраиваются, но сегодня **не применяются на пути исполнения**. Ставка для всех рынков сейчас определяется по описанной выше цепочке: сначала счёт, затем значение по умолчанию. Когда это изменится, здесь будет сказано.
</Warning>

<h2 id="what-the-rate-can-be">
  Какой может быть ставка
</h2>

Обе ставки ограничены в блокчейне, и конфигурация, выходящая за границы, отклоняется целиком, а не подрезается.

|            | Граница                                                              |
| ---------- | -------------------------------------------------------------------- |
| **Тейкер** | Никогда не отрицательная. Потолок 10%                                |
| **Мейкер** | Может быть отрицательной — это ребейт — вплоть до −0,1%. Потолок 10% |

Асимметрия сделана намеренно. Отрицательная мейкерская ставка — спроектированный стимул: площадка платит за ликвидность, которую хочет видеть в стакане. Отрицательная тейкерская ставка была бы способом печатать деньги, торгуя с самим собой, поэтому она не просто не рекомендуется — её вообще нельзя выразить.

Потолок в 10% — это ограждение, а не тарифная сетка. Реальные ставки лежат на два порядка ниже; граница нужна, чтобы абсурдная или вредоносная конфигурация не дошла до исполнения, а не чтобы описать, сколько кто-то платит.

<h2 id="placing-orders-costs-no-gas">
  Выставление ордеров: gas не тратится
</h2>

Отправка, изменение и отмена ордеров — нативные транзакции протокола. Им не нужен баланс gas, и они не конкурируют на рынке комиссий.

Это важнее, чем кажется. На площадке, где за управление ордерами списывается gas, котирование обходится дорого, а отмена во время волатильности — дороже всего именно тогда, когда она нужнее всего; поэтому маркет-мейкеры котируют шире, чтобы это покрыть, и за расширенный спред платят все. Бесплатное управление ордерами убирает эту стоимость из спреда, а не перекладывает её с места на место.

Следствие в том, что **торговая комиссия — это вся стоимость торговли на уровне протокола.** Второй строки нет.

<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>

* **[Волт ликвидности](/ru/trading/vaults)**, который котирует стакан и принимает позиции при [ликвидациях](/ru/trading/liquidations). Комиссионный доход входит в его выручку, а прибыль волта достаётся вкладчикам.
* **Страховой фонд**, который покрывает непокрытый убыток ликвидации до того, как [делеверидж](/ru/trading/adl) доберётся до других трейдеров.
* **[Реферальные](/ru/programs/referrals) ребейты**, когда эта программа заработает.
* **Эмитенты токенов** — за листинги, приведённые кем-то со стороны. Это касается спотовых листингов, которые пока не запущены.

Балансы и движения средств — это состояние блокчейна. Сверка (входящий баланс, поступившие комиссии, исходящие переводы, исходящий баланс) — сумма, которую любой может пересчитать по зафиксированным блокам, а не цифра, которую кто-то должен опубликовать.

Комиссии моста и счёта собираются отдельно, на собственный счёт. См. [Неторговые комиссии](/ru/programs/other-fees).

<h2 id="what-is-not-a-trading-fee">
  Что не является торговой комиссией
</h2>

| Затрата                                          | Кому платится    | Примечания                               |
| ------------------------------------------------ | ---------------- | ---------------------------------------- |
| Торговая комиссия                                | Протоколу        | Эта страница                             |
| [Финансирование](/ru/trading/funding)            | Другим трейдерам | Протокол не берёт долю                   |
| Проскальзывание                                  | Никому           | Это цена, которую вы получили, а не сбор |
| [Ликвидационный штраф](/ru/trading/liquidations) | Страховому фонду | Только при ликвидации                    |
| [Комиссия за вывод](/ru/programs/other-fees)     | Протоколу        | Мост, а не торговля                      |
| Gas                                              | —                | Не берётся с торговых транзакций         |

Чаще всего за комиссию принимают финансирование. Это перевод между лонгами и шортами: в зависимости от того, какую сторону вы держите, это расход или доход.

<h2 id="reducing-what-you-pay">
  Как платить меньше
</h2>

* **Будьте мейкером.** У большинства счетов разрыв между мейкером и тейкером шире, чем разрыв между соседними уровнями по обороту. Ваши издержки сильнее зависят от того, *как* вы торгуете, чем от того, сколько вы наторгуете.
* **Используйте «только мейкер»**, когда нельзя случайно заплатить по тейкерской ставке. Такой ордер отклоняется, а не исполняется, если он пересёк бы спред.
* **Держите активность под одним родительским счётом.** При расчёте уровня субсчета суммируются, поэтому дробить активность бессмысленно: выигрыша нет, а операционной сложности прибавляется.
* **Дробите крупные ордера.** [TWAP](/ru/trading/twap) и [ступенчатые ордера](/ru/trading/scale-orders) снижают проскальзывание, которое на крупном ордере обычно с большим отрывом превышает комиссию.

<Warning>
  Читайте ставки из блокчейна, а не зашивайте их в код. Тарифная сетка — это ончейн-конфигурация, и она меняется; интеграция со своей копией рано или поздно посчитает стоимость, которую сеть не берёт. См. [Разработчикам](/ru/developers/overview).
</Warning>

<h2 id="where-to-go-next">
  Что дальше
</h2>

<CardGroup cols={2}>
  <Card title="Комиссионные уровни" href="/ru/programs/fee-tiers">
    Тарифная сетка, как считается ваш уровень и ребейты маркет-мейкерам.
  </Card>

  <Card title="Неторговые комиссии" href="/ru/programs/other-fees">
    Затраты на мост, счёт, волт и ликвидацию.
  </Card>

  <Card title="Типы ордеров" href="/ru/trading/order-types">
    «Только мейкер» и гарантия мейкерского статуса.
  </Card>

  <Card title="Финансирование" href="/ru/trading/funding">
    Затрата, которая уходит другим трейдерам, а не протоколу.
  </Card>
</CardGroup>
