इस प्रोजेक्ट के बारे में

OpenPit एल्गोरिथमिक और इलेक्ट्रॉनिक ट्रेडिंग सिस्टम के लिए डिज़ाइन किए गए एम्बेडेबल प्री-ट्रेड जोखिम घटकों के लिए एक कार्यक्षेत्र है। किसी ऑर्डर के वेन्यू तक पहुंचने से पहले, यह एक निर्धारिती जोखिम पाइपलाइन से गुजरता है जो अनुरोधों को अस्वीकार कर सकता है, स्थिति आरक्षित कर सकता है, और बाद में पोस्ट-ट्रेड परिणामों को उसी नियंत्रण प्रणाली में वापस अवशोषित कर सकता है। इंजन इन-मेमोरी और निर्धारिती है, जिसे बड़े ट्रेडिंग सिस्टम को बदलने के बजाय उसमें एम्बेड करने के लिए डिज़ाइन किया गया है। यह कई अंतर्निहित नीतियां प्रदान करता है जिनमें स्पॉट फंड सॉल्वेंसी जांच, ऑर्डर सत्यापन, दर सीमा, ऑर्डर आकार सीमा (फैट-फिंगर कैप), और P&L किल स्विच शामिल हैं। कस्टम नीतियां Go, Python, JavaScript, C++, या Rust में लागू की जा सकती हैं। मुख्य विशेषताओं में नीति शाखाकरण के लिए खाता समूह, खाता अवरोधन, निष्पादित ऑर्डर रिकॉर्ड करने के लिए ड्रॉप कॉपी, खाता समायोजन और शेष सामंजस्य, बाजार डेटा समर्थन, लाइव नीतियों का गतिशील पुनर्विन्यास, और Go और C++ में प्रति-खाता कतारों के साथ एक एसिंक इंजन शामिल है। भंडारण और थ्रेडिंग अनुबंध इंजन निर्माण के समय एक बार चुने जाते हैं। OpenPit कई भाषाओं के लिए SDK प्रदान करता है: Rust (क्रेट `openpit`), Go (मॉड्यूल `go.openpit.dev/openpit`), Python (पैकेज `openpit`), JavaScript/TypeScript (पैकेज `@openpit/engine`, एक WebAssembly बिल्ड), C++ (हेडर-ओनली C++17 CMake पैकेज), और C (C ABI के माध्यम से)। सभी SDK अपने-अपने मुहावरों में समान पाइपलाइन उजागर करते हैं। 1.0 रिलीज़ से पहले, OpenPit शिथिल सेमेंटिक वर्जनिंग का पालन करता है जहां मामूली रिलीज़ ब्रेकिंग API परिवर्तन पेश कर सकती हैं। परियोजना में अपने विकी पर व्यापक दस्तावेज़ीकरण, उत्पन्न API संदर्भ, और एंड-टू-एंड उदाहरण शामिल हैं। यह POSIX सिस्टम और Windows पर निर्माण और परीक्षण का समर्थन करता है, प्रत्येक भाषा बाइंडिंग के लिए विस्तृत निर्देशों के साथ।