> 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/funding.md).

# Ставка финансирования

## Что такое ставки финансирования?

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

Финансирование работает по принципу peer-to-peer. Биржа не взимает эти платежи: они переходят напрямую между пользователями с длинными (лонг) и короткими (шорт) позициями.

### Как это работает

Ставка финансирования рассчитывается по расхождению между ценой стакана (ценой бессрочного контракта) и ценой оракула (реальной рыночной ценой актива).

* Положительная ставка (бычий рынок): когда цена бессрочного контракта *выше* цены оракула, лонги платят шортам. Это стимулирует трейдеров продавать, подталкивая цену вниз к спотовой.
* Отрицательная ставка (медвежий рынок): когда цена бессрочного контракта *ниже* цены оракула, шорты платят лонгам. Это стимулирует трейдеров покупать, подталкивая цену вверх к спотовой.

{% hint style="info" %}
Aftermath не взимает комиссий с этих платежей.
{% endhint %}

#### Интервал и период финансирования <a href="#funding-interval-and-period" id="funding-interval-and-period"></a>

Финансирование **выплачивается ежечасно** на каждом рынке. У каждого рынка также есть **период финансирования**: рассчитанная ставка распределяется на этот период, поэтому каждый ежечасный платёж равен ставке за период, делённой на число часов в периоде. Например, на рынке с периодом 8 часов вы каждый час платите или получаете 1/8 рассчитанной ставки.

Текущие периоды финансирования:

| Период финансирования | Рынки                                                                                                                                                                                                |
| --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 8 часов               | ANT, BAT, BNB, BP, BTC, CARDS, CHIP, CRV, DATA, ETH, FLUID, HYPE, JP225, KNTQ, KR200, LIT, LTC, MON, NEAR, ORBIO, PUMP, QNT, SHFL, SOL, SPX, SUI, UNI, US100, US500, WLD, XAUT, XMR, XRP, ZEC        |
| 24 часа               | AAPL, AMC, BOC, BRENT, BYD, CBRS, CRCL, CYPH, DRAM, GOOGL, INDIA50, INTC, IOVA, LLY, META, MRVL, MU, NINTENDO, NVDA, PLTR, PRL, SAMSUNG, SKHYNIX, SNDK, SPCX, TSLA, USDBRL, USDKRW, WTI, XAG, XIAOMI |

BOC, BYD, INDIA50, NINTENDO, SAMSUNG, SKHYNIX и XIAOMI переходят на период в 1 неделю, пока их биржа закрыта, и возвращаются к 24 часам после её открытия.

{% hint style="info" %}
Периоды финансирования задаются для каждого рынка отдельно. Текущую частоту и период финансирования смотрите на странице рынка в интерфейсе.
{% endhint %}

### Отличия от централизованных бирж

На централизованных биржах финансирование рассчитывается и обнуляется каждые 8 часов, и все позиции с этого момента начинают отсчёт заново. Aftermath использует накопительную модель: финансирование никогда не обнуляется, и каждая позиция непрерывно накапливает его с момента открытия.

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

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

## История финансирования <a href="#funding-history" id="funding-history"></a>

Вкладка **Фандинг** рядом с вкладкой **График** в торговом терминале показывает ставку финансирования выбранного рынка во времени. Выберите диапазон от 1D до 1Y: в 1D и 1W показан каждый ежечасный платёж, а в более длинных диапазонах — средние значения за день. Включите **Годовая**, чтобы показать ежечасную ставку в пересчёте на год (× 8,760 часов). Вторая линия показывает накопленное финансирование с начала видимого диапазона.

<figure><img src="https://797346336-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGVGhO2cwkqPkT0zhfNMz%2Fuploads%2Fgit-blob-8f1814100f06dbe1566adb42cdd869761fbd2001%2Fperps-funding-tab-btc-1w.png?alt=media" alt="Вкладка «Фандинг» со ставкой финансирования и накопленным финансированием BTC за одну неделю"><figcaption><p>Вкладка «Фандинг» (BTC, 1W)</p></figcaption></figure>

На странице [Статистика](https://aftermath.finance/stats) есть раздел о финансировании с годовой ставкой финансирования по всем рынкам, взвешенной по открытому интересу, и тепловой картой дневной ставки финансирования каждого рынка.

## Нереализованное финансирование

Нереализованное финансирование — это финансирование, начисленное по вашей позиции, но ещё не рассчитанное.

Чтобы оптимизировать газ и вычисления вместо обновления баланса каждого пользователя каждую секунду, протокол отслеживает глобальное значение накопленного финансирования ($$CF$$). Ваше личное обязательство рассчитывается путём сравнения текущего глобального значения $$CF$$ с тем, каким оно было при последнем обращении к вашей позиции (расчёте).

Формула нереализованного финансирования позиции:

$$
UnrealizedFundings(p) = BaseAmount(p) \* (CF - LCF(p)),
$$

где 𝐶𝐹 ∈ 𝑅 — текущая накопленная ставка финансирования рынка, а 𝐿𝐶𝐹 ( 𝑝 ) ∈ 𝑅 — её значение на момент, когда позиция в последний раз рассчитала платежи финансирования на этом рынке.

Иными словами, контракты хранят накопленную ставку финансирования, и каждый раз при расчёте финансирования позиции значение этой накопленной ставки сохраняется в позиции.

## Ставки финансирования

Ставка финансирования определяет скорость платежей между лонгами и шортами. Она зависит от разницы между ценой стакана (рыночной ценой) и индексной ценой (ценой оракула).

Ставка финансирования рынка задаётся формулой:

$$
Funding =
\text{TWA}\_{\nu,\omega}(BookPrice - IndexPrice)
\frac{ f }{ \rho }
$$

*TWA* 𝜈 , 𝜔 ( 𝑋 ) ∈ 𝑅 — средневзвешенное по времени значение (см. следующий раздел о TWA). Параметры 𝜈 и 𝜔 задаются при создании рынка, но позже могут быть изменены администратором протокола. Обычные значения для ставок финансирования: 𝜈=1 𝑚 и 𝜔=1 ℎ .

Частота финансирования 𝑓 — это промежуток времени между обновлениями ставки финансирования, например 1 час. Иными словами, упомянутая выше накопленная ставка финансирования рынка ( 𝐶 𝐹 ) обновляется каждые 𝑓 .

Период финансирования 𝜌 — это промежуток времени, за который выплачивается финансирование (разница между ценой стакана и индексной ценой).

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

{% hint style="info" %}
Мы также ограничиваем разницу 𝐵𝑜𝑜𝑘 𝑃𝑟𝑖𝑐𝑒 − 𝐼𝑛𝑑𝑒𝑥 𝑃𝑟𝑖𝑐𝑒 — по умолчанию не более 5% (по абсолютной величине) от 𝐼𝑛𝑑𝑒𝑥 𝑃𝑟𝑖𝑐𝑒; этот лимит — параметр каждого рынка. Это нужно, чтобы ставка финансирования не была слишком карательной.
{% endhint %}

После выборки ставки финансирования (раз в каждый интервал 𝑓) накопленная ставка финансирования рынка обновляется просто:

$$
CF \gets CF + Funding
$$

{% hint style="info" %}
𝐶 𝐹 инициализируется значением 0 при создании рынка
{% endhint %}

На практике рынок отслеживает две накопленные ставки финансирования — одну для лонгов и одну для шортов. Обычные обновления финансирования сдвигают обе на одну и ту же величину, поэтому они, как правило, ведут себя как единая $$CF$$, описанная выше. Расходятся они только при социализации безнадёжного долга после ликвидации, которая применяется через накопленную ставку финансирования противоположной стороны. Подробнее см. [Ликвидации](/ru/bessrochnye-fyuchersy/architecture/liquidations.md).

## TWA (средневзвешенные по времени значения)

Механизм средневзвешенного по времени значения (TWA) обеспечивает сглаженность и устойчивость к манипуляциям ценовых данных, используемых для финансирования. TWA обновляется лениво (по требованию), а не в каждом блоке.

Используемое выше TWA обновляется каждый раз, когда пользователь выполняет на рынке одно из следующих действий:

* Начинает торговую сессию (любое размещение ордера или ликвидация открывает сессию, поэтому обычная торговая активность поддерживает TWA в актуальном состоянии)
* Запускает исполнение стоп-ордера
* Явно вызывает функцию `update_funding`
* Явно вызывает функцию `update_twaps`

И `update_funding`, и `update_twaps` не требуют разрешений: их может вызвать кто угодно в любое время.

Формула обновления TWA — взвешенное среднее:

$$
(TWA\_{\nu,\omega}(X), t\_{\text{last}}) \leftarrow \left( \frac{X\_t \cdot (t - t\_{\text{last}}) + TWA\_{\nu,\omega}(X) \cdot (t\_{\text{last}} - (t - \omega))}{\omega}, t \right) \quad \textbf{if } t \ge t\_{\text{last}} + \nu
$$

𝑡 — текущая метка времени, которую задаёт объект `Clock` ончейн. 𝑡 last — метка времени последнего рассчитанного TWA. 𝑋 𝑡 — случайная величина, наблюдаемая в момент 𝑡, например ограниченная разница между ценой стакана и индексной ценой.

𝜔 — **период twap**, определяющий степень сглаживания TWA: чем больше 𝜔, тем больший вес получают прошлые наблюдения.

𝜈 — частота twap, определяющая, как часто обновляется TWA. Например, если 𝜈=5 𝑠, то после обновления TWA транзакции в течение следующих 5 секунд будут использовать то же значение.\\

{% hint style="info" %}
TWA всегда обновляются до финансирования
{% endhint %}
