Kendi Kendine İşlem Önleme (STP)
Kendi kendine işleme karşı otomatik koruma.
Genel Bakış
Gelen bir (taker) emir, aynı cüzdana ait bekleyen bir (maker) emirle eşleşecek olduğunda, motor emirleri gerçekleştirmek yerine her iki emri de iptal eder. Bu, wash trading'i önler ve piyasa yapıcıları kendi kotasyonlarını yanlışlıkla çaprazlamaktan korur.
STP her zaman etkindir. Herhangi bir yapılandırma, devre dışı bırakma seçeneği veya alternatif mod yoktur.
Davranış
Strateji: Her İkisini de İptal Et
Kendi kendine işlem tespit edildiğinde:
- Maker emri,
"Self-trade prevention"gerekçesiyle iptal edilir - Taker emri reddedilir (önceden gerçekleşme yoksa) veya iptal edilir (kısmen gerçekleşmişse)
İki emir arasında herhangi bir gerçekleşme oluşmaz.
Cüzdan Düzeyinde Eşleştirme
STP, agent anahtarlarını değil cüzdan adreslerini karşılaştırır. Birden fazla anahtardan emir imzalamak için agent yetkilendirmesi kullanıyorsanız, aynı işlem cüzdanı altındaki tüm emirler birbirlerine karşı STP'ye tabidir.
Kısmi Gerçekleşmeler Korunur
Bir taker emri, kendi kendine işlemle karşılaşmadan önce başka karşı taraflara karşı gerçekleşirse, bu gerçekleşmeler korunur.
Örnek: Emir defterinde önce Cüzdan B tarafından sunulan 5 kontrat, ardından Cüzdan A tarafından sunulan 5 kontrat bulunmaktadır. Cüzdan A, 10 kontratlık bir alış emri gönderir:
| Adım | Eşleşilen Taraf | Sonuç |
|---|---|---|
| 1 | Cüzdan B (5 kontrat) | Gerçekleşme: 5 kontrat işlem gördü |
| 2 | Cüzdan A (5 kontrat) | Kendi kendine işlem tespit edildi |
Sonuç:
- Cüzdan A, Cüzdan B'ye karşı 5 kontratlık bir gerçekleşme alır
- Cüzdan A'nın maker emri (5 kontrat) iptal edilir
- Cüzdan A'nın taker emri
filled_size: 5ile iptal edilir
Emir Durumu
| Senaryo | Taker Durumu | Gerekçe |
|---|---|---|
| Önceden gerçekleşme yok | Rejected | "Self-trade prevention" |
| Kendi kendine işlemden önce kısmi gerçekleşmeler | Canceled | "Self-trade prevention (partial fill kept)" |
Maker emri her zaman "Self-trade prevention" gerekçesiyle Canceled olur.
GTC Emirleri Kendi Kendine İşlemden Sonra Defterde Beklemez
Bir GTC taker emri STP'yi tetiklerse, emir normalde defterde bekleyecek olsa bile kalan miktar deftere eklenmez. Emir tamamen sonlandırılır.
WebSocket Bildirimleri
Hem taker hem de maker iptali/reddi, order_updates kanalı üzerinden iletilir. reason alanı, nedenin STP olduğunu belirtir.
İzleme
STP olayları, ht_engine_self_trade_prevented_total Prometheus sayacını artırır.
SSS
Farklı bir STP modu (örneğin cancel-newest veya decrement) seçebilir miyim? Hayır. Hypercall yalnızca her-iki-emri-iptal (cancel-both) modunu kullanır.
STP, perp emirlerine uygulanır mı? Evet. STP, eşleştirme motorundaki tüm emir türlerine, hem opsiyonlara hem de perp'lere uygulanır.
STP, RFQ işlemlerine uygulanır mı? Evet. Taker ile kotasyon sağlayıcı aynı cüzdanı paylaşıyorsa, kotasyon reddedilir.
Her iki tarafta da kotasyon veren bir piyasa yapıcıyım. Kotasyonlarım birbirini iptal eder mi? Yalnızca gelen bir emir kotasyonlarınızın çaprazlanmasına neden olacaksa. Defterin karşıt taraflarında farklı fiyatlarda bekleyen emirler normal şekilde bir arada bulunur. STP yalnızca eşleşme anında tetiklenir.