EintSimple Pullback रणनीति दोहरी चलती औसत क्रॉसओवर पर आधारित एक औसत प्रतिगमन रणनीति है। यह पहले एक दीर्घकालिक और एक अल्पकालिक चलती औसत रेखा का उपयोग करता है। जब अल्पकालिक चलती औसत रेखा नीचे से लंबी अवधि की चलती औसत रेखा को तोड़ती है, तो एक खरीद संकेत उत्पन्न होता है। झूठे ब्रेकआउट को फ़िल्टर करने के लिए, इस रणनीति के लिए बंद मूल्य को दीर्घकालिक चलती औसत रेखा से अधिक होना आवश्यक है।
बाजार में प्रवेश करने के बाद, यदि कीमत फिर से अल्पकालिक चलती औसत रेखा से नीचे गिर जाती है, तो यह एक निकास संकेत को ट्रिगर करेगी। इसके अलावा, यह रणनीति एक स्टॉप लॉस निकास भी सेट करती है। यदि उच्चतम बिंदु से रिट्रेसमेंट सेट स्टॉप लॉस प्रतिशत तक पहुंच जाता है, तो यह भी पदों से बाहर निकल जाएगा।
रणनीति मुख्य रूप से प्रवेश समय निर्धारित करने के लिए दोहरी चलती औसत के स्वर्ण क्रॉस पर निर्भर करती है। विशेष रूप से, लंबी स्थिति खोलने से पहले एक ही समय में निम्नलिखित शर्तों को पूरा किया जाना चाहिएः
उपरोक्त शर्तों को पूरा करने के बाद, यह रणनीति पूर्ण लंबी स्थिति लेगी।
एक्जिट सिग्नल निर्णय दो शर्तों पर आधारित है। एक यह है कि कीमत फिर से अल्पकालिक चलती औसत से नीचे गिर जाती है। दूसरा यह है कि उच्चतम बिंदु से रिट्रेसमेंट सेट स्टॉप लॉस प्रतिशत तक पहुंच जाता है। विशिष्ट एक्जिट शर्तें निम्नलिखित हैंः
जब कोई भी बाहर निकलने की शर्त पूरी हो जाती है, तो यह रणनीति सभी लंबी स्थिति को बंद कर देगी।
दोहरी चलती औसत क्रॉसओवर का उपयोग करके ठोस बंद कीमतों के साथ मिलकर प्रभावी ढंग से झूठे ब्रेकआउट को फ़िल्टर कर सकते हैं।
मूल्य अल्पकालिक मोड़ बिंदुओं के गठन के बाद पलकबैक प्रविष्टि स्वीकार कर सकते हैं।
स्टॉप लॉस सेटिंग के साथ, यह अधिकतम ड्रॉडाउन को सीमित कर सकता है।
दोहरी चलती औसत क्रॉसओवर रणनीतियाँ अक्सर ट्रेडिंग सिग्नल उत्पन्न करती हैं और शिखर का पीछा कर सकती हैं और तल को मार सकती हैं।
चलती औसत के अनुचित पैरामीटर सेटिंग्स के परिणामस्वरूप अत्यधिक चिकनी या अत्यधिक संवेदनशील वक्र हो सकते हैं।
बहुत ढीली स्टॉप लॉस सेटिंग्स से नुकसान बढ़ेगा।
इष्टतम मापदंडों को खोजने के लिए दीर्घकालिक और अल्पकालिक चलती औसत के विभिन्न लंबाई संयोजनों का परीक्षण करें।
चलती औसत क्रॉसओवर निर्धारित करने के लिए बंद मूल्य और विशिष्ट मूल्य का उपयोग करने के प्रभावों की तुलना करें।
वॉल्यूम या अस्थिरता संकेतक जैसे फ़िल्टर जोड़ने का परीक्षण करें।
बैकटेस्ट सर्वोत्तम सेटिंग खोजने के लिए स्टॉप लॉस प्रतिशत का अनुकूलन करें.
EintSimple Pullback Strategy एक सरल और व्यावहारिक दोहरी चलती औसत पुलबैक रणनीति है। यह गलत संकेतों को फ़िल्टर करने के लिए ठोस बंद कीमतों को मिलाते हुए चलती औसत की दिशात्मक कार्यक्षमता का प्रभावी ढंग से उपयोग करता है। हालांकि यह रणनीति लगातार व्यापार करने और चोटियों का पीछा करने और तल को मारने के लिए प्रवण है, इसे पैरामीटर अनुकूलन और फ़िल्टर जोड़ने के माध्यम से और सुधार किया जा सकता है। कुल मिलाकर, यह मात्रात्मक व्यापार के शुरुआती लोगों के लिए अभ्यास और अनुकूलन के लिए एक महान रणनीति है।
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © ZenAndTheArtOfTrading / www.PineScriptMastery.com // @version=5 strategy("Simple Pullback Strategy", overlay=true, initial_capital=50000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)// 100% of balance invested on each trade // Get user input i_ma1 = input.int(title="MA 1 Length", defval=75, step=1, group="Strategy Parameters", tooltip="Long-term EMA") i_ma2 = input.int(title="MA 2 Length", defval=9, step=1, group="Strategy Parameters", tooltip="Short-term EMA") i_stopPercent = input.float(title="Stop Loss Percent", defval=0.10, step=0.1, group="Strategy Parameters", tooltip="Failsafe Stop Loss Percent Decline") i_lowerClose = input.bool(title="Exit On Lower Close", defval=true, group="Strategy Parameters", tooltip="Wait for a lower-close before exiting above MA2") i_startTime = input(title="Start Filter", defval=timestamp("01 Jan 1995 13:30 +0000"), group="Time Filter", tooltip="Start date & time to begin searching for setups") i_endTime = input(title="End Filter", defval=timestamp("1 Jan 2099 19:30 +0000"), group="Time Filter", tooltip="End date & time to stop searching for setups") // Get indicator values ma1 = ta.ema(close, i_ma1) ma2 = ta.ema(close, i_ma2) // Check filter(s) f_dateFilter = true // Check buy/sell conditions var float buyPrice = 0 buyCondition = close > ma1 and close < ma2 and strategy.position_size == 0 and f_dateFilter sellCondition = close > ma2 and strategy.position_size > 0 and (not i_lowerClose or close < low[1]) stopDistance = strategy.position_size > 0 ? ((buyPrice - close) / close) : na stopPrice = strategy.position_size > 0 ? buyPrice - (buyPrice * i_stopPercent) : na stopCondition = strategy.position_size > 0 and stopDistance > i_stopPercent // Enter positions if buyCondition strategy.entry(id="Long", direction=strategy.long) if buyCondition[1] buyPrice := open // Exit positions if sellCondition or stopCondition strategy.close(id="Long", comment="Exit" + (stopCondition ? "SL=true" : "")) buyPrice := na // Draw pretty colors plot(buyPrice, color=color.lime, style=plot.style_linebr) plot(stopPrice, color=color.red, style=plot.style_linebr, offset=-1) plot(ma1, color=color.blue) plot(ma2, color=color.fuchsia)