WhiteBIT wykorzystuje Mark Price (MP) jako cenę referencyjną do obliczania niezrealizowanego PnL (UPL) oraz jako wyzwalacz likwidacji na wszystkich rynkach bezterminowych kontraktów futures (PERP). Została ona opracowana tak, aby odzwierciedlać rzeczywistą wartość rynkową kontraktu, opierać się na danych zewnętrznych (dzięki czemu nie może zostać zmieniona przez krótkoterminową aktywność w wewnętrznej księdze zleceń) oraz pozostawać wystarczająco stabilna podczas szumu rynkowego, jednocześnie śledząc rzeczywiste ruchy rynku.
Główne zasady Mark Price
Metodologia ta jest stosowana na wszystkich rynkach bezterminowych kontraktów futures na WhiteBIT. Parametry takie jak okno wygładzania (smoothing window), zakres ograniczenia (clamp band) oraz zestaw składników indeksu są konfigurowane indywidualnie dla każdego rynku i mogą być aktualizowane wraz ze zmianami warunków płynności. O istotnych zmianach metodologii poinformujemy z wyprzedzeniem.
Podczas handlu na rynku futures pamiętaj o następujących zasadach:
- Transakcje są nadal realizowane po cenie z księgi zleceń (last/match price).
- Mark Price jest wykorzystywana wyłącznie do obliczania wskaźników ryzyka: UPL, kontroli depozytu zabezpieczającego oraz likwidacji.
- Mark Price opiera się na danych zewnętrznych. Nie można znacząco odchylić jej od indeksowej ceny spot (Index Price) wyłącznie za pomocą wewnętrznej aktywności w księdze zleceń.
- Mark Price jest wygładzana. W normalnych warunkach ściśle podąża za ceną kontraktu, natomiast w okresach zwiększonej zmienności pozostaje blisko indeksowej ceny spot.
Uwaga: likwidacje są uruchamiane na podstawie Mark Price, a nie ostatniej ceny transakcyjnej (last traded price). Nagły skok ceny lub anormalny ruch na rynku bezterminowych kontraktów futures o niskiej płynności sam w sobie nie doprowadzi do likwidacji pozycji.
Wzór na Mark Price
Mark Price jest obliczana jako mediana trzech cen kandydujących:
MP = median(Price₁, Price₂, Price₃)
MP = \text{median}(\text{Price}_1, \text{Price}_2, \text{Price}_3)
- Price₁ — cena indeksowa skorygowana o skumulowane finansowanie do następnego zdarzenia fundingowego (komponent wartości godziwej).
- Price₂ — cena indeksowa powiększona o wygładzoną bazę kontraktu (premię lub dyskonto implikowane przez rynek).
- Price₃ — ostatnia cena transakcyjna kontraktu bezterminowego.
Wybór mediany gwarantuje, że pojedynczy komponent, który został tymczasowo zniekształcony — na przykład gwałtowne odchylenie ceny kontraktu, nieaktualna wartość indeksu lub anormalny wzrost bazy — nie będzie w stanie samodzielnie zmienić Mark Price. Aby Mark Price zmieniła się odpowiednio, co najmniej dwa z trzech komponentów muszą wskazywać ten sam kierunek.
Cena indeksowa (Index Price)
Cena indeksowa to ważony wolumenem spotowy indeks złożony, obliczany na podstawie danych z wiodących zewnętrznych platform spot oraz rynku spot WhiteBIT dla aktywa bazowego. Indeks jest publikowany z wysoką częstotliwością.
Mechanizmy zapewniające jego niezawodność obejmują:
- Agregację ważoną wolumenem: dla każdej giełdy stosowany jest limit udziału (per-venue cap), aby żadna platforma nie dominowała w indeksie.
- Filtrowanie wartości odstających: składniki, które zbyt mocno odbiegają od mediany między giełdami, są winsoryzowane (winsorized) przy użyciu wcześniej skonfigurowanych ograniczeń (clamps).
Komponent uwzględniający finansowanie (Price₁)
Ten komponent wiąże Mark Price z ceną indeksową, jednocześnie uwzględniając opłatę fundingową narastającą do kolejnego zdarzenia fundingowego. Dzięki temu Mark Price pozostaje zgodna z mechanizmem przenoszenia wartości między pozycjami Long i Short w trakcie cyklu finansowania.
Wzór: Price₁ = IndexPrice × (1 + F × Δt / T)
\text{Price}_1 = \text{IndexPrice} \times \left(1 + F \times \frac{\Delta t}{T}\right)
- F — ostatnia stopa finansowania (funding rate).
- Δt — czas pozostały do następnego zdarzenia fundingowego.
- T — interwał finansowania.
Baza kontraktu (Price₂)
Baza kontraktu odzwierciedla premię lub dyskonto kontraktu bezterminowego względem rynku spot.
Wzór: Price₂ = IndexPrice + EMA(basis)
\text{Price}_2 = \text{IndexPrice} + \text{EMA}(\text{basis})
Chwilowa wartość bazy jest następnie wygładzana za pomocą wykładniczej średniej kroczącej (EMA). Okno wygładzania jest dobierane indywidualnie dla każdego rynku zgodnie z jego poziomem płynności — krótsze dla głównych par o wysokiej płynności i dłuższe dla rynków o niższej płynności. Zapewnia to, że Mark Price szybko reaguje tam, gdzie księgi zleceń są głębokie, a jednocześnie pozostaje bardziej konserwatywna tam, gdzie są płytkie.
Mechanizmy zapasowe (Fallback Mechanisms)
Aby zapewnić ciągłość działania podczas anomalii technicznych, system wykorzystuje następujące mechanizmy zapasowe:
- Gdy ważona wolumenem cena indeksowa jest niedostępna (na przykład z powodu problemów z połączeniem), system przełącza się na średnią cenę kontraktu (contract midprice), wykorzystując ją jako cenę indeksową.
- Gdy nie można uzyskać danych potrzebnych do obliczenia ceny indeksowej, niemożliwe staje się również wyliczenie Price₁ i Price₂. W takim przypadku Mark Price będzie obliczana wyłącznie na podstawie ostatniej ceny transakcyjnej (last traded price) na rynku bezterminowych kontraktów futures WhiteBIT.