गांडाल्फ मात्रात्मक ट्रेडिंग रणनीति मध्य मूल्य रेखाओं के आधार पर एक औसत प्रतिगमन रणनीति है। यह इष्टतम प्रवेश बिंदुओं को खोजने के लिए भारित औसत मूल्य, मध्य मूल्य रेखा और शरीर के मध्य मूल्य की गणना करके वर्तमान प्रवृत्ति दिशा निर्धारित करती है। जब एक प्रवृत्ति उलट का पता चलता है, तो यह तेजी से नुकसान और निकास को काट देगा। रणनीति प्रवृत्ति अनुसरण और प्रवृत्ति उलट रणनीतियों के विचारों को जोड़ती है।
गैंडाल्फ रणनीति का मूल तर्क वर्तमान रुझान की दिशा और ताकत का न्याय करने के लिए भारित औसत मूल्य, मध्य मूल्य रेखा और शरीर के मध्य मूल्य के बीच परिमाण संबंध की तुलना करना है।
विशेष रूप से, यह निम्नलिखित कीमतों की गणना करता हैः
स्थिति में प्रवेश करते समय, यह निर्धारित करने के लिए कि यह प्रारंभिक प्रवृत्ति की विशेषताओं के अनुरूप है या नहीं, यह निर्धारित करने के लिए अंतिम दो सलाखों के भारित औसत मूल्य, मध्य मूल्य रेखा और शरीर मध्य मूल्य के बीच परिमाण संबंध की तुलना करता है।
उदाहरण के लिए, यदि भारित औसत मूल्य मध्य मूल्य रेखा से नीचे है, और शरीर का मध्य मूल्य भी भारित औसत मूल्य से नीचे है, तो यह इंगित करता है कि मूल्य गिर रहा है, जो शॉर्टिंग का अवसर प्रस्तुत करता है।
हानि रोकने पर, यह इन कीमतों के बीच परिमाण संबंध की तुलना करना जारी रखता है, यह तय करने के लिए कि क्या रुझान उलटने के संकेत हैं। यदि भारित औसत मूल्य शरीर के मध्य मूल्य से ऊपर है, और मध्य मूल्य रेखा भारित औसत मूल्य से नीचे है, तो यह एक रुझान उलटने का संकेत देती है, और नुकसान को तुरंत काट देना चाहिए।
मूल्य परिमाण संबंध की तुलना करके, गैंडाल्फ रणनीति रुझानों के निर्णय और ट्रैकिंग का एहसास करती है। यह इष्टतम प्रवेश समय का पता लगा सकती है, और नुकसान को रोकने के लिए तेजी से रुझान उलट का पता लगा सकती है।
गैंडाल्फ की रणनीति के निम्नलिखित फायदे हैंः
रुझान की दिशा निर्धारित करने के लिए मध्य मूल्य रेखा का उपयोग प्रभावी रूप से बाजार शोर को फ़िल्टर कर सकता है और प्रमुख प्रवृत्ति को लॉक कर सकता है।
कई मूल्य तुलनाओं को जोड़कर प्रवेश की स्थिति एक प्रवृत्ति की शुरुआत को अधिक विश्वसनीय रूप से निर्धारित कर सकती है।
स्टॉप लॉस की शर्त में ट्रेंड रिवर्स का न्याय करने के लिए मूल्य तुलना का भी उपयोग किया जाता है, जो तेजी से स्टॉप लॉस और जोखिम नियंत्रण की अनुमति देता है।
प्रवेश के लिए सशर्त आदेशों को अपनाकर आदर्श कीमतों पर प्रवेश किया जा सकता है।
पूर्व निर्धारित अधिकतम लाभ लेने के समय और होल्डिंग अवधि की ऊपरी सीमा लाभ को लॉक कर सकती है और एकल व्यापार जोखिमों को नियंत्रित कर सकती है।
कोड संरचना स्पष्ट और सरल है, इसे समझना और संशोधित करना आसान है।
मापदंडों को व्यक्तिगत जोखिम वरीयता के आधार पर समायोजित किया जा सकता है, अनुकूलित करना आसान है।
ट्रेंडिंग उत्पादों पर लागू, ट्रेंडिंग मुनाफे को कैप्चर करने में सक्षम।
सारांश में, गांडाल्फ रणनीति प्रवृत्ति निर्धारित करने के लिए मध्य रेखा का उपयोग करती है, लाभ लेने और हानि रोकने की शर्तें निर्धारित करती है, और प्रवृत्तियों को ट्रैक करते हुए जोखिमों को प्रभावी ढंग से नियंत्रित कर सकती है, जिससे यह एक विश्वसनीय प्रवृत्ति निम्नलिखित रणनीति बन जाती है।
गैंडाल्फ की रणनीति में कुछ जोखिम भी हैं:
एक प्रवृत्ति के अनुरूप रणनीति के रूप में, यह अधिक छोटे नुकसान पैदा करेगा जब प्रवृत्ति अस्पष्ट हो या अक्सर उलटा हो।
रुझान उलटने के बिंदुओं को प्रभावी ढंग से निर्धारित करने में असमर्थता, घाटे के विस्तार का कारण बन सकती है।
रेंज-बाउंड बाजारों में फंसने के लिए प्रवण।
पैरामीटर सेटिंग्स पर निर्भर करता है, पैरामीटर को विभिन्न उत्पादों के लिए समायोजित करने की आवश्यकता होती है।
एकतरफा होल्डिंग, विपरीत रुझानों से लाभ नहीं उठा सकती।
सशर्त आदेशों की उच्च विफलता दर, प्रवेश के लिए लंबा इंतजार कर सकती है।
जोखिम प्रबंधन उपाय:
एकल हानि को नियंत्रित करने के लिए छोटी स्थिति आकार, आंशिक प्रवेश को अपनाएं।
स्टॉप लॉस लाइन सेट करें, त्वरित स्टॉप लॉस या चलती स्टॉप लॉस या ट्रेलिंग स्टॉप लॉस को अपनाएं।
वर्तमान उत्पाद के अनुरूप मापदंडों का अनुकूलन करें। प्रवृत्ति निर्णय में सहायता के लिए अन्य संकेतकों का उपयोग करें।
कम लागत के आधार पर मार्टिंगेल पर विचार करें।
स्पष्ट रुझानों वाले उत्पादों का व्यापार, अधिक लाभ का विश्वास।
प्रवेश की संभावनाओं को बढ़ाने के लिए प्रवेश मानदंडों को उचित रूप से ढीला करें।
गैंडाल्फ रणनीति में निम्नलिखित पहलुओं में भी सुधार किया जा सकता हैः
रुझान उलटने के समय को निर्धारित करने में सहायता के लिए रुझान निर्णय संकेतक बनाएं, जैसे कि एमएसीडी, बोलिंगर बैंड आदि जोड़ना।
ऑटो अनुकूलन मापदंडों के लिए असतत अनुकूलन कार्यों को जोड़ें और अधिक उत्पादों के लिए अनुकूलित करें।
मशीन लर्निंग एल्गोरिदम को बढ़ाएं, ट्रेंड्स का आकलन करने के लिए ऐतिहासिक डेटा पर न्यूरल नेटवर्क या एसवीएम मॉडल को प्रशिक्षित करें।
अधिक लाभ लेने के तरीकों को जोड़ें, जैसे कि लाभ लेने के लिए चल रहा है, पैराबोलिक लाभ लेने के लिए।
स्प्रेड ट्रेडिंग या स्टैट आर्ब रणनीतियों के लिए संबंधित उत्पादों का संयोजन करें।
बाजार व्यवस्था का न्याय करने के लिए छिपे हुए मार्कोव मॉडल के आधार पर राज्य पूर्वानुमान जोड़ें।
बहु-रणनीति प्रबंधन के लिए चलती औसत रणनीतियों के साथ संयोजन की तरह संयुक्त रणनीतियों का निर्माण करें।
इष्टतम पोर्टफोलियो भार खोजने के लिए ट्रेडिंग रणनीति संयोजनों के अनुकूलन का अन्वेषण करें।
सारांश में, गांडाल्फ रणनीति को कई आयामों में विस्तारित और अनुकूलित किया जा सकता है जैसे प्रवृत्ति निर्णय, स्वचालित अनुकूलन, जोखिम प्रबंधन, रणनीति को अधिक मजबूत और विश्वसनीय बनाने के लिए।
गैंडाल्फ मात्रात्मक रणनीति एक सरल लेकिन प्रभावी रणनीति है जो रुझानों को निर्धारित करने के लिए मूल्य तुलना पर आधारित है। यह प्रवृत्ति के बाद और त्वरित स्टॉप लॉस के विचारों को जोड़ती है, और जोखिमों को प्रभावी ढंग से नियंत्रित कर सकती है। रणनीति तर्क स्पष्ट और समझने में आसान है, मापदंडों को व्यक्तिगत जोखिम वरीयताओं के आधार पर समायोजित किया जा सकता है। लेकिन इसमें कुछ लाभ उतार-चढ़ाव और जोखिम भी हैं, जिसके लिए उचित अनुकूलन और प्रबंधन की आवश्यकता होती है। कुल मिलाकर, गैंडाल्फ रणनीति एक विश्वसनीय, समझने में आसान और अनुकूलित प्रवृत्ति के बाद रणनीति है, जो स्थिर लाभ का पीछा करने के लिए उपयुक्त है।
/*backtest start: 2023-10-22 00:00:00 end: 2023-10-29 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 // The GandalfProjectResearchSystem strategy, as discussed in // “System Development Using Artificial Intelligence” // by Domenico D’Errico and Giovanni Trombetta strategy("Gandalf Project Research System", overlay=true) // Inputs Quantity = input(0, title="Quantity (0 to auto calc)") Single_Trade_Money = input(10000, minval=1, title="Money to spend on single trade") MaxProfitCloses = input(6, minval=1, title="Max Profit Close") MaxBars = input(8, minval=1, title="Max Total Bars") Enter_Gap = input(-0.08, title="Distance from low price to place entry limit") AltExit = input(true, title="Use Alt Exit") // Calculate Order Quantity Ncon = Single_Trade_Money / close // Misc Variables src = close BarsSinceEntry = 0 MaxProfitCount = 0 MedBodyPrice = (open + close) / 2.0 Weighted = (high + low + close + close) / 4.0 Median = (high + low) / 2.0 // Enter Conditions Cond00 = strategy.position_size == 0 Cond01 = ((Weighted[1] < Median[1] and Median[2] <= Weighted[1] and MedBodyPrice[2] <= Weighted[3]) or (Weighted[1] < Median[3] and MedBodyPrice[0] < Median[2] and MedBodyPrice[1] < MedBodyPrice[2])) Entry01 = Cond00 and Cond01 // Update Exit Variables BarsSinceEntry := Cond00 ? 0 : nz(BarsSinceEntry[1]) + 1 MaxProfitCount := Cond00 ? 0 : (close > strategy.position_avg_price and BarsSinceEntry > 1) ? nz(MaxProfitCount[1]) + 1 : nz(MaxProfitCount[1]) // Exit Conditions eCond01 = BarsSinceEntry - 1 >= MaxBars eCond02 = MaxProfitCount >= MaxProfitCloses eCond03 = ((Weighted[1] < MedBodyPrice[1] and Median[2] == MedBodyPrice[3] and MedBodyPrice[1] <= MedBodyPrice[4]) or (Weighted[2] < MedBodyPrice[0] and Median[4] <= Weighted[3] and MedBodyPrice[1] <= Weighted[1]) or (Weighted[2] < MedBodyPrice[0] and Median[4] <= Weighted[3] and MedBodyPrice[1] <= Weighted[1])) eCond04 = AltExit ? true : close - strategy.position_avg_price < 0 Exit01 = not Cond00 and (eCond01 or eCond02 or (eCond03 and eCond04)) // Entries strategy.entry(id="L1", long=true, limit=low + Enter_Gap, qty=(Quantity > 0 ? Quantity : Ncon), when=Entry01) // Exits strategy.close("L1", Exit01)