सामान्य WebSocket API जानकारी
- बेस URL: wss://api-adapter.backend.currency.com/connect
- बेस URL, डेमो अकाउंट: wss://demo-api-adapter.backend.currency.com/connect
- सारे एन्डपॉइंट एक JSON ऑब्जेक्ट वापस करते हैं या array.
- सभी समय और टाइमस्टैम्प संबंधित फील्ड मिलीसेकंड में हैं.
- 30 सेकंड के अंतराल के लिए API पिंग नहीं होने की स्थिति में Websocket API कनेक्शन बंद हो जाता है.
- कम्पनी टोकन, टोकनाइज़्ड बॉन्ड, KARMA.cx टोकन और टोकनाइज़्ड एसेट को छोड़ के, हॉन्ग-कॉन्ग बाज़ारों के सभी टोकनाइज़्ड एसेट हमारे API के पहले वर्ज़न (v1) में उपलब्ध हैं. दूसरे API वर्ज़न (v2) में भी हॉन्ग-कॉन्ग के बाज़ार उपलब्ध हो गए.
- API के अंदर लेवरेज ट्रेडिंग के लिए उपलब्ध एसेटों की सूची यहां मिल सकती है.
!ध्यान दें. सफल सिग्नेचर जेनरेशन के लिए कृपया रिक्वेस्ट पेलोड में पैरामीटरों को वर्णमाला क्रम में डालें.
कृपया, Swagger के अंदर WebSocket API भाग का संदर्भ देखें, आवश्यक जानकारी प्राप्त करने के लिए. और उपयोग के उदाहरण यहां मिल सकते हैं.
Troubleshooting
सब्सक्राइब करने का तरीका
const ws = new WebSocket
('wss://api-adapter.backend.currency.com/connect',
{perMessageDeflate: true});
let responseList = [];
let request, response = Object();
कॉलबैक
await ws.on('open', async function open() {
console.log("connected");
});
ws.on('close', async function close() {
console.log('disconnected');
});
ws.on('error', async function error(data) {
console.log('error');
console.log(data);
});
ws.on('message', async function incoming(data) {
response = JSON.parse(data);
responseList.push(response);
});
कोरिलेशन ID
रिक्वेस्ट के साथ एसिंक्रोनस (यानी, अतुल्यकालिक) प्रतिक्रिया की मैपिंग के लिए यह ID की ज़रूरत है
request.correlationId = request.correlationId + 1;
रिक्वेस्ट मॉडल
//Destination
request.destination = "/api/v1/leverageSettings";
//Request payload
request.payload = {"symbol": ETH/USD,
"timestamp": Date.now(),
"apiKey": apiKey};
request.payload.signature = getHash(request);
function getHash(request) {
let payload = "";
Object.keys(request.payload).sort().forEach(function(key) {
payload += key + "=" + request.payload[key] + "&";
});
payload = payload.substring(0, payload.length - 1);
console.log(payload);
let hash = CryptoJS.HmacSHA256(payload, apiSecret).toString();
console.log(hash);
return hash;
}
//Send request
message = JSON.stringify(request);
ws.send(message);
await sleep(5000);
index = responseList.findIndex(i =>
i.correlationId ===
request.correlationId.toString());
console.log('============================');
console.log('index: ' + index);
console.log(responseList[index]);
console.log('============================');
‘सिम्बल’ पैरामीटर विवरण
एक्सचेंज और लेवरेज ट्रेडिंग मोड दोनों के लिए 'सिम्बल' पैरामीटर को exchangeInfo स्ट्रीम के भीतर चेक किया जा सकता है.
एक्सचेंज ट्रेडिंग मोड: exchangeInfo स्ट्रीम से सिम्बल का उपयोग करें;
लेवरेज ट्रेडिंग मोड: exchangeInfo स्ट्रीम से 'सिम्बल' देखें. यदि 'सिम्बल' के नाम पर करेंसियां हैं तो निम्नलिखित प्रारूप का उपयोग किया जाना चाहिए: ‘BTC%2FUSD_LEVERAGE’. यदि 'सिम्बल' के नाम पर एक एसेट का नाम है तो निम्नलिखित प्रारूप सही है: ‘Oil%20-%20Brent.’
ENUM परिभाषाएं
ऑर्डर प्रकार (orderTypes, प्रकार):
- लिमिट
- बाज़ार
- स्टॉप
ऑर्डर साइड (साइड):
- खरीदें
- बेचें
टाइम इन फोर्स (timeInForce):
- GTC
- IOC
- FOK
क्लाइन/कैंडलस्टिक चार्ट इंटर्वल:
मि -> मिनट; घं -> घंटे; दि -> दिन; ह -> हफ्ते
- 1मि
- 5मि
- 15मि
- 30मि
- 1घं
- 4घं
- 1दि
- 1ह
कृपया ध्यान दें की अगर "इंटर्वल" पैरामीटर के लिए कोई वैल्यू नह दी गयी है जब wss:OHLCMarketData.subscribe एन्डपॉइंट का इस्तेमाल हो रहा है, तब '1मि' वैल्यू डिफॉल्ट से सेट होती है.