Способы расчета средней цены

В разделе Настройки - Основные настройки - Торговля вы можете регулировать механику расчета средней цены входа при частичном закрытии позиции. Доступно 3 варианта:

  • IsolatedOpen

  • IsolatedFifo

  • IsolatedLifo

Расчет всех 3 вариантов выполняется по следующей формуле:

Σ(Price • Qty) / Σ(Qty), где:

Price - цена исполнения сделки; Qty - исполненный объем; Σ - знак суммирования.

Отличительные особенности:

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

IsolatedFifo / IsolatedLifo являются динамическими расчетами, поскольку учитывают также и разгрузки позиции.

IsolatedOpen

Spot

Возьмем для примера инструмент SOL/USDT (Binance) со ставкой комиссии 0,1%:

Side
P
Q
Q - Fee
P • Q
Fee SOL
Avg Price

BUY

100

130

129,87

12 987

0,13

Равна цене входа → 100

BUY

150

20

19,98

2 997

0,02

(12 987 + 2 997) / (129,87 + 19,98) = 106,6666667

SELL

200

-50

-50,00

-10 000

0,00

Средняя не меняется → 106,6666667

SELL

210

-95

-95,00

-19 950

0,00

Средняя не меняется → 106,6666667

BUY

200

30

29,97

5 994

0,03

(12 987 + 2 997 + 5 994) / (129,87 + 19,98 + 29,97) = 122,2222222

SELL

180

-20

-20,00

-3 600

0,00

Средняя не меняется → 122,2222222

SELL

160

-10

-10,00

-1 600

0,00

Средняя не меняется → 122,2222222

SELL

150

-4

-4,00

-600

0,00

Средняя не меняется → 122,2222222

SELL

130

-1

-1,00

-130

0,00

Актив продан

Side - операция (BUY / SELL) P - цена Q - количество контрактов Q - Fee - количество контрактов за вычетом комиссии P • Q - цена • количество контрактов Fee SOL - размер комиссии в базовой валюте Avg Price - средняя цена

Futures

Возьмем для примера инструмент SHIBUSDT (Binance). В данном случае ставка комиссии не важна, поскольку она списывается не с объема позиции, а отдельно с фьючерсного баланса.

Side
P
Q
P • Q
Avg Price

BUY

0.023276

500

11.638

Равна цене входа → 0.023276

BUY

0.023289

500

11.6445

(11.638 + 11.6445) / (500 + 500) = 0.0232825 = 0.023283

BUY

0.023331

500

11.6655

(11.638 + 11.6445 + 11.6655) / (500 + 500 + 500) = 0.02329866667 = 0.023299

SELL

0.023258

500

11.629

Средняя не меняется → 0.023299

SELL

0.023241

500

11.6205

Средняя не меняется → 0.023299

Side - операция (BUY / SELL) P - цена Q - количество контрактов P • Q - цена • количество контрактов Avg Price - средняя цена

IsolatedFifo

Аббревиатура FIFO расшифровывается как "first-in, first-out", или "первый пришел, первый ушел". Данный алгоритм учитывает разгрузки позиции в порядке от первой сделки в сторону последней. Например, был куплен 1 лот по 100, 1 лот по 98 и 1 лот по 90. При первой продаже 1-го лота уйдет первый лот по 100, и средняя цена будет рассчитана по 2-й и 3-й сделкам (цены 98 и 90).

Spot

Инструмент: SOL/USDT Ставка комиссии: 0.1%

Side
P
Q
Q - Fee
P • Q
Fee SOL
Avg Price

BUY

100

130

129,87

12 987

0,13

Равна цене входа → 100

BUY

150

20

19,98

2 997

0,02

(12 987 + 2 997) / (129,87 + 19,98) = 106,6666667

SELL

200

-50

-50,00

-10 000

0,00

Сокращаем объем первой покупки на 50 и пересчитываем среднюю:

(7987 + 2 997) / (79,87 + 19,98) = 110,0050075

SELL

210

-95

-95,00

-19 950

0,00

Ушла первая покупка. Вторая сократилась на 15.13. Осталась только вторая покупка по цене 150:

Средняя = 150

BUY

200

30

29,97

5 994

0,03

(727.5 + 5 994) / (4.85 + 29,97) = 193,0356117

SELL

180

-20

-20,00

-3 600

0,00

Ушла вторая покупка. Третья сократилась на 20. Осталась только третья покупка по цене 200:

Средняя = 200

SELL

160

-10

-10,00

-1 600

0,00

Третья покупка сократилась на 10. Средняя не меняется → 200

SELL

150

-4

-4,00

-600

0,00

Третья покупка сократилась на 4. Средняя не меняется → 200

SELL

130

-1

-1,00

-130

0,00

Актив продан

Futures

Инструмент: SHIBUSDT

Side
P
Q
P • Q
Avg Price

BUY

0.023276

500

11.638

Равна цене входа → 0.023276

BUY

0.023289

500

11.6445

(11.638 + 11.6445) / (500 + 500) = 0.0232825 = 0.023283

BUY

0.023331

500

11.6655

(11.638 + 11.6445 + 11.6655) / (500 + 500 + 500) = 0.02329866667 = 0.023299

SELL

0.023258

500

11.629

Убираем первую покупку по цене 0.023276 и рассчитываем среднюю только по покупкам 2 и 3:

(11.6445 + 11.6655) / (500 + 500) = 0.023310

SELL

0.023241

500

11.6205

Ушла вторая покупка и осталась только покупка №3 по цене 0.023331

Текущая средняя → 0.023331

IsolatedLifo

Аббревиатура LIFO расшифровывается как "last-in, first-out", или "последний пришел, первый ушел". Данный алгоритм учитывает разгрузки позиции в порядке от последней сделки в сторону первой. Например, был куплен 1 лот по 100, 1 лот по 98 и 1 лот по 90. При первой продаже 1 лота уйдет последний лот по 90 и средняя перерасчитается по 1 и 2 сделке (цены 100 и 98)

Spot

Инструмент: SOL/USDT Ставка комиссии: 0.1%

Side
P
Q
Q - Fee
P • Q
Fee SOL
Avg Price

BUY

100

130

129,87

12 987

0,13

Равна цене входа → 100

BUY

150

20

19,98

2 997

0,02

(12 987 + 2 997) / (129,87 + 19,98) = 106,6666667

SELL

200

-50

-50,00

-10 000

0,00

Ушла вторая покупка. Осталась первая объемом 99,85.

Средняя = 100

SELL

210

-95

-95,00

-19 950

0,00

Первая покупка сократилась на 95. Остаток - 4.85.

Средняя = 100

BUY

200

30

29,97

5 994

0,03

(485 + 5 994) / (4.85 + 29,97) = 186,0712234

SELL

180

-20

-20,00

-3 600

0,00

Ушла первая покупка. Третья сократилась на 20. Осталась только третья покупка по цене 200:

Средняя = 200

SELL

160

-10

-10,00

-1 600

0,00

Третья покупка сократилась на 10. Средняя не меняется → 200

SELL

150

-4

-4,00

-600

0,00

Третья покупка сократилась на 4. Средняя не меняется → 200

SELL

130

-1

-1,00

-130

0,00

Актив продан

Futures

Инструмент: SHIBUSDT

Side
P
Q
P • Q
Avg Price

BUY

0.023971

500

11.9855

Равна цене входа → 0.023971

BUY

0.023966

1000

23.966

(11.9855 + 23.966) / (500 + 1000) = 0.02396766667 = 0.023968

BUY

0.023957

500

11.9785

(11.9855 + 23.966 + 11.9785) / (500 + 1000 + 500) = 0.023965

SELL

0.023991

800

19.1928

Убираем покупку #3 по цене 0.023957 и рассчитываем среднюю только по покупка 1 и 2. При этом, так как объем покупки #3 был 500, а мы продали 800, объем покупки #2 сокращаем с 1000 до 700:

(11.9855 + 16.7762) / (500 + 700) = 0.02396808333 = 0.023968

SELL

0.02398

300

7.194

Объем второй покупки сократился с 700 до 400:

(11.9855 + 9.5864) / (500 + 400) = 0.02396877778 = 0.023969

SELL

0.023967

800

19.1736

Убираем покупку #2. Средняя цена = цена первой покупки = 0.023971

Last updated