यह कई संकेतकों को मिलाकर एक प्रवृत्ति के बाद की रणनीति है। यह प्रवृत्ति की दिशा की पहचान करने और पदों को स्थापित करने के लिए विभिन्न अवधियों के साथ तीन ईएमए, स्टोकैस्टिक आरएसआई और एटीआर का उपयोग करता है। यह लंबे समय तक जाता है जब तेज ईएमए धीमे ईएमए से ऊपर पार करता है, जिसमें स्टॉप लॉस हाल के एटीआर मूल्य के 3 गुना पर सेट होता है और हाल के एटीआर के 2 गुना पर लाभ लेता है।
यह रणनीति तीन ईएमए लाइनों का उपयोग करती है - 8-, 14- और 50-पीरियड ईएमए, जो विभिन्न समय सीमाओं पर मूल्य रुझानों का प्रतिनिधित्व करती है। जब 8-पीरियड ईएमए 14-पीरियड ईएमए से ऊपर जाता है, और 14-पीरियड ईएमए 50-पीरियड ईएमए से ऊपर जाता है, तो यह एक अपट्रेंड की शुरुआत का संकेत देता है और एक लंबी स्थिति शुरू की जा सकती है।
स्टोकैस्टिक आरएसआई सूचक में ओवरबॉट/ओवरसोल्ड स्थितियों की पहचान करने के लिए आरएसआई और स्टोकैस्टिक गणनाएं शामिल हैं। जब स्टोकैस्टिक आरएसआई के रेखा नीचे से डी रेखा के ऊपर से गुजरती है, तो यह इंगित करती है कि बाजार ओवरसोल्ड से तेजी की संभावना में संक्रमण कर रहा है, जिससे लंबी स्थिति की अनुमति मिलती है।
एटीआर हालिया अस्थिरता सीमा का प्रतिनिधित्व करता है। रणनीति लाभ में लॉक करने और जोखिम को नियंत्रित करने के लिए स्टॉप लॉस दूरी के रूप में 3 गुना एटीआर और लाभ दूरी के रूप में 2 गुना एटीआर का उपयोग करती है।
अनुकूलन संवेदनशीलता को अनुकूलित करने के लिए ईएमए अवधि को समायोजित करके किया जा सकता है। एटीआर अनुपात को समायोज्य बनाने से बाजार की स्थितियों के आधार पर अनुकूलन की अनुमति मिलती है। अन्य संकेतकों को जोड़ने से संकेतों को मान्य करने और गलतियों से बचने में मदद मिलती है।
रणनीति में प्रवृत्ति, ओवरबॉट/ओवरसोल्ड स्तर और अस्थिरता सीमा को ध्यान में रखते हुए प्रवेश समय की पहचान की जाती है। ईएमए और स्टोकैस्टिक आरएसआई संयुक्त रूप से प्रभावी रूप से रुझानों की पहचान करते हैं, जबकि एटीआर
/*backtest start: 2023-10-15 00:00:00 end: 2023-11-14 00:00:00 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/ // © FreddieChopin //@version=4 strategy("3 x EMA + Stochastic RSI + ATR", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100) // 3x EMA ema1Length = input(8, "EMA1 Length", minval = 1) ema2Length = input(14, "EMA2 Length", minval = 1) ema3Length = input(50, "EMA3 Length", minval = 1) ema1 = ema(close, ema1Length) ema2 = ema(close, ema2Length) ema3 = ema(close, ema3Length) plot(ema1, color = color.green) plot(ema2, color = color.orange) plot(ema3, color = color.red) // Stochastic RSI smoothK = input(3, "K", minval=1) smoothD = input(3, "D", minval=1) lengthRSI = input(14, "RSI Length", minval=1) lengthStoch = input(14, "Stochastic Length", minval=1) src = input(close, title="RSI Source") rsi1 = rsi(src, lengthRSI) k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK) d = sma(k, smoothD) // ATR atrPeriod = input(14, "ATR Period") takeProfitMultiplier= input(2.0, "Take-profit Multiplier") stopLossMultiplier= input(3.0, "Stop-loss Multiplier") atrSeries = atr(atrPeriod)[1] longCondition = ema1 > ema2 and ema2 > ema3 and crossover(k, d) strategy.entry("long", strategy.long, when = longCondition) float stopLoss = na float takeProfit = na if (strategy.position_size > 0) if (na(stopLoss[1])) stopLoss := strategy.position_avg_price - atrSeries * stopLossMultiplier else stopLoss := stopLoss[1] if (na(takeProfit[1])) takeProfit := strategy.position_avg_price + atrSeries * takeProfitMultiplier else takeProfit := takeProfit[1] strategy.exit("take profit / stop loss", limit = takeProfit, stop = stopLoss) plot(stopLoss, color = color.red, linewidth = 2, style = plot.style_linebr) plot(takeProfit, color = color.green, linewidth = 2, style = plot.style_linebr)