Likidasyon
Likidasyon, sistemi teminat yükümlülüklerini artık karşılayamayan hesaplardan korur. Bir hesabın özkaynağı sürdürme teminatı gereksiniminin altına düştüğünde, likidasyon süreci pozisyonları ödeme gücü olan karşı taraflara aktarır.
Tetikleme Koşulları
Likidasyon, bir hesap batık duruma geldiğinde tetiklenir:
Portföy Teminatı:
Standart Teminat:
Burada sürdürme teminatı = özkaynak - gerekli MM.
Sistem, sağlık durumunu kontrol etmek için pozisyonu olan tüm hesapları sürekli olarak sorgular.
Durum Makinesi
Hesaplar dört likidasyon durumu boyunca ilerler:
| Durum | Açıklama | Emir Kısıtlamaları |
|---|---|---|
| Healthy | Özkaynak > gerekli MM | Yok |
| PreLiquidation | Özkaynak < MM, ek süre aktif | Riski artıran emirler engellenir |
| InLiquidation | Müzayede devam ediyor | Tüm emirler engellenir |
| Liquidated | Müzayede tamamlandı | Hesap temizlendi |
Durum Geçişleri
- Healthy → PreLiquidation: Hesap MM eşiğinin altına düşer
- PreLiquidation → Healthy: Hesap MM'nin üzerine çıkarak toparlanır (kullanıcı fon ekledi veya pozisyonları kapattı)
- PreLiquidation → InLiquidation: Ek süre toparlanma olmadan sona erer
- InLiquidation → Liquidated: Müzayede başarıyla tamamlanır
Likidasyon Öncesi Ek Süre
Bir hesap likidasyon öncesi (pre-liquidation) durumuna girdiğinde:
- Riski artıran emirler anında engellenir
- Riski azaltan emirlere (pozisyon kapatma) izin verilmeye devam edilir
- 60 saniyelik bir ek süre başlar
- Hesap ek süre bitmeden toparlanırsa (özkaynak > MM), Healthy durumuna geri döner
- Ek süre sonunda hâlâ batık durumdaysa, likidasyon müzayedesi başlar
Ek süre kullanıcılara şunlar için zaman tanır:
- Ek teminat yatırma
- Teminat gereksinimini azaltmak için pozisyon kapatma
- Ani piyasa hareketlerine tepki verme
Likidasyon Müzayedesi
Ek süre sona erdiğinde bir Hollanda müzayedesi başlar:
Ödeme Gücü Olan Müzayede (Özkaynak > 0)
Başlangıç fiyatı = özkaynak × (1 - ceza), zaman içinde azalır.
Likidatörler, hesabın pozisyonlarını devralmak için şunlar karşılığında teklif verir:
- Hesap özkaynağı (ceza düşülmüş olarak)
- Tüm pozisyonların sorumluluğu
Ceza, likidatörlerin katılımı için teşvik yaratır.
Ödeme Gücü Olmayan Müzayede (Özkaynak < 0)
Hesap ödeme gücünü yitirmişse (özkaynak negatif), sigorta fonu batık pozisyonları üstlenmeleri için likidatörlere bonus sağlar.
Pozisyon Transferi
Bir likidasyon tamamlandığında:
- Tüm pozisyonlar likide edilen hesaptan likidatöre aktarılır
- Likidatör uzlaşma değerini alır (ödeme gücü olan durumda) veya öder (ödeme gücü olmayan durumda bonus alır)
- Teminat kökü (margin root) zincir üzerinde güncellenir
- Hesap durumu
Liquidateddurumuna geçer
Kısmi vs Tam Likidasyon
| Tür | Koşul | Davranış |
|---|---|---|
| Kısmi | ≤ 5 pozisyon | MM yeniden sağlanana kadar belirli pozisyonlar likide edilir |
| Tam | > 5 pozisyon | Hesabın tamamı likide edilir |
Kısmi likidasyon deterministiktir:
- Pozisyonlar tutarlı bir algoritmayla sıralanır (rastgele değildir)
- Likidatör pozisyonları tanımlı sırayla alır
- Hesap sağlıklı duruma dönünce süreç durur
Ödeme Aczi Şelalesi
Likidasyon tam değeri geri kazanamadığında, kayıplar sırasıyla şu şekilde emilir:
- Hesap Özkaynağı: Likide edilen kullanıcı, özkaynağı kadar zararı üstlenir
- Sigorta Fonu: Özkaynak yetersizse açığı karşılar
- ADL (Otomatik Kaldıraç Azaltma): Sigorta fonu tükenirse, kârlı karşı tarafların kaldıracı orantılı olarak azaltılır
- Sosyalleştirilmiş Zarar: Nihai güvenlik ağı (şu anda uygulanmamaktadır)
Sigorta Fonu
Sigorta fonu:
- Likidasyon cezalarından birikir
- Ödeme gücü olmayan likidasyonları karşılar
- İşlem ücretleri ve cezalarla yeniden doldurulur
- Minimum rezerv hedefi vardır
ADL (Otomatik Kaldıraç Azaltma)
Sigorta fonu kayıpları karşılayamazsa:
- Kârlı pozisyonlara sahip karşı taraflar seçilir
- Pozisyonlar mark fiyatından zorla kapatılır
- Seçimde en yüksek kâr ve kaldıraç önceliklendirilir
- Etkilenen kullanıcılara bildirim gönderilir
API Uç Noktaları
Likidasyon Durumunu Alma
GET /liquidation/status?wallet=0x...
Yanıt:
{
"success": true,
"data": {
"wallet": "0x...",
"state": "pre_liquidation",
"margin_mode": "portfolio",
"equity": "4500.00",
"mm_required": "5000.00",
"maintenance_margin": "-500.00",
"entered_pre_liq_at": 1737312000000,
"mm_shortfall": "500.00",
"auction_id": null
}
}
Likidasyon Geçmişini Alma
GET /liquidation/history?wallet=0x...&limit=20
Bir hesabın durum geçiş geçmişini döndürür.
Herkese Açık Likidasyon Geçmişini Alma
GET /liquidations?limit=50
Tüm cüzdanlardaki likidasyon geçiş geçmişini en yeniden başlayarak döndürür. Bu uç nokta herkese açıktır ve likidatör botları ile izleme araçları için imleç (cursor) sayfalaması kullanır.
Sorgu parametreleri
cursor: Önceki sayfa tarafından döndürülen opak imleç.limit: Sayfa boyutu, varsayılan50, maksimum100.wallet: İsteğe bağlı cüzdan filtresi.statusveyastate: İsteğe bağlı likidasyon geçiş durumu filtresi. Kabul edilen değerler:healthy,pre_liquidation,in_liquidationveliquidated.margin_mode: İsteğe bağlı teminat modu filtresi. Kabul edilen değerler:standardveportfolio.liquidation_mode: İsteğe bağlı likidasyon modu filtresi. Kabul edilen değerler:partialvefull.
Yanıt: Likidasyon geçiş kayıtlarını ve bir sonraki istek için page.next_cursor değerini içeren PublicLiquidationsResponse.
Müzayede Ayrıntılarını Alma
GET /liquidation/auction/{auction_id}
Müzayede durumunu, pozisyonları ve uzlaşma ayrıntılarını döndürür.
WebSocket Bildirimleri
Likidasyon durum değişiklikleri liquidation kanalında yayınlanır:
{
"type": "LiquidationStateChange",
"wallet": "0x...",
"previous_state": "healthy",
"new_state": "pre_liquidation",
"equity": "4500.00",
"mm_required": "5000.00",
"shortfall": "500.00",
"auction_id": null,
"timestamp": 1737312000000
}
Cüzdanınız için gerçek zamanlı güncellemeler almak üzere abone olun.
Parametreler
| Parametre | Değer | Açıklama |
|---|---|---|
poll_interval | 5 saniye | Sağlık kontrolü sıklığı |
grace_period | 60 saniye | Müzayede başlamadan önceki süre |
min_shortfall_threshold | 0 | Likidasyon öncesi durumu tetiklemek için minimum açık |
partial_liquidation_threshold | 5 pozisyon | Bunun altında kısmi likidasyon kullanılır |
En İyi Uygulamalar
Yatırımcılar İçin
- Teminat oranını izleyin: Özkaynağı MM'nin oldukça üzerinde tutun (2x tampon önerilir)
- Uyarılar ayarlayın: Likidasyon öncesi durumunu erken tespit etmek için WebSocket kullanın
- Hazır sermaye bulundurun: Yatırmak üzere yedek teminatı hazır tutun
- Zarar durdur (stop-loss) kullanın: Likidasyondan önce pozisyon azaltmayı otomatikleştirin
Sağlık Durumunu Sorgulama
Teminat durumunuzu düzenli olarak kontrol edin:
# Portfolio margin
curl "https://api.hypercall.xyz/portfolio?wallet=0x..."
# Look for:
# - equity vs maintenance_margin_required
# - margin_ratio (equity / IM)
Ek Süre İçinde Toparlanma
Likidasyon öncesi duruma girerseniz:
- Fonlama akışı üzerinden teminat yatırın
- Teminat gereksinimini azaltmak için pozisyonları kapatın
- Riski artıran açık emirleri iptal edin
Riski azaltan işlemlere, likidasyon öncesi durumda dahi her zaman izin verilir.
Zincir Üzeri vs Zincir Dışı
| Bileşen | Konum | Notlar |
|---|---|---|
| Sağlık izleme | Zincir dışı | 5 saniyelik sorgulama |
| Durum geçişleri | Zincir dışı | Kaydedilir ve saklanır |
| Ek süre zamanlayıcısı | Zincir dışı | Yapılandırılabilir |
| Müzayede yürütme | Zincir üzeri | Controller kontratında pozisyon transferi |
| Uzlaşma | Zincir üzeri | Değer transferi ve teminat kökü güncellemesi |
Zincir dışı motor tespit ve orkestrasyonu yürütür; zincir üzeri yürütme uzlaşma kesinliğini sağlar.
Ayrıca bakınız:
- Portföy Teminatı: Portföy hesapları için MM hesaplaması
- Standart Teminat: Standart hesaplar için MM hesaplaması
- Teminat Tabanı: Likidasyon eşiğini etkileyen güvenlik tabanları