होम तकनीकी संकेतक पोस्ट

PCA सिंथेटिक्स - मेटाट्रेडर 5 के लिए स्वचालित संकेतक

संलग्नक
16997.zip (11.72 KB, डाउनलोड 0 बार)

यह संकेतक एक पseudo-stationary पोर्टफोलियो में हर उपकरण के लिए गुणांकों के स्वचालित चयन के लिए है, जो कि शून्य पर संतुलन की ओर बढ़ता है।

इस संकेतक के लिए आवश्यक है कि AlgLib पुस्तकालय आपके टर्मिनल के Include\Math फ़ोल्डर में मौजूद हो।


थोड़ा सा सिद्धांत

हर उपकरण अपनी ही दिशा में चलता है, और हर दिशा एक मल्टीडायमेंशनल एरे में अलग अलग आयाम है। जब हम मैट्रिक्स को घुमाते हैं, यानी हर तत्व को किसी संख्या से गुणा करके, हम एक ऐसा अक्ष खोजने की कोशिश करते हैं, जिसमें अक्ष और सभी उपकरणों के बीच न्यूनतम दूरी हो, यानी कुल न्यूनतम वैरिएंस। उन तत्वों को गुणा करने के लिए संख्या फिर उस कोण के मान में बदल जाती है, जिससे चलने वाला उपकरण अन्य उपकरणों की तरह ही दिशा में चल सके। यह कोण का मान पोर्टफोलियो में हर मुद्रा के लिए गुणांक होता है।

यदि गुणांक का मान 0 से अधिक है तो मुद्रा खरीदी जाती है, और यदि 0 से कम है तो बेची जाती है। इस प्रकार, समय-समय पर गुणांक को पुन: गणना करके, बनाए गए सिंथेटिक की स्थिरता को बनाए रखा जा सकता है। इसके अलावा, PCA केवल पोर्टफोलियो के लिए न्यूनतम वैरिएंस वाला अक्ष नहीं खोजता, बल्कि कई अक्ष खोजता है। पोर्टफोलियो में उपकरणों की संख्या घटक (वेक्टर) का संख्या है। प्रत्येक को मुख्य घटक कहा जाता है, और यह निर्धारित करता है कि यह पोर्टफोलियो के आंदोलन में कुल परिवर्तन पर कितना प्रभाव डालता है।


संभावित समस्याएं

  1. यदि चार्ट नहीं बना है, तो देखें कि Experts टैब में क्या प्रिंट किया गया है। शायद, कुछ त्रुटियाँ हैं या अन्य चार्ट के साथ समन्वय किया जा रहा है। यदि कोई संदेश नहीं है, तो अन्य समय सीमा पर क्लिक करें।

  2. प्राप्त वेक्टर मानों की पुष्टि R पैकेज में किए गए मानों से की गई है, इसलिए मान स्वयं सही हैं। लेकिन विशेष गुणांक का चिह्न गलत हो सकता है, क्योंकि PCA चिह्नों पर ध्यान नहीं देता। '-' या '+' चिह्न केवल अनुभवजन्य रूप से, यानी कोशिश और त्रुटि द्वारा निर्धारित किया जा सकता है।

समस्या #2 के बारे में चित्रों के साथ विवरण यहाँ है: http://stats.stackexchange.com/questions/34396/im-getting-jumpy-loadings-in-rollapply-pca-in-r-can-i-fix-it

पैरामीटर

InpVector = 0; // यदि पोर्टफोलियो में N मुद्राएं हैं, तो आंदोलन अक्ष संख्या 0 = अधिकतम वैरिएंस, N - 1 = न्यूनतम
InpFrame = 300; // गुणांकों की गणना के लिए तैरता खिड़की, InpDepth बार के लिए InpFrame गणनाएँ
InpDepth = 1000; // इतिहास में कुल बार की संख्या, जिसके लिए चार्ट बनाया गया है
InpForward = 500; // गुणांकों की पुन: गणना रोकने के लिए बार और पिछले मानों का उपयोग करने के लिए, यह OOS है
InpPeriod = 1; // MA के लिए स्मूदिंग, ताकि चार्ट कम झटकेदार दिखे
InpTimePeriod = PERIOD_CURRENT; // गणनाओं के लिए समय सीमा
InpNormalize = true; // उन्हें प्रदर्शित करने से पहले कीमतों को सामान्यीकृत करें, ताकि USDJPY और EURGBP की अस्थिरता के अंतर को कम किया जा सके
InpSynthetics = true; // संक्षिप्त सिंथेटिक को प्रदर्शित करें जो पाए गए गुणांकों से गुणा किया गया है या प्रत्येक जोड़ी को व्यक्तिगत रूप से
InpPrices = Logs; // जोड़ों के सामान्यीकरण का एल्गोरिदम
InpSymbols = "AUDUSD,USDCHF,USDCAD"; // पोर्टफोलियो के लिए जोड़े
InpMagic = "ID" // संकेतक का कस्टम नाम, एक चार्ट पर कई उदाहरण रखने में आसानी के लिए बिना संघर्ष के

यह विचार यहाँ से लिया गया था: https://www.mql5.com/en/code/9908

संबंधित पोस्ट

टिप्पणी (0)