এটি একটি প্রবণতা অনুসরণকারী কৌশল যা একাধিক সূচককে একত্রিত করে। এটি প্রবণতার দিক সনাক্ত করতে এবং অবস্থান স্থাপন করতে বিভিন্ন সময়ের সাথে তিনটি ইএমএ ব্যবহার করে, স্টোকাস্টিক আরএসআই এবং এটিআর। দ্রুততম ইএমএ ধীরতম ইএমএর উপরে অতিক্রম করলে এটি দীর্ঘ হয়, স্টপ লসটি সাম্প্রতিক এটিআর মানের 3 গুণে সেট করা হয় এবং সাম্প্রতিক এটিআরের 2 গুণে মুনাফা গ্রহণ করে।
এই কৌশলটি তিনটি EMA লাইন ব্যবহার করে - 8-, 14- এবং 50-পরিয়াল EMA, যা বিভিন্ন সময়সীমার উপর মূল্যের প্রবণতা উপস্থাপন করে। যখন 8-পরিয়াল EMA 14-পরিয়াল EMA এর উপরে অতিক্রম করে, এবং 14-পরিয়াল EMA 50-পরিয়াল EMA এর উপরে অতিক্রম করে, এটি একটি আপট্রেন্ডের সূচনা করে এবং একটি দীর্ঘ অবস্থান শুরু করা যেতে পারে।
স্টোকাস্টিক আরএসআই সূচকটি ওভারকুপ/ওভারসোল্ড শর্তগুলি সনাক্ত করতে আরএসআই এবং স্টোকাস্টিক গণনা অন্তর্ভুক্ত করে। যখন স্টোকাস্টিক আরএসআই কে লাইন নীচে থেকে ডি লাইনের উপরে অতিক্রম করে, এটি নির্দেশ করে যে বাজারটি ওভারসোল্ড থেকে উত্থানমুখী দৃষ্টিভঙ্গিতে রূপান্তরিত হচ্ছে, যা একটি দীর্ঘ অবস্থানের অনুমতি দেয়।
এটিআর সাম্প্রতিক অস্থিরতার পরিসীমাকে উপস্থাপন করে। কৌশলটি লাভ এবং ঝুঁকি নিয়ন্ত্রণে লক করার জন্য স্টপ লস দূরত্ব হিসাবে 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)