डबल मूविंग एवरेज रिवर्सल रणनीति एक ट्रेडिंग रणनीति है जो औसत रिवर्सल और मूविंग एवरेज सिद्धांतों को जोड़ती है। यह पहले 123 रिवर्सल पद्धति का उपयोग करके रिवर्सल ट्रेडिंग सिग्नल उत्पन्न करती है, और फिर 2/20 घातीय मूविंग एवरेज के साथ सिग्नल को फ़िल्टर करती है, केवल तभी ट्रेड करती है जब दोनों से सिग्नल मिलते हैं ताकि मजबूती में सुधार हो सके। इस रणनीति का उद्देश्य उच्च संभावना सेटअप की पहचान करने के लिए दीर्घकालिक ट्रेंड फ़िल्टर का उपयोग करते हुए अल्पकालिक रिवर्सल अवसरों को पकड़ना है।
इस रणनीति के दो भाग हैंः
123 रिवर्स रणनीति की उत्पत्ति पुस्तक
यह रणनीति दीर्घकालिक प्रवृत्ति निर्धारित करने के लिए 2/20 ईएमए का उपयोग करती है। जब कीमत 2/20 ईएमए लाइन से ऊपर होती है, तो यह एक अपट्रेंड का संकेत देती है। जब कीमत 2/20 ईएमए लाइन से नीचे होती है, तो यह एक डाउनट्रेंड का संकेत देती है। यह झूठे ब्रेकआउट को फ़िल्टर करता है।
रणनीति केवल तब ट्रेड सिग्नल उत्पन्न करती है जब 123 रिवर्स सिग्नल 2/20 ईएमए सिग्नल के साथ संरेखित होता है।
इस रणनीति के निम्नलिखित फायदे हैं, जो अल्पकालिक उलटफेर और दीर्घकालिक रुझानों को जोड़ती हैः
123 रिवर्सल टारगेट ओवरबॉट और ओवरसोल्ड परिदृश्य हैं, जहां अक्सर महत्वपूर्ण मूल्य उतार-चढ़ाव होते हैं, जिससे अधिक लाभ लक्ष्य की अनुमति मिलती है।
शुद्ध उलट-फेर की रणनीतियाँ प्रवृत्ति बाजारों के प्रति संवेदनशील होती हैं। 2/20 ईएमए फ़िल्टर प्रवृत्ति के खिलाफ संकेतों को समाप्त करता है, नकली के दौरान खराब ट्रेडों को रोकता है।
एक एकल संकेतक अक्सर गलत संकेत उत्पन्न करता है। दो पूरक संकेतकों को मिलाकर विश्वसनीयता और जोखिम-लाभ परिणामों में काफी सुधार होता है।
प्रत्येक घटक की स्पष्ट कार्यक्षमता बाजार के बदलते वातावरण को समझने, अनुकूलित करने और अनुकूलित करने के लिए तर्क को सहज बनाती है।
लाभों के बावजूद कुछ जोखिमों पर विचार करना आवश्यक हैः
पिछले प्रदर्शन भविष्य के परिणामों की गारंटी नहीं है। वास्तविक उलट उछाल की सीमा अनिश्चित है और इसके परिणामस्वरूप नुकसान हो सकता है।
2/20 ईएमए मजबूत ट्रेंडिंग बाजारों को पूरी तरह से फ़िल्टर नहीं कर सकता है। अल्पकालिक सुधार अभी भी बड़े ट्रेंड से अभिभूत हो सकते हैं।
प्रदर्शन पैरामीटर सेटिंग्स के लिए बहुत संवेदनशील है जिसे व्यापक बैकटेस्टिंग के माध्यम से मजबूत रूप से अनुकूलित किया जाना चाहिए और बदलते बाजारों के लिए समायोजित किया जाना चाहिए।
अच्छे अल्पकालिक परिणाम स्थायी प्रदर्शन की गारंटी नहीं देते हैं। बाजार अत्यधिक स्टोकैस्टिक होते हैं और दीर्घकालिक परिणामों को विविध वातावरणों में मजबूत सत्यापन की आवश्यकता होती है।
इन जोखिमों को पैरामीटर ट्यूनिंग, स्टॉप लॉस, जोखिम नियंत्रण आदि के माध्यम से प्रबंधित किया जा सकता है। वॉल्यूम, अस्थिरता संकेतकों जैसी अधिक शर्तें मजबूती में सुधार कर सकती हैं। मशीन लर्निंग तकनीक गतिशील अनुकूलन को भी सक्षम कर सकती है।
रणनीति को और अधिक अनुकूलित करने के कुछ तरीके:
उच्च गुणवत्ता वाले संकेतों के लिए अधिक स्थिर और स्पष्ट उलट पैटर्न खोजने के लिए विभिन्न पैरामीटर सेटों का परीक्षण करें।
अधिक सटीक रुझान आकलन के लिए विभिन्न एमए मापदंडों के साथ प्रयोग करें या कई एमए जांच शामिल करें।
झूठे संकेतों को कम करने और स्थिरता में सुधार करने के लिए वॉल्यूम, अस्थिरता और अन्य फिल्टर शामिल किए जा सकते हैं।
बड़े ऐतिहासिक डेटासेट पर मशीन लर्निंग तकनीक गतिशील और मजबूत पैरामीटर ट्यूनिंग को सक्षम कर सकती है।
बुद्धिमान स्टॉप लॉस नियम अधिकतम ड्रॉडाउन और जोखिम जोखिम को नियंत्रित करने में मदद करते हैं।
बेहतर स्थिति आकार और पूंजी आवंटन समग्र प्रदर्शन में सुधार कर सकते हैं।
डबल मूविंग एवरेज रिवर्सल एक सरल लेकिन व्यावहारिक अल्पकालिक ट्रेडिंग रणनीति है। औसत रिवर्सल और ट्रेंड-फॉलोइंग अवधारणाओं को मिलाकर, इसका उद्देश्य झूठे ब्रेकआउट से बचते हुए उच्च संभावना मूल्य रिवर्सल से लाभ प्राप्त करना है। स्पष्ट तर्क इसे समझने, अनुकूलित करने और लागू करने के लिए सहज बनाता है। हालांकि, कोई भी रणनीति जोखिम मुक्त नहीं है। विविध ट्रेडिंग वातावरण में लगातार लाभ निकालने के लिए मजबूती और जोखिम प्रबंधन में निरंतर सुधार की आवश्यकता है।
/*backtest start: 2023-09-18 00:00:00 end: 2023-09-25 00:00:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 06/08/2021 // This is combo strategies for get a cumulative signal. // // First strategy // This System was created from the Book "How I Tripled My Money In The // Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies. // The strategy buys at market, if close price is higher than the previous close // during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. // The strategy sells at market, if close price is lower than the previous close price // during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50. // // Second strategy // This indicator plots 2/20 exponential moving average. For the Mov // Avg X 2/20 Indicator, the EMA bar will be painted when the Alert criteria is met. // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// Reversal123(Length, KSmoothing, DLength, Level) => vFast = sma(stoch(close, high, low, Length), KSmoothing) vSlow = sma(vFast, DLength) pos = 0.0 pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1, iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) pos EMA220(Length) => pos = 0.0 xPrice = close xXA = ema(xPrice, Length) nHH = max(high, high[1]) nLL = min(low, low[1]) nXS = iff((nLL > xXA)or(nHH < xXA), nLL, nHH) pos := iff(close > xXA and close > nXS , 1, iff(close < xXA and close < nXS, -1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & 2/20 Exponential MA", shorttitle="Combo", overlay = true) line1 = input(true, "---- 123 Reversal ----") Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- line2 = input(true, "---- 2/20 Exponential MA ----") LengthMA = input(20, minval=1) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posEMA220 = EMA220(LengthMA) pos = iff(posReversal123 == 1 and posEMA220 == 1 , 1, iff(posReversal123 == -1 and posEMA220 == -1, -1, 0)) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1 , 1, pos)) if (possig == 1 ) strategy.entry("Long", strategy.long) if (possig == -1 ) strategy.entry("Short", strategy.short) if (possig == 0) strategy.close_all() barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )