यह रणनीति EMA23 और EMA50 के क्रॉसओवर सिग्नल पर आधारित है। जब EMA23 EMA50 से ऊपर जाता है, तो यह एक खरीद संकेत उत्पन्न करता है, और जब यह नीचे जाता है, तो यह एक बिक्री संकेत उत्पन्न करता है। यह रणनीति लंबी स्थिति के लिए स्टॉप-लॉस भी लागू करती है जब कीमत EMA50 से नीचे गिरती है और छोटी स्थिति के लिए जब कीमत EMA50 से ऊपर बढ़ जाती है। इसके अलावा, रणनीति बाजार में फिर से प्रवेश करती है जब कीमत EMA50 से ऊपर वापस जाती है। यह रणनीति 30 मिनट की समय सीमा के लिए उपयुक्त है।
यह रणनीति दो चलती औसत, ईएमए 23 और ईएमए 50 के क्रॉसओवर पर आधारित एक मात्रात्मक ट्रेडिंग रणनीति है। यह क्रॉसओवर संकेतों के माध्यम से रुझानों को पकड़ती है और जोखिम को नियंत्रित करने और लाभ क्षमता को बढ़ाने के लिए स्टॉप-लॉस और री-एंट्री तंत्र को लागू करती है। यह रणनीति सरल और समझने में आसान है, 30 मिनट की समय सीमा पर मध्यम से अल्पकालिक ट्रेडिंग के लिए उपयुक्त है। हालांकि, रणनीति में कुछ सीमाएं भी हैं, जैसे कि पिछड़ने की पहचान, उप-अनुकूल स्टॉप-लॉस प्लेसमेंट, और रेंजिंग बाजारों में खराब प्रदर्शन। भविष्य में, रणनीति को अधिक तकनीकी संकेतकों को पेश करके, स्टॉप-लॉस पदों को अनुकूलित करके, ट्रेडिंग आवृत्ति को नियंत्रित करके, ट्रेंडिंग और रेंजिंग बाजारों के बीच अंतर करके, और अधिक मजबूत रिटर्न प्राप्त करने के लिए गतिशील ले-प्रॉफिट स्तरों को लागू करके अनुकूलित किया जा सकता है।
/*backtest start: 2023-04-20 00:00:00 end: 2024-04-25 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Crossover Strategy", overlay=true) // EMA 23 ve EMA 50'nin hesaplanması ema23 = ta.ema(close, 23) ema50 = ta.ema(close, 50) // Ana alım kuralı: EMA 23 ve EMA 50'nin yukarı kesilmesi buySignal = ta.crossover(ema23, ema50) // Ana satış kuralı: EMA 23 ve EMA 50'nin aşağı kesilmesi sellSignal = ta.crossunder(ema23, ema50) // Long pozisyon stop seviyesi longStopLoss = low < ema50 and close < ema50[1] // Short pozisyon stop seviyesi shortStopLoss = high > ema50 and close > ema50[1] // Long pozisyon için tekrar giriş kuralı longReEntry = high > ema50 and close > ema50 and close > ema50 and ema23 > ema50 // Short pozisyon için tekrar giriş kuralı shortReEntry = low < ema50 and close < ema50 and close < ema50 and ema23 < ema50 // Long işlemde kar alma seviyesi (%60) longTakeProfit = strategy.position_avg_price * 1.60 // Short işlemde kar alma seviyesi (%25) shortTakeProfit = strategy.position_avg_price * 0.75 // Long işlem için yeniden giriş koşulu longReEntryCondition = strategy.position_size <= 0 and longReEntry // Short işlem için yeniden giriş koşulu shortReEntryCondition = strategy.position_size >= 0 and shortReEntry // Geriye dönük test için başlangıç tarihi (01.01.2022) startDate = timestamp(2022, 01, 01, 00, 00) if (time >= startDate) if (buySignal) strategy.entry("Buy", strategy.long) if (sellSignal) strategy.entry("Sell", strategy.short) if (strategy.position_size > 0 and (longStopLoss or close >= longTakeProfit)) strategy.close("Buy") if (strategy.position_size < 0 and (shortStopLoss or close <= shortTakeProfit)) strategy.close("Sell") if (longReEntryCondition) strategy.entry("Buy", strategy.long) if (shortReEntryCondition) strategy.entry("Sell", strategy.short)