मुझे आशा है कि यह बंद नहीं होगा क्योंकि यह एल्गोरिदम से संबंधित है जिसे मैं समझने में सक्षम नहीं हूं (यह भी बहुत लंबा है क्योंकि मैं इस बारे में इतना उलझन में हूं कि यह कैसे किया जा रहा है)। असल में कई साल पहले मैं एक म्यूचुअल फंड में काम करता था और हमने पोर्टफोलियो अनुकूलित करने के साथ-साथ मौजूदा लोगों को हेज करने के लिए विभिन्न टूल्स का इस्तेमाल किया था। हम इन परिणामों को ले लेंगे और अपने स्वयं के संशोधन करेंगे और फिर उन्हें ग्राहकों को बेच देंगे। मेरी कंपनी के डाउनसाइज होने के बाद, मैंने फैसला किया कि मैं इसे एक कोशिश करना चाहता हूं (सॉफ़्टवेयर बनाने और मेरे अनुकूलन को शामिल करने के लिए) लेकिन मुझे कोई संकेत नहीं है कि सॉफ़्टवेयर के लिए वास्तव में संयोजन कैसे उत्पन्न किए जाते हैं।पोर्टफोलियो सॉफ़्टवेयर अपने पोर्टफोलियो सुझावों को इतनी जल्दी कैसे उत्पन्न करते हैं जब संभावनाएं बड़ी होती हैं?
कोशिश करने के 6 महीने बाद, मैं स्वीकार कर रहा हूं कि मेरा दृष्टिकोण असंभव है। मैं एनयूएसई (5,000+ स्टॉक) पर प्रत्येक संभावित पोर्टफोलियो (मैंने इसे 30 शेयरों तक सीमित) खोजने के लिए bit
संयोजनों जैसे संयोजन एल्गोरिदम का उपयोग करने की कोशिश कर रहा था। लेकिन हर किसी के अनुसार मैंने यह बात की है कि मुझे एक दिन के परिणाम प्राप्त करने के लिए अरबों वर्षों का समय लगेगा (मेरे लिए जीपीयू पर मैंने इसे सीधे प्रोसेसिंग के 2 दिनों के बाद रोक दिया)।
तो मुझे क्या याद आ रही है? हम अपने जोखिम सहनशीलता और बाजार (शेयर बाजार विकास अपेक्षाओं, मुद्रास्फीति की उम्मीदों, खिलाया धन की अपेक्षाओं, आदि ..) में प्रवेश करेंगे और यह हमें कुछ सेकंड/मिनट के भीतर आदर्श पोर्टफोलियो (सिद्धांत में ..) देगा। हजारों संभावनाओं और स्टॉक के वजन के चौथाई संभावित संयोजनों के साथ, वे परिणामों को इतनी तेज़ी से गणना करने में सक्षम कैसे हैं (या यहां तक कि बिल्कुल भी)? सिस्टम के व्यवस्थापक के रूप में, मुझे पता है कि हमने प्रतिदिन एक फ़ाइल डाउनलोड की है (100 एमबी से कम और एमएसएसक्ल डेटाबेस में लोड किया गया है, शायद बाजार डेटा .. इसलिए ऐसा नहीं है कि हमारे पास हर संभावना थी। ऊपर मेरे दृष्टिकोण का उपयोग करके मुझे 5 गीगा मिलेगा Knuth के संयोजन algo के अपने संस्करण को करने के एक मिनट में फ़ाइल) और अनुप्रयोगों ने ऑफ़लाइन काम किया (इसलिए यह डेस्कटॉप/लैपटॉप सीपीयू पर स्थानीय रूप से ऐसा कर रहा होगा, न कि कहीं बड़े पैमाने पर सुपरकंप्यूटर पर और चलाने के लिए एक या दो मिनट ले लिया .15 वैश्विक फंड के लिए मिनट सबसे लंबा था जिसमें दुनिया में हर स्टॉक शामिल था)। यह इतना भ्रमित है क्योंकि उनके काम को पूरे फंड के सहसंबंध की आवश्यकता है (मुझे नहीं लगता कि वे केवल उन शीर्ष शेयरों को भेज रहे थे जिन्हें उन्होंने पूर्व-गणना की थी क्योंकि सभी को अलग-अलग परिणाम मिलते थे)। तो अगर मैं 30 शेयर फंड चाहता था जिसने मुझे 2% रिटर्न दिया और बाजार के साथ नकारात्मक संबंध था, और 60% हेज किया गया था कि सॉफ़्टवेयर उस पोर्टफोलियो को इतनी जल्दी से अरबों संभावनाओं से कैसे उत्पन्न कर सकता है? ध्यान दें, मैं गणित या वित्त भाग के बारे में नहीं पूछ रहा हूं, मैं पूछ रहा हूं कि यह पूरे बाजार से 30 शेयर कैसे उत्पन्न करने में सक्षम था, जिसने ऐसा करने के लिए 2% रिटर्न दिया था, जिसके लिए उसे रिटर्न पता होना होगा सभी 30 स्टॉक पोर्टफोलियो (वह अकेले इसे अरबों सालों तक चलाएगा, है ना? अन्य प्रतिबंध इसे और अधिक जटिल बनाते हैं)।
तो यह प्रोग्रामेटिक तरीके से कैसे किया जा रहा है? मुझे विश्वास है कि वे हर संभावना उत्पन्न करने के लिए Knuth के संयोजन एल्गोरिदम का उपयोग नहीं कर रहे हैं, फिर भी उनके परिणाम यादृच्छिक रूप से चुने गए नहीं हैं और व्यक्तिगत रूप से स्टॉक का चयन सहसंबंध भाग को याद करते हैं। इतने सारे निवेश सॉफ्टवेयर इस तरह की चीजें कैसे कर सकते हैं?
"यह एक रहस्य है।" – bmargulies