यह रणनीति चलती औसत क्रॉसओवर और गतिशील एटीआर स्टॉप लॉस और ले लाभ पर आधारित एक मात्रात्मक ट्रेडिंग रणनीति है। यह रणनीति दो सरल चलती औसत (एसएमए) का उपयोग करती है, जिसमें विभिन्न अवधि के साथ ट्रेडिंग सिग्नल उत्पन्न होते हैं, जबकि औसत सच्ची रेंज (एटीआर) को नियोजित करते हुए गतिशील रूप से स्टॉप लॉस सेट करते हैं और बेहतर जोखिम नियंत्रण के लिए लाभ स्तर लेते हैं। इसके अलावा, रणनीति अपनी मजबूती में सुधार के लिए विभिन्न ट्रेडिंग सत्रों के आधार पर ट्रेडिंग सिग्नल को फ़िल्टर करती है।
इस रणनीति का मूल सिद्धांत चलती औसत क्रॉसओवर का उपयोग करके मूल्य रुझानों में परिवर्तन को पकड़ना है। जब तेजी से चलती औसत धीमी चलती औसत से ऊपर पार करता है, तो एक खरीद संकेत उत्पन्न होता है; इसके विपरीत, जब तेजी से चलती औसत धीमी चलती औसत से नीचे पार करता है, तो एक बिक्री संकेत उत्पन्न होता है। साथ ही, रणनीति गतिशील रूप से स्टॉप लॉस और ले लाभ स्तर निर्धारित करने के लिए एटीआर का उपयोग करती है। ले लाभ स्तर एटीआर के 3 गुना अधिक प्रवेश मूल्य पर सेट किया जाता है, जबकि स्टॉप लॉस स्तर एटीआर के 1.5 गुना कम प्रवेश मूल्य पर सेट किया जाता है। इसके अलावा, रणनीति केवल कम तरलता की अवधि के दौरान व्यापार से बचने के लिए यूरोपीय ट्रेडिंग सत्र के दौरान ट्रेडिंग संकेत उत्पन्न करती है।
यह रणनीति एक सरल और समझने में आसान ट्रेंड-फॉलोइंग रणनीति है जो एटीआर के साथ जोखिम को नियंत्रित करते हुए चलती औसत क्रॉसओवर का उपयोग करके मूल्य रुझानों को पकड़ती है। हालांकि रणनीति में कुछ जोखिम हैं, लेकिन पैरामीटर अनुकूलन, सिग्नल फ़िल्टरिंग और जोखिम प्रबंधन में सुधार के माध्यम से इसे और बेहतर बनाया जा सकता है। शुरुआती लोगों के लिए, यह रणनीति एक उत्कृष्ट सीखने और अभ्यास उदाहरण के रूप में कार्य करती है।
/*backtest start: 2024-04-01 00:00:00 end: 2024-04-30 23:59:59 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Enhanced Moving Average Crossover Strategy", overlay=true) // Input parameters fastLength = input(10, title="Fast MA Length") slowLength = input(50, title="Slow MA Length") atrLength = input(14, title="ATR Length") riskPerTrade = input(1, title="Risk Per Trade (%)") / 100 // Time-based conditions isLondonSession = hour >= 8 and hour <= 15 isAsianSession = hour >= 0 and hour <= 7 isEuropeanSession = hour >= 7 and hour <= 14 // Moving Averages fastMA = ta.sma(close, fastLength) slowMA = ta.sma(close, slowLength) // Average True Range (ATR) for dynamic stop loss and take profit atr = ta.atr(atrLength) // Buy and Sell Conditions buySignal = ta.crossover(fastMA, slowMA) sellSignal = ta.crossunder(fastMA, slowMA) // Dynamic stop loss and take profit stopLoss = close - atr * 1.5 takeProfit = close + atr * 3 // Strategy Logic if (buySignal and isEuropeanSession) strategy.entry("Buy", strategy.long) strategy.exit("Take Profit/Stop Loss", "Buy", limit=takeProfit, stop=stopLoss) if (sellSignal and isEuropeanSession) strategy.entry("Sell", strategy.short) strategy.exit("Take Profit/Stop Loss", "Sell", limit=takeProfit, stop=stopLoss) // Plotting plot(fastMA, color=color.blue, title="Fast MA") plot(slowMA, color=color.red, title="Slow MA") plotshape(series=buySignal, location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(series=sellSignal, location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")