CEX.IO Plus, CEX.IO'nun profesyonel ve kurumsal yatırımcılar için tasarlanmış gelişmiş alım satım platformudur. TsgcWSAPI_CexPlus bileşeni, WebSocket API'sine kapsamlı Delphi erişimi sağlar; piyasa verisi aboneliklerini, emir yönetimini, hesap işlemlerini ve fon transferlerini kapsar — tümü tek bir kalıcı bağlantı üzerinden.
İçindekiler
- Genel Bakış
- Başlarken
- Genel WebSocket Metotları
- Piyasa Verisi Metotları
- Hesap ve Alım Satım Metotları
- Kod Örneği
- Yapılandırma ve Notlar
Genel Bakış
CEX.IO Plus API'si, standart CEX.IO sunumunu önemli ölçüde genişletir. Üç işlevsellik katmanı sağlar: gerçek zamanlı emir defteri ve alım satım akışları için genel abonelikler, tickerların, mumların ve borsa bilgilerinin talep üzerine anlık görüntüleri için piyasa verisi sorguları ve emir yönetimi, ücret sorguları, işlem geçmişi ve fon transferleri dahil tam alım satım işlemleri için hesap metotları. TsgcWSAPI_CexPlus bileşeni, tüm bu yetenekleri kapsar.
Başlarken
Bir TsgcWebSocketClient ve bir TsgcWSAPI_CexPlus bileşeni oluşturun, bunları bağlayın ve API kimlik bilgilerinizi yapılandırın. Bileşen, CEX.IO Plus WebSocket uç noktasına otomatik olarak bağlanır.
oClient := TsgcWebSocketClient.Create(nil);
oCexPlus := TsgcWSAPI_CexPlus.Create(nil);
oCexPlus.Client := oClient;
oCexPlus.CexPlus.ApiKey := 'your_api_key';
oCexPlus.CexPlus.ApiSecret := 'your_api_secret';
oClient.Active := True;
Not: CEX.IO Plus, standart CEX.IO API'sine kıyasla farklı bir API uç noktası ve kimlik doğrulama şeması kullanır. API kimlik bilgilerinizin standart CEX.IO platformundan değil, CEX.IO Plus panosundan oluşturulduğundan emin olun.
Genel WebSocket Metotları
Genel abonelik metotları, kimlik doğrulaması gerektirmeden gerçek zamanlı veri akışı sağlar. Bunlar piyasa izleme ve canlı veri akışları oluşturmak için idealdir.
| Metot | Açıklama |
|---|---|
SubscribeOrderBook |
Bir işlem çifti için gerçek zamanlı emir defteri güncellemelerine abone olur. |
UnSubscribeOrderBook |
Bir işlem çifti için emir defteri güncellemelerinden aboneliği iptal eder. |
SubscribeTrade |
Bir işlem çifti için canlı alım satım yürütme akışına abone olur. |
UnSubscribeTrade |
Alım satım yürütme akışından aboneliği iptal eder. |
// Subscribe to BTC-USD order book and trades
oCexPlus.SubscribeOrderBook('BTC-USD');
oCexPlus.SubscribeTrade('BTC-USD');
// Unsubscribe when no longer needed
oCexPlus.UnSubscribeOrderBook('BTC-USD');
oCexPlus.UnSubscribeTrade('BTC-USD');
Piyasa Verisi Metotları
Piyasa verisi metotları, borsa verilerinin talep üzerine anlık görüntülerini döndürür. Aboneliklerin aksine bunlar, tek bir sonuç döndüren istek-yanıt çağrılarıdır.
| Metot | Açıklama |
|---|---|
GetTicker |
Bir çift için güncel ticker'ı (bid, ask, son fiyat) alır. |
GetOrderBook |
Bir çift için güncel emir defteri anlık görüntüsünü alır. |
GetCandles |
Grafik çizimi için OHLCV mum verilerini alır. |
GetTradeHistory |
Bir çift için son genel alım satım geçmişini alır. |
GetServerTime |
Senkronizasyon için güncel sunucu zaman damgasını alır. |
GetPairsInfo |
Tüm mevcut işlem çiftleri hakkında bilgi alır. |
GetCurrenciesInfo |
Desteklenen tüm para birimleri hakkında bilgi alır. |
GetProcessingInfo |
Para yatırma ve çekme işleme ayrıntılarını alır. |
Piyasa Verisi Sorgulama
// Get current ticker for BTC-USD
oCexPlus.GetTicker('BTC-USD');
// Get order book snapshot
oCexPlus.GetOrderBook('BTC-USD');
// Get candle data for charting
oCexPlus.GetCandles('BTC-USD');
// Get available trading pairs
oCexPlus.GetPairsInfo;
Hesap ve Alım Satım Metotları
Hesap metotları kimlik doğrulaması gerektirir ve emir verme, hesap durumu kontrolleri, ücret yönetimi ve fon transferleri dahil tam alım satım yetenekleri sağlar.
Hesap Yönetimi
| Metot | Açıklama |
|---|---|
Ping |
Bağlantıyı sürdürmek için bir keepalive ping gönderir. |
CreateAccount |
Platformda yeni bir alt hesap oluşturur. |
GetAccountStatus |
Güncel hesap durumunu ve ayrıntılarını alır. |
GetCurrentFee |
Hesap için güncel işlem ücreti oranını alır. |
GetFeeStrategy |
Ücret stratejisini ve katman bilgilerini alır. |
GetVolume |
Ücret katmanı hesaplaması için işlem hacmini alır. |
Emir Yönetimi
| Metot | Açıklama |
|---|---|
GetOrders |
Hesaptaki tüm açık emirleri alır. |
NewOrder |
Tam parametre kontrolüyle yeni bir emir verir. |
NewMarketOrder |
Güncel en iyi fiyattan yürütülen bir piyasa emri verir. |
NewLimitOrder |
Belirtilen bir fiyattan bir limit emri verir. |
CancelOrder |
Belirli bir açık emri tanımlayıcısına göre iptal eder. |
CancelAllOrders |
Tüm açık emirleri bir kerede iptal eder. |
Geçmiş ve Fonlar
| Metot | Açıklama |
|---|---|
GetTransactionHistory |
Hesabın işlem geçmişini alır. |
GetFundingHistory |
Para yatırma ve çekme geçmişini alır. |
InternalTransfer |
Alt hesaplar arasında dahili olarak fon transfer eder. |
GetDepositAddress |
Bir para birimi için bir yatırma adresi oluşturur veya alır. |
FundsDepositFromWallet |
Harici bir cüzdandan alım satım hesabına fon yatırır. |
FundsWithdrawalToWallet |
Alım satım hesabından harici bir cüzdana fon çeker. |
Kod Örneği
Aşağıdaki örnek; CEX.IO Plus'a bağlanmayı, hesap durumunu kontrol etmeyi, emir defterine abone olmayı ve bir piyasa emri vermeyi gösterir.
oClient := TsgcWebSocketClient.Create(nil);
oCexPlus := TsgcWSAPI_CexPlus.Create(nil);
oCexPlus.Client := oClient;
oCexPlus.CexPlus.ApiKey := 'your_api_key';
oCexPlus.CexPlus.ApiSecret := 'your_api_secret';
oClient.Active := True;
// Get account status
oCexPlus.GetAccountStatus;
// Subscribe to order book
oCexPlus.SubscribeOrderBook('BTC-USD');
// Place a market order
oCexPlus.NewMarketOrder('BTC', 'USD', cxpsBuy);
Farklı Emir Türleri Verme
CEX.IO Plus birden fazla emir türünü destekler. Mevcut en iyi fiyattan anında yürütme için NewMarketOrder'ı, fiyata özel emirler için NewLimitOrder'ı veya tam parametre kontrolü için NewOrder'ı kullanın.
// Market order: buy BTC with USD at market price
oCexPlus.NewMarketOrder('BTC', 'USD', cxpsBuy);
// Limit order: buy BTC at a specific price
oCexPlus.NewLimitOrder('BTC', 'USD', cxpsBuy, 0.01, 30000);
// Cancel a specific order
oCexPlus.CancelOrder('order-id-here');
// Cancel all open orders
oCexPlus.CancelAllOrders;
Fon Transferleri
Bileşen, alt hesaplar arasında dahili fon transferlerinin yanı sıra para yatırma ve çekme işlemlerini de destekler.
// Get deposit address for BTC
oCexPlus.GetDepositAddress('BTC');
// Retrieve funding history
oCexPlus.GetFundingHistory;
// Transfer funds between sub-accounts
oCexPlus.InternalTransfer('from-account', 'to-account', 'BTC', 0.5);
Yapılandırma ve Notlar
API Kimlik Bilgileri
API anahtarınızı ve secret'ınızı CEX.IO Plus platformundan oluşturun. Bunlar standart CEX.IO kimlik bilgilerinden farklıdır. API anahtarının, gerçekleştirmeyi düşündüğünüz işlemler (örneğin alım satım, para çekme) için uygun izinlere sahip olduğundan emin olun.
Çift Adlandırma Kuralı
CEX.IO Plus, ayrı baz ve teklif para birimi parametreleri kullanan standart CEX.IO API'sinin aksine, BTC-USD gibi tireli bir çift biçimi kullanır. Abonelik metotlarını ve piyasa verisi sorgularını çağırırken her zaman tireli biçimi kullanın.
Emir Yönü Enumerasyonu
Emir metotları, emir yönünü belirtmek için cxpsBuy ve cxpsSell enum değerlerini kullanır. Bunlar CEX.IO Plus bileşenine özeldir ve standart CEX.IO enumerasyonundan farklıdır.
Bağlantı Keepalive
Kimliği doğrulanmış oturumu canlı tutmak için Ping metodunu düzenli aralıklarla kullanın. Bu, sunucunun hareketsizlik nedeniyle bağlantıyı kapatmasını önler.
GetPairsInfo ve GetCurrenciesInfo'yu kullanın.
Hata İşleme
CEX.IO Plus'tan gelen tüm yanıtlar bir durum alanı içerir. Yanıt durumunu ve hata ayrıntılarını kontrol ederek bileşenin mesaj olayında hata yanıtlarını işleyin. Yaygın hatalar arasında yetersiz bakiye, geçersiz çift adları ve kimlik doğrulama hataları bulunur.
