Jak Używać Algorytmu TWAP na Binance Spot

2023-04-20 03:34

Binance Spot uruchamia handel przy użyciu Time-Weighted Average Price (TWAP ) dla użytkowników interfejsu API. Dzięki dostępnej na platformie Binance możliwości handlu algorytmicznego użytkownicy mogą rozdzielać duże zlecenia na mniejsze kwoty i realizować je automatycznie w regularnych odstępach czasu, aby zminimalizować wpływ ceny.

Czym jest algorytm TWAP?

Time-Weighted Average Price (TWAP) to algorytmiczna strategia realizacji transakcji. Chodzi w niej o to, aby uzyskać średnią cenę realizacji zbliżoną do średniej ceny ważonej czasowo w ustalonym przez użytkownika okresie.

Kiedy stosować algorytm TWAP?

Traderzy zazwyczaj wdrażają TWAP w celu złagodzenia wpływu rynkowego przy dużych zleceniach. Algorytmy handlowe TWAP służą do optymalizacji średniej ceny transakcji poprzez rozkładanie realizacji zlecenia na określony przedział czasowy.

TWAP jest preferowaną metodą zapewniania lepszej ceny wykonania w następujących sytuacjach:

  • Kiedy wielkość zlecenia przekracza dostępną płynność w księdze zleceń.
  • W oczekiwaniu na okres wysokiej zmienności cenowej bez wyraźnego trendu wzrostowego ani spadkowego.

Oto przykładowe schematy realizacji algorytmu TWAP:

image

Na co należy zwrócić uwagę przy tworzeniu strategii TWAP?

  • Określ wielkość transakcji (całkowitą kwotę krypto, jaką chcesz kupić lub sprzedać). Minimalna dozwolona wielkość transakcji w ramach strategii TWAP na Binance jest równa 1000 USDT. Kiedy strategia TWAP zrealizuje wszystkie zlecenia, zlecenie TWAP się zatrzymuje.
  • Wybierz docelowy okres realizacji TWAP. Na Binance Spot można wybrać okres od 5 minut do 24 godzin.

Szczegóły interfejsu API algorytmu TWAP

Nowy punkt końcowy zlecenia TWAP:

POST /sapi/v1/algo/spot/newOrderTwap

Możliwość ustawienia parametrów realizacji

ParametryOpis
symbolSymbol handlowy (np. BTCUSDT)
stronaStrona transakcji (np. KUPNO lub SPRZEDAŻ)
ilośćKwota transakcji (musi się mieścić w przedziale o równowartości od 1000 USDT do 100 000 USDT)
czas trwania

Czas trwania zlecenia TWAP w sekundach (300 lub 86 400)

  • Jeżeli czas trwania zlecenia będzie krótszy niż 5 minut, zostanie ono domyślnie ustawione na 5 minut (300 sekund);
  • Jeżeli czas trwania zlecenia będzie dłuższy niż 24 godziny, zostanie ono domyślnie ustawione na 24 godziny (86 400 sekund).
limitPriceCena limit zlecenia TWAP (Zlecenie zostanie domyślnie złożone po cenie market)

Pozostałe uzupełniające punkty końcowe

EndpointOpisLink
DELETE /sapi/v1/algo/spot/orderAnulowanie aktywnego zleceniahttps://binance-docs.github.io/apidocs/spot/en/#cancel-algo-order-trade-2
GET /sapi/v1/algo/spot/openOrdersPobranie wszystkich zleceń bieżących

https://binance-docs.github.io/apidocs/spot/en/#query-current-algo-open-orders-user_data-2
GET /sapi/v1/algo/spot/historicalOrdersPobranie zleceń historycznychhttps://binance-docs.github.io/apidocs/spot/en/#query-historical-algo-orders-user_data-2
GET /sapi/v1/algo/spot/subOrdersPobranie odpowiednich podzleceń określonego identyfikatora algorytmuhttps://binance-docs.github.io/apidocs/spot/en/#query-sub-orders-user_data-2

Często Zadawane Pytania

1. Jakie są limity zleceń?

  • Limit Otwartych Zleceń: TWAP obsługuje maksymalnie 20 jednocześnie działających zleceń na jedno konto. Można złożyć kilka zleceń TWAP na ten sam symbol.
  • Limit Wartości Nominalnej: Wartość nominalna (Kwota Zlecenia * Ostatnia Cena (aktywa bazowe)) musi przekraczać równowartość (≥) 1000 USDT lub być jej równa, albo być mniejsza niż równowartość (≤) 100 000 USDT lub jej równa.
  • Czas trwania: Czas trwania nie może być krótszy niż 5 minut (300 sekund) ani dłuższy niż 24 godziny (86 400 sekund).

Szczegóły transakcji będą dostępne dopiero po zrealizowaniu wszystkich zleceń TWAP. Widoczne będą tylko częściowo zrealizowane zlecenia. Można sprawdzić kwotę transakcji, średnią cenę transakcji i opłatę transakcyjną.

2. Co oznaczają kody błędów?

Po nieodpowiednim zapytaniu mogą się pojawić poniższe kody błędów.

Kod zewnętrznyKomunikat zewnętrzny
0OK
-1000W trakcie przetwarzania żądania wystąpił nieznany błąd
-1102Parametr obowiązkowy nie został wysłany, jest pusty/zerowy lub zniekształcony
-20121Nieprawidłowy symbol
-20130Nieprawidłowe przesłane dane parametru
-2013Zlecenie nie istnieje
-5007Kwota musi być większa niż zero
-20124Nieprawidłowe ID algorytmu lub ID algorytmu zostało zakończone
-20132Zdublowane ID algorytmu klienta
-20194Czas trwania jest zbyt krótki, aby zrealizować całą żądaną kwotę
-20195Całkowity rozmiar jest zbyt mały
-20196Całkowity rozmiar jest zbyt duży
-20198Masz maksymalną dozwoloną liczbę otwartych zleceń

3. Czy zlecenia TWAP gwarantują realizację?

Zlecenia TWAP nie gwarantują realizacji. Zlecenia będą realizowane z największą starannością, zgodnie z płynnością i zmiennością rynku.

Jeżeli podczas realizacji zlecenia cena market ulegnie znacznej zmianie lub będzie niewystarczająca płynność, algorytm może nie być w stanie w całości zrealizować wszystkich zleceń.

W związku z tym realizacja jest i zawsze będzie zależna od płynności. Nie ma gwarancji wykonania po najlepszej cenie. Algorytm może np. nie zrealizować zlecenia przed określonym czasem końcowym, jeżeli rynek znajdzie się w trudnej sytuacji.

4. Jak sprawdzić status zleceń TWAP?

Status zlecenia TWAP można sprawdzić przy użyciu punktów końcowych zapytania o zlecenie (GET /sapi/v1/algo/spot/openOrders lub GET /sapi/v1/algo/spot/historicalOrders).

Pamiętaj:

  • Nie będziesz otrzymywać żadnych powiadomień WebSocket z aktualizacjami na temat wypełnienia zleceń.
  • Otrzymanie ["success": true] nie oznacza, że Twoje zlecenie zostanie wykonane. Jeżeli np. saldo Twojego Portfela Spot będzie niewystarczające, otrzymasz ["success": true], ale zlecenie i tak nie zostanie zrealizowane.