Files
trade-doc/drift-perps-monitoring.md

54 lines
1.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Drift Perps na co nasłuchiwać w monitoringu
## 1) Co jest najważniejsze
Jeżeli chcesz monitorować handel na Drift Perps, to nie wystarczy jedno konto.
Najważniejsze są:
- `Drift Program ID`: `dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH`
- Konta rynków perp: `PerpMarket` (po `marketIndex` dla interesujących Cię marketów)
- Konto `EventSubscriber` eventy handlowe i stanu DLOB
- Konta użytkownika/firmy jeśli śledzisz własne pozycje/realizację: `User`, `UserStats`
## 2) Co monitorować jako pierwsze (w praktyce)
- `OrderRecord` (utworzenia/zmiany zleceń)
- `OrderActionRecord` (fill/cancel/modify)
- `LiquidationRecord`
- `FundingRateRecord`
- `FundingPaymentRecord`
- `SettlePnlRecord`
To zwykle wystarcza, żeby zobaczyć:
- aktywność order flow,
- wykonania pozycji,
- likwidacje,
- warunki finansowania.
## 3) Co zwykle monitoruje się do DLOB/realtime
- `OrderSubscriber` + `DLOBSubscriber` (SDK Drift) lub dedykowane streamy DLOB.
- Feed order book w czasie rzeczywistym zamiast ręcznego `getProgramAccounts` na wszystkie konta.
- Filtrowanie tylko po:
- `marketType == perp`
- `marketIndex` (tylko rynki, które Cię interesują)
## 4) Minimalna konfiguracja startowa
1. Podepnij `DriftClient` z listą `perpMarketIndexes`.
2. Włącz `EventSubscriber` na wyżej wymienione `eventTypes`.
3. Dodaj parser dla eventów, który wyciąga:
- `marketIndex`
- `marketType`
- `user`
- `price`, `size`, `taker/maker`, `direction`, `liq/liab`, `time`
4. Odrzuć eventy off-market albo nie-tego rodzaju marketu.
## 5) Odpowiedź na Twoje pytanie o „jaki konto monitorować”
Nie ma jednego konta.
- Jeśli chcesz widzieć **cały handel perps**: subskrybuj eventy z `EventSubscriber` + DLOB.
- Jeśli chcesz widzieć **konkretnych użytkowników**: dorzuć filtr na ich `User/UserStats`.
- Jeśli chcesz widzieć **konkretny rynek**: filtruj po `marketIndex` i `marketType = perp`.