Gezinmeye atla

Sürekli Siparişler

Sürekli Siparişler: Agent Java SDK v0.3.0 entegrasyonu, örnekler, parametreler ve yanıt semantiği.

Markdown olarak görüntüle

Bu kılavuz Agent Java SDK v0.3.0, Java 8+ ve etiketli kamu sözleşmesini hedefler. Örnekler, client başlatıldıktan sonra bir iş ortağı arka ucunda çalıştırılır. Hızlı Başlangıç.

Örnek önkoşullar

Java parçacıkları bu içe aktarmaları paylaşır. Hızlı Başlangıç’ı kullanarak client’ı başlatın ve kaydedilen bağlamadan platformUserId’i edinin. Örnek kullanıcı/sipariş kimlikleri kendi kalıcı değerlerinizle değiştirilmelidir.

import com.sixmm.agent.*;
import com.sixmm.agent.model.*;
import java.util.*;

listCurrentPerpetualOrders

Talep modeli: CurrentPerpetualOrdersRequest.

import com.sixmm.agent.model.CurrentPerpetualOrdersRequest;
import com.sixmm.agent.model.PerpetualResponse;
import java.util.Collections;
CurrentPerpetualOrdersRequest request = new CurrentPerpetualOrdersRequest();
request.platformUserIds = Collections.singletonList("1188041528");
request.limit = 100;
request.orderCategory = "NORMAL";
request.symbol = "BTCUSDT";
PerpetualResponse response = client.listCurrentPerpetualOrders(request);
System.out.println(response.data.items.size());
System.out.println(response.data.hasMore);
System.out.println(response.data.nextCursor);

Talep alanları

AlanJava türüGerekliAnlam
orderCategoryStringEvetNORMAL veya CONDITIONAL; koşullu sorgular açık kullanıcılar gerektirir.
platformUserIdsjava.util.List<String>Koşullu1-100 benzersiz genel kimlik; Dolumlar ve koşullu siparişler için gereklidir. Doğrudan oynatıcı kapsamı için desteklenen sorguları hariç tutun; [] geçersiz.
symbolStringHAYIRİsteğe bağlı işlem çifti filtresi.
limitIntegerHAYIRVarsayılan 500; 1–1000.
cursorStringHAYIRDöndürülen nextCursor öğesini değişmemiş filtrelerle kullanın; hasMore yanlış olduğunda dur.

Örnek bir sayfayı okuyor. Gerekli alanlar, oynatıcı kapsamı, filtre semantiği, limit, imleç ve sınırlı yeniden denemeler için aşağıdaki adımları izleyin Sorguya genel bakış. Sayfalama sırasında tüm filtreleri değiştirmeden tutun; Bir hatayı boş bir sonuç olarak yorumlamayın.

listPerpetualOrderHistory

Talep modeli: PerpetualOrderHistoryRequest.

import com.sixmm.agent.model.PerpetualOrderHistoryRequest;
import com.sixmm.agent.model.PerpetualResponse;
import java.util.Collections;
PerpetualOrderHistoryRequest request = new PerpetualOrderHistoryRequest();
request.platformUserIds = Collections.singletonList("1188041528");
request.limit = 100;
request.orderCategory = "NORMAL";
request.symbol = "BTCUSDT";
request.endTime = System.currentTimeMillis();
request.startTime = request.endTime - 3_600_000L;
PerpetualResponse response = client.listPerpetualOrderHistory(request);
System.out.println(response.data.items.size());
System.out.println(response.data.hasMore);
System.out.println(response.data.nextCursor);

Talep alanları

AlanJava türüGerekliAnlam
orderCategoryStringEvetNORMAL veya CONDITIONAL; koşullu sorgular açık kullanıcılar gerektirir.
platformUserIdsjava.util.List<String>Koşullu1-100 benzersiz genel kimlik; Dolumlar ve koşullu siparişler için gereklidir. Doğrudan oynatıcı kapsamı için desteklenen sorguları hariç tutun; [] geçersiz.
symbolStringHAYIRİsteğe bağlı işlem çifti filtresi.
orderIdStringHAYIRSıradan sipariş kimliği; iş ortağı transfer emri numarası değil.
conditionIdStringHAYIRKoşullu sipariş kimliği; orderId ile karıştırmayın.
clientOrderIdStringHAYIRTicari müşteri sipariş referansı, agentOrderNo değil.
sideStringHAYIRBUY / SELL filtresi.
statusStringHAYIRKaynağa özgü durum; durum referansına bakın.
startTimeLongHAYIRKapsamlı Unix milisaniye; sabit bir UTC geçmiş penceresi kullanın.
endTimeLongHAYIRÖzel Unix milisaniyesi.
limitIntegerHAYIRVarsayılan 500; 1–1000.
cursorStringHAYIRDöndürülen nextCursor öğesini değişmemiş filtrelerle kullanın; hasMore yanlış olduğunda dur.

Örnek bir sayfayı okuyor. Gerekli alanlar, oynatıcı kapsamı, filtre semantiği, limit, imleç ve sınırlı yeniden denemeler için aşağıdaki adımları izleyin Sorguya genel bakış. Sayfalama sırasında tüm filtreleri değiştirmeden tutun; Bir hatayı boş bir sonuç olarak yorumlamayın.

Sıradan siparişler: mevcut ve geçmiş

Güncel: orders/current + orderCategory=NORMAL; Geçmiş: orders/history + orderCategory=NORMAL.

data alanıtipUygulamanın anlamı ve kapsamı
symbolstringTicaret çifti, örneğin BTCUSDT
orderIdstringPlatform olağan sipariş kimliği
orderCategorystringDüzeltildi NORMAL
clientOrderIdstringİşlem emri kaynağı tarafından sağlanan müşteri sipariş numarası; ticari fon transferi ile aynı alan değildir agentOrderNo
orderTypestringTemsilci türü, örneğin LIMIT, MARKET; gerçek numaralandırma değeri geçerli olacaktır
sidestringAlış ve satış yönü BUY / SELL
statusstringOlağan sipariş durumu, sorguya genel bakışa bakın
timeInForcestringGeçerlilik süresi/anlaşma yürütme stratejisi, örneğin GTC, IOC, FOK; gerçek değerlere göre yorumlanır
pricestringemanet edilen fiyat; Fiyat verilmediği ve piyasa işlem fiyatının kendisi tarafından tamamlanmayacağı durumlarda bu bilgi atlanabilir.
quantitystringOrijinal sipariş miktarı
filledQuantitystringİşlem miktarı
remainingQuantitystringİşlem yapılmamış miktar; geçerli sorgu miktarı - filledQuantity alır ve geçmiş sorgu geçmiş kayıt değerini alır
avgFilledPricestringTamamlanan parçanın ortalama işlem fiyatı; tamamlanmadığında hiçbir değeri olmayabilir
reduceOnlybooleanYalnızca pozisyonların azaltılıp azaltılmayacağı
closeOnlybooleanYalnızca pozisyon kapatmak için kullanılıp kullanılmadığı
makerOnlybooleanYalnızca Maker olarak yürütülüp yürütülmeyeceği
leverageintegerBirden fazla yararlanın; Geçmişteki olağan düzenin bir kaynağı vardır ve mevcut olağan düzen bu değeri yaratmaz
marginModestringMarj modu; Geçmişteki olağan sıralama şu anda “1”, “2” gibi sayısal bir numaralandırma dizesi döndürmektedir; mevcut olağan sipariş sağlanmıyor
createdAtintegerSipariş oluşturma süresi, milisaniye; geçmiş sipariş zamanını filtrelemek için bu alanı kullanın
updatedAtintegerDelege kaydı güncelleme süresi, milisaniye

Sipariş geçmişi, sonlandırılan olağan siparişleri içerir. Her kayıt, yalnızca arayüz adına dayalı olarak tam olarak tamamlanmış sayılamaz. Mevcut sipariş sayfası bir sipariş olayı akışı değil, mevcut bir durum sorgusudur.

Koşullu emirler: güncel ve geçmiş

Güncel: orders/current + orderCategory=CONDITIONAL; Geçmiş: orders/history + orderCategory=CONDITIONAL. Her ikisi de açık platformUserIds gerektirir.

data alanıtipAnlam
symbolstringticaret çifti
conditionIdstringSıradan orderId’dan bağımsız, koşullu sipariş kimliği
orderCategorystringDüzeltildi CONDITIONAL
generatedOrderIdstringTetiklemeden sonra oluşturulan sıradan sipariş kimliği; oluşturulmadıysa ihmal edilebilir
clientOrderIdstringKoşullu siparişlerin müşteri sipariş numarası, mevcut olduğunda çıktı
sidestringBUY / SELL
orderTypestringTetikleme sonrası emir türü, gerçek değere göre yorumlanır
triggerTypestringGerçek kaynak numaralandırmasıyla açıklanan tetikleyici kural türü
workingTypestringFiyatı tetikleyen iş türü/fiyat kaynağı, gerçek numaralandırma olarak yorumlanır
timeInForcestringEmrin tetiklendikten sonraki geçerlilik süresi/yürütme stratejisi
pricestringTetiklendikten sonraki emir fiyatı, kaynak değere sahip olduğunda çıktı
quantitystringKoşullu sipariş miktarı
triggerPricestringtetik fiyatı
reduceOnlybooleanYalnızca pozisyonların azaltılıp azaltılmayacağı
closePositionbooleanTam konum kapatma anlambiliminin kullanılıp kullanılmayacağı, aynı alan olarak closeOnly ile karıştırılamaz
leverageintegerBirden fazla yararlanın, sıfır olmadığında çıktı alın
marginModestringBu sınıf, sıradan tarihsel sıralardan/konumlardan farklı bir sayısal dize olan CROSS / ISOLATED değerini döndürür
statusstringKoşullu tek tetikleme durumu, sorguya genel bakışa bakın
triggerStatusstringMevcut uygulama durumla aynı koşullu durum değerini kullanıyor
createdAtintegerKoşullu sipariş oluşturma süresi, milisaniye; tarihsel koşullar bu zamana göre filtrelenir
updatedAtintegerGüncelleme süresi, bir değer olduğunda çıktı, milisaniye
deletedAtintegerİşaret süresini sil, bir değer olduğunda çıktı, milisaniye; birleşik bir işlem/iptal zamanı alanı değildir

Koşullu emirler, sıradan emirler için filledQuantity, remainingQuantity, avgFilledPrice sağlamaz. Tetikleme sonrasında olağan emirlerin işlem durumuna ihtiyacınız varsa, sıradan emirleri/işlemleri generatedOrderId aracılığıyla sorgulayın ve işlem hacmini koşullu emir durumundan çıkarmayın.

Örnek yanıt zarfı

Bu, tamamlanmış bir işlemin örneği değil, açıklayıcı boş bir sayfadır. Yukarıdaki kaynağa özgü alan tablolarında doldurulmuş items[].data açıklanmaktadır.

{"code":0,"message":"success","data":{"items":[],"nextCursor":"","hasMore":false}}

Kaynak ve ilgili kılavuzlar