> For the complete documentation index, see [llms.txt](https://docs.aftermath.finance/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.aftermath.finance/ru/bessrochnye-fyuchersy/architecture/liquidations/adl.md).

# ADL

ADL — функция с разрешениями: выполнить её может только администратор рынка (или уполномоченные им стороны).

### Процесс исполнения

Исполнение следует гибридной модели: расчёт офчейн, исполнение ончейн:

1. Ранжирование (офчейн): прибыльные позиции ранжируются по таким факторам, как доходность, кредитное плечо и размер позиции.
2. Отбор: для покрытия конкретной суммы безнадёжного долга выбираются позиции с наивысшим рангом (например, 2, 3 или 4 позиции).
3. Исполнение (ончейн): позиция с безнадёжным долгом закрывается против выбранных контрагентов.
   * Условия применения: сначала по позиции с безнадёжным долгом рассчитывается финансирование. ADL выполняется, только если её капитал (стоимость обеспечения плюс нереализованный PnL по маркировочной цене, без дисконта) равен нулю или отрицателен. В противном случае вызов ничего не делает.
   * Закрытие позиции с безнадёжным долгом: её открытые ордера отменяются, затем она полностью закрывается по маркировочной цене. Реализованный PnL добавляется к её обеспечению.
   * Распределение недостачи: оставшееся обеспечение позиции (нулевое или отрицательное) делится между контрагентами в соответствии с весами, заданными администратором ADL. Сумма весов должна составлять ровно 100%, а остаток от округления достаётся первому контрагенту.
   * Закрытие позиций контрагентов: по каждому контрагенту рассчитывается финансирование, затем назначенный ему объём закрывается по маркировочной цене. Контрагент реализует PnL относительно своей цены входа, а затем принимает на себя свою долю безнадёжного долга отдельным дополнительным списанием из обеспечения.
   * Закрытые рынки: ADL на закрытом рынке использует цены закрытия рынка как для маркировочной цены, так и для цены обеспечения.

### Проверяемость

Исполнение ADL требует разрешений и зависит от офчейн-факторов, но поскольку оно выполняется ончейн, любой может проверить результат.

#### Проверка после исполнения:

* Все данные о позициях на момент ADL хранятся ончейн.
* Любой может восстановить ранжирование позиций в том виде, в каком оно было на момент ADL.
* Сообщество может проверить, что администратор выбрал подходящие позиции согласно опубликованным критериям ранжирования.
* Прозрачность: индексные цены, состояния позиций и все соответствующие данные неизменно записываются ончейн.
* Подотчётность: хотя пользователи не могут предотвратить ADL в реальном времени, любое отклонение от опубликованного алгоритма ранжирования доказуемо выявляется постфактум. Сообщество может восстановить ранжирование и оспорить неправильное исполнение.<br>

### Техническая реализация

Алгоритм ранжирования ADL учитывает несколько факторов:

* Доходность: более высокий нереализованный PnL повышает ранг.
* Кредитное плечо: более высокое эффективное плечо повышает ранг.
* Размер позиции: более крупные позиции могут иметь больший вес в ранжировании.

Для прибыльных позиций: $$\text{ADL Ranking} = \text{PNL%} \times \text{Effective Leverage}$$

Для убыточных позиций: $$\text{ADL Ranking} = \frac{\text{PNL%}}{\text{Effective Leverage}}$$

Где: $$\text{PNL%} = \frac{\text{Unrealized PnL}}{|\text{Position Size} \times \text{Mark Price}|}$$

$$\text{Effective Leverage} = \frac{1}{\text{Position Margin Ratio}}$$

#### Настройка порога социализации убытков

Пороги безнадёжного долга, определяющие, когда применять социализацию убытков, а когда ADL, настраиваются.

```
If bad_debt > max(M, open_interest × mark_price x α):
    Trigger ADL
Else:
    Use Socialized Losses
```

#### Процесс проверки

Чтобы проверить корректность исполнения ADL:

* Запросите ончейн-состояние на высоте блока, на которой был исполнен ADL.
* Восстановите состояния всех позиций (размер, цена входа, нереализованный PnL, плечо).
* Примените задокументированный алгоритм ранжирования.
* Сравните позиции, выбранные для ADL, с восстановленным ранжированием.
* Убедитесь, что выбранные позиции совпадают с позициями наивысшего ранга, необходимыми для покрытия безнадёжного долга.
