
এটি এক্সপোনেনশিয়াল মুভিং এভারেজ (EMA) ক্রসওভার এবং আপেক্ষিক শক্তি নির্দেশক (RSI) নিশ্চিতকরণের উপর ভিত্তি করে একটি প্রবণতা অনুসরণ করে। এই কৌশলটি স্বল্প-মেয়াদী এবং দীর্ঘমেয়াদী EMA ক্রসওভার সংকেত এবং RSI ভরবেগ নিশ্চিতকরণকে একত্রিত করে, যখন একটি শতাংশ স্টপ লস মেকানিজমকে একীভূত করে, যার লক্ষ্য বাজারের প্রবণতা এবং ঝুঁকি নিয়ন্ত্রণে গুরুত্বপূর্ণ টার্নিং পয়েন্ট ক্যাপচার করা। প্রযুক্তিগত সূচকগুলির সমন্বয়ের মাধ্যমে লেনদেনের নিরাপত্তা নিশ্চিত করার সাথে সাথে লেনদেনের নির্ভুলতা এবং নির্ভরযোগ্যতা উন্নত করা কৌশলটির মূল।
কৌশলটি একটি দ্বৈত প্রযুক্তিগত নির্দেশক ফিল্টারিং প্রক্রিয়া ব্যবহার করে: প্রথমত, স্বল্প-মেয়াদী EMA (9 পিরিয়ড) এবং দীর্ঘমেয়াদী EMA (21 পিরিয়ড) এর ছেদ সম্ভাব্য প্রবণতা টার্নিং পয়েন্ট সনাক্ত করতে ব্যবহৃত হয়। যখন স্বল্প-মেয়াদী EMA দীর্ঘমেয়াদী EMA ঊর্ধ্বমুখী হয় এবং RSI মান সেট স্তরের চেয়ে বেশি হয়, তখন সিস্টেমটি একটি দীর্ঘ সংকেত তৈরি করে যখন স্বল্প-মেয়াদী EMA দীর্ঘমেয়াদী EMA অতিক্রম করে এবং RSI মান কম হয় সেট স্তরের তুলনায়, সিস্টেমটি একটি সংক্ষিপ্ত সংকেত তৈরি করে। একই সময়ে, কৌশলটি শতাংশ-ভিত্তিক স্টপ-লস মেকানিজম প্রবর্তন করে এবং নেতিবাচক ঝুঁকিগুলিকে কার্যকরভাবে নিয়ন্ত্রণ করতে প্রতিটি লেনদেনের জন্য একটি গতিশীল স্টপ-লস মূল্য নির্ধারণ করে।
এই কৌশলটি মুভিং এভারেজ সিস্টেম এবং মোমেন্টাম ইন্ডিকেটরগুলিকে একত্রিত করে একটি সম্পূর্ণ ট্রেন্ড ট্র্যাকিং ট্রেডিং সিস্টেম তৈরি করে। কৌশলটির প্রধান সুবিধাগুলির মধ্যে রয়েছে এর নির্ভরযোগ্য সংকেত নিশ্চিতকরণ প্রক্রিয়া এবং নিখুঁত ঝুঁকি নিয়ন্ত্রণ ব্যবস্থা। যদিও কিছু অন্তর্নিহিত সীমাবদ্ধতা রয়েছে, প্রস্তাবিত অপ্টিমাইজেশন দিকনির্দেশের মাধ্যমে কৌশলটির সামগ্রিক কর্মক্ষমতা আরও উন্নত হবে বলে আশা করা হচ্ছে। এটি মাঝারি থেকে দীর্ঘমেয়াদী ট্রেন্ড ট্রেডারদের জন্য উপযুক্ত একটি শক্তিশালী কৌশল কাঠামো।
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-25 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Simple Trend Following Strategy", overlay=true)
// Inputs
shortEMA = input.int(9, title="Short EMA Length", minval=1)
longEMA = input.int(21, title="Long EMA Length", minval=1)
confirmationRSI = input.int(50, title="RSI Confirmation Level", minval=1, maxval=100)
stopLossPercent = input.float(2, title="Stop Loss Percentage", minval=0.1) // Stop Loss percentage
// Calculations
emaShort = ta.ema(close, shortEMA)
emaLong = ta.ema(close, longEMA)
rsiValue = ta.rsi(close, 14)
// Buy and Sell Conditions
buySignal = ta.crossover(emaShort, emaLong) and rsiValue > confirmationRSI
sellSignal = ta.crossunder(emaShort, emaLong) and rsiValue < confirmationRSI
// Plotting Signals
plotshape(buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")
// Plotting EMAs
plot(emaShort, title="Short EMA", color=color.yellow)
plot(emaLong, title="Long EMA", color=color.purple)
// Strategy logic
strategy.entry("Buy", strategy.long, when=buySignal)
strategy.entry("Sell", strategy.short, when=sellSignal)
// Calculate stop loss price based on stopLossPercent
longStopLossPrice = strategy.position_avg_price * (1 - stopLossPercent / 100)
shortStopLossPrice = strategy.position_avg_price * (1 + stopLossPercent / 100)
// Draw stop loss line for long positions
if (strategy.position_size > 0) // For long positions
line.new(x1=bar_index, y1=longStopLossPrice, x2=bar_index + 1, y2=longStopLossPrice, color=color.red, width=2, style=line.style_dashed)
// Draw stop loss line for short positions
if (strategy.position_size < 0) // For short positions
line.new(x1=bar_index, y1=shortStopLossPrice, x2=bar_index + 1, y2=shortStopLossPrice, color=color.green, width=2, style=line.style_dashed)