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

# Предотвращение самосделок

> Сопоставление с вашим же ордером в стакане подавляется, а не исполняется: механизм включён всегда и действует в границах счёта, выставившего ордера.

Предотвращение самосделок (сделок, в которых обе стороны — один и тот же счёт) не даёт ордеру сопоставиться с вашей же ликвидностью в стакане. Если входящий ордер торговал бы с ордером того же счёта, сопоставление подавляется вместо исполнения.

Механизм **включён всегда**, на каждом рынке и для каждого счёта. Включать нечего, настраивать нечего.

<h2 id="why-it-exists">
  Зачем это нужно
</h2>

Две причины, и обе существенны.

**Фиктивные сделки.** Торговля с самим собой создаёт объём и оставляет сделки в ленте, но риск при этом никуда не передаётся. Это способ сфабриковать активность, и пресечение её на уровне сопоставления означает, что публикуемый объём площадки отражает сделки между разными сторонами.

**Случайное самопересечение.** Встречается чаще и злого умысла не содержит. Маркет-мейкер, котирующий обе стороны, или несколько стратегий на одном счёте легко пересекают собственные котировки. Без защиты это стоит тейкерской комиссии с обеих сторон и даёт исполнение, ничего не изменившее в позиции.

<h2 id="what-happens">
  Что происходит
</h2>

Когда движок сопоставления обнаруживает, что входящий ордер забрал бы ликвидность того же счёта, **ордер в стакане отменяется**, а входящий продолжает работать против остального стакана.

<div className="dg" data-dg="self-trade-prevention">
  <div className="dg-c" style={{aspectRatio:"720 / 274"}}>
    <svg className="dg-w" viewBox="0 0 720 274" aria-hidden="true">
      <path className="dg-wire dg--blue" d="M 144.00 68.00 L 165.60 68.00" />

      <path className="dg-head dg--blue" d="M 172.00 68.00 L 165.60 72.40 L 165.60 63.60 Z" />

      <path className="dg-wire dg--green" d="M 356.00 68.00 L 382.03 35.02" />

      <path className="dg-head dg--green" d="M 386.00 30.00 L 385.49 37.75 L 378.58 32.30 Z" />

      <path className="dg-wire dg--orange" d="M 356.00 68.00 L 381.90 99.08" />

      <path className="dg-head dg--orange" d="M 386.00 104.00 L 378.52 101.90 L 385.28 96.27 Z" />

      <path className="dg-wire dg--blue" d="M 544.00 104.00 L 559.60 104.00" />

      <path className="dg-head dg--blue" d="M 566.00 104.00 L 559.60 108.40 L 559.60 99.60 Z" />
    </svg>

    <div className="dg-b dg--blue" style={{left:"0.0000%",top:"14.5985%",width:"19.4444%",height:"20.4380%"}}><span className="dg-t">Входящий ордер</span></div>
    <div className="dg-b dg--yellow dg-round" style={{left:"24.4444%",top:"13.1387%",width:"24.4444%",height:"23.3577%"}}><span className="dg-t">Совпал бы с вашим ордером в стакане?</span></div>
    <div className="dg-b dg--green" style={{left:"54.1667%",top:"2.1898%",width:"45.8333%",height:"17.5182%"}}><span className="dg-t">Обычное сопоставление</span></div>
    <div className="dg-b dg--orange" style={{left:"54.1667%",top:"27.0073%",width:"20.8333%",height:"21.8978%"}}><span className="dg-t">Ордер в стакане отменяется</span></div>
    <div className="dg-b dg--blue" style={{left:"79.1667%",top:"27.0073%",width:"20.8333%",height:"21.8978%"}}><span className="dg-t">Ваш ордер идёт дальше по стакану</span></div>
    <div className="dg-b dg--green dg-left" style={{left:"0.0000%",top:"67.8832%",width:"48.8889%",height:"22.6277%"}}><span className="dg-t">В пределах счёта</span><span className="dg-s">Работает всегда. Включать нечего, настраивать нечего.</span></div>
    <div className="dg-b dg--orange dg-left" style={{left:"51.1111%",top:"67.8832%",width:"48.8889%",height:"22.6277%"}}><span className="dg-t">Между субсчетами</span><span className="dg-s">Не работает — субсчета намеренно отдельные счета.</span></div>
    <div className="dg-free" style={{left:"0.0000%",top:"54.7445%",width:"100.0000%"}}><div className="dg-n">Отменяется мейкер, а не тейкер, — с отдельным статусом, чтобы автоматика отличала это от обычной отмены.</div></div>
  </div>
</div>

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

<h2 id="scope">
  Границы действия
</h2>

Защита работает **в пределах одного счёта**. Субсчета считаются отдельными счетами и друг от друга не защищены.

Это намеренная граница, а не недосмотр. Субсчета существуют, чтобы изолировать стратегии: отдельный риск, отдельная маржа, отдельный учёт. По-настоящему независимые стратегии могут законно оказаться по разные стороны одной сделки, а запрет означал бы, что котирование одного субсчёта молча мешает исполнению другого.

<Note>
  Если у вас несколько стратегий, которые не должны торговать друг с другом, держите их на одном счёте — тогда защита работает. Если стратегии могут законно занимать противоположные стороны, правильная структура — субсчета. Это решение стоит принять осознанно, а не обнаружить постфактум.
</Note>

<h2 id="what-it-does-not-do">
  Чего механизм не делает
</h2>

**Он не гарантирует исполнение вашего ордера.** Если ваш собственный ордер был единственной ликвидностью по этой цене, его отмена контрагента не создаёт: ордер уходит дальше в стакан, где контрагента может не быть.

**Он не предотвращает согласованную торговлю между счетами.** Это механизм уровня сопоставления, ограниченный одним счётом. Торговлю двух разных счетов друг с другом движок сопоставления не отличит от обычной.

**Он не уменьшает позицию отменой.** Отменённый мейкерский ордер был ордером, а не позицией. В вашей экспозиции ничего не меняется.

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

<CardGroup cols={2}>
  <Card title="Сопоставление" href="/ru/protocol/architecture/matching">
    Где эта проверка выполняется внутри исполнения блока.
  </Card>

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

  <Card title="Изменение ордеров" href="/ru/trading/modify-orders">
    Как вести котировки, не пересекаясь с самим собой.
  </Card>

  <Card title="Комиссии" href="/ru/programs/fees">
    Тейкерская комиссия, которую иначе пришлось бы заплатить за самосделку.
  </Card>
</CardGroup>
