WebSocket अपडेट से लाइव ऑर्डर बुक बनाए रखना
सारांश
यह उदाहरण एक WebSocket क्लाइंट बताता है जो डेरिवेटिव एक्सचेंज से जुड़ता है, प्रमाणीकरण करता है, सार्वजनिक ऑर्डर-बुक फ़ीड की सदस्यता लेता है और प्रमाणीकरण के बाद निजी खाता-संबंधी स्ट्रीम माँगता है। इसका वर्कर लूप संदेश प्राप्त करता है, इवेंट हैंडलर चलाता है और सॉकेट विफल होने पर फिर से जुड़ता है; अलग थ्रेड नियमित अंतराल पर पिंग फ़्रेम भेजता है। उदाहरण बिड और आस्क स्तरों को ऑर्डर पहचानकर्ताओं से जुड़ी डिक्शनरी में रखता है और आंशिक स्नैपशॉट, प्रविष्टि, बदलाव और हटाने के अनुसार उन्हें अपडेट करता है।
हर ऑर्डर-बुक संदेश के बाद यह बिड को ऊँची से नीची और आस्क को नीची से ऊँची कीमत के क्रम में सॉर्ट करता है, फिर कीमतों और आकारों के अधिकतम पाँच स्तरों को टिक जैसी संरचना में कॉपी करता है। यह लाइव बुक बनाए रखने और दिखाने का एक बुनियादी तरीका है। इसमें लेटेंसी माप, ट्रेडिंग संकेत या निष्पादन परिणाम नहीं हैं, और अंश अपडेटों के क्रम या छूटे अपडेट से उबरने की सुरक्षा का वर्णन नहीं करता। प्रमाणीकरण मान कोड में स्थिर होने के कारण यह नमूना सीधे तैनाती के लिए भी अनुपयुक्त है।
मुख्य विचार
- निजी स्ट्रीम की सदस्यता लेने से पहले क्लाइंट WebSocket पर प्रमाणीकरण करता है।
- एक वर्कर थ्रेड संदेश प्राप्त कर सॉकेट त्रुटियों के बाद फिर से जुड़ता है, जबकि दूसरा थ्रेड नियमित पिंग भेजता है।
- ऑर्डर-बुक स्नैपशॉट और क्रमिक संदेश ऑर्डर पहचानकर्ताओं से जुड़े बिड और आस्क मानचित्र अपडेट करते हैं।
- कीमत के अनुसार बिड को घटते और आस्क को बढ़ते क्रम में सॉर्ट करके सर्वोत्तम पाँच स्तर चुने जाते हैं।
- उदाहरण में प्रदर्शन का प्रमाण नहीं है और अपडेट अंतराल से उबरने तथा क्रेडेंशियल सुरक्षित रखने की चर्चा नहीं है।
टैग
निजी पाठ्यक्रम संग्रह से; मूल सामग्री प्रकाशित नहीं है।