
এই কৌশলটি একটি প্রবণতা-অনুসরণ কৌশল যা একাধিক টাইম ফ্রেম সূচক মুভিং এভারেজ (ইএমএ) এবং 200 ইএমএ ফিল্টারগুলির উপর ভিত্তি করে। এর মূল ধারণাটি হ’ল বিভিন্ন টাইম ফ্রেমের ইএমএ ব্যবহার করে বাজারের প্রবণতা দিকটি সনাক্ত করা এবং প্রবণতাটি যখন উচ্চতর হয় এবং দামগুলি 200 ইএমএর উপরে থাকে তখন একটি মাল্টি-অপশন স্থাপন করা। এটি নিশ্চিত করে যে কেবলমাত্র শক্তিশালী উত্থানের প্রবণতার মধ্যে ট্রেডিং করা হয়, ক্রমাগত উত্থানকে ধরে রাখার জন্য, এবং একই সাথে ঝুঁকি নিয়ন্ত্রণের জন্য স্টপ লস এবং স্টপ লস ব্যবস্থা ব্যবহার করে।
কৌশলটি 5 মিনিটের, 15 মিনিটের এবং 30 মিনিটের তিনটি সময় ফ্রেম ব্যবহার করে এবং দ্রুত ইএমএ এবং ধীর ইএমএ গণনা করে। প্রতিটি সময় ফ্রেমের দ্রুত ইএমএ এবং ধীর ইএমএ তুলনা করে, আপনি সেই সময় ফ্রেমের প্রবণতা দিকটি নির্ধারণ করতে পারেন। তারপরে তিনটি সময় ফ্রেমের প্রবণতা সংকেত যোগ করুন এবং একটি সমন্বিত প্রবণতা সংকেত পান। যখন সমন্বিত প্রবণতা সংকেত 3 হয় (অর্থাত সমস্ত সময় ফ্রেমগুলি আপ-ট্রেন্ডে থাকে) এবং বর্তমান বিক্রয় মূল্য 5 মিনিটের 200 ইএমএর উপরে থাকে, তখন কৌশলটি পজিশনটি আরও বেশি করে; যখন সমন্বিত প্রবণতা সংকেতটি 3 এর চেয়ে কম হয় বা দাম 5 মিনিটের 200 ইএমএর নীচে যায়, তখন কৌশলটি পজিশনকে সমতল করে।
এই কৌশলটি একাধিক টাইম ফ্রেমের ইএমএর তুলনা করে ট্রেন্ডের দিকনির্দেশনা নির্ধারণ করে এবং 200 ইএমএকে ট্রেন্ড ফিল্টার হিসাবে ব্যবহার করে, যখন প্রবণতা স্পষ্টভাবে উর্ধ্বমুখী হয় এবং দাম দীর্ঘমেয়াদী গড়ের উপরে থাকে তখন শক্তিশালী ওভারহেডিংয়ের জন্য মাল্টি-পজিশন স্থাপন করা হয়। কঠোর পজিশন খোলার শর্ত এবং ফিক্সড স্টপ লস স্টপগুলি ঝুঁকি নিয়ন্ত্রণে সহায়তা করে। তবে এই কৌশলটি ট্রেন্ডের বিপরীত দিকের দিকে ধীর প্রতিক্রিয়াশীল হতে পারে এবং স্টপ লস স্টপটি স্থির থাকে, বাজারের উদ্ভূত ওঠানামার প্রতিক্রিয়ায় সীমাবদ্ধতা রয়েছে। ভবিষ্যতে, আরও সময়সীমা, অপ্টিমাইজড স্টপ লস স্টপ, আরও ট্রেডিং সিগন্যাল এবং প্যারামিটার অপ্টিমাইজেশনের মাধ্যমে কৌশলগুলির অভিযোজনযোগ্যতা এবং স্থিতিশীলতা বাড়ানো যেতে পারে, যাতে এটি বাজারের সুযোগগুলি আরও ভালভাবে দখল করতে এবং ঝুঁকি নিয়ন্ত্রণ করতে পারে।
/*backtest
start: 2023-05-17 00:00:00
end: 2024-05-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Multi-Timeframe Trend Following with 200 EMA Filter - Longs Only", shorttitle="MTF_TF_200EMA_Longs", overlay=true, initial_capital=1000, default_qty_type=strategy.fixed, default_qty_value=1)
// Inputs
fast_length = input.int(9, title="Fast EMA Length", minval=1)
slow_length = input.int(21, title="Slow EMA Length", minval=1)
filter_length_200 = input.int(200, title="200 EMA Length", minval=1)
stop_loss_perc = input.float(1.0, title="Stop Loss Percentage", minval=0.1) / 100
take_profit_perc = input.float(3.0, title="Take Profit Percentage", minval=0.1) / 100
// Calculate EMAs for 5-minute, 15-minute, and 30-minute timeframes
ema_fast_5min = request.security(syminfo.tickerid, "5", ta.ema(close, fast_length), lookahead=barmerge.lookahead_on)
ema_slow_5min = request.security(syminfo.tickerid, "5", ta.ema(close, slow_length), lookahead=barmerge.lookahead_on)
ema_fast_15min = request.security(syminfo.tickerid, "15", ta.ema(close, fast_length), lookahead=barmerge.lookahead_on)
ema_slow_15min = request.security(syminfo.tickerid, "15", ta.ema(close, slow_length), lookahead=barmerge.lookahead_on)
ema_fast_30min = request.security(syminfo.tickerid, "30", ta.ema(close, fast_length), lookahead=barmerge.lookahead_on)
ema_slow_30min = request.security(syminfo.tickerid, "30", ta.ema(close, slow_length), lookahead=barmerge.lookahead_on)
// Calculate 200 EMA for the 5-minute timeframe
ema_200_5min = ta.ema(close, filter_length_200)
// Determine the trend for each timeframe
trend_5min = ema_fast_5min > ema_slow_5min ? 1 : -1
trend_15min = ema_fast_15min > ema_slow_15min ? 1 : -1
trend_30min = ema_fast_30min > ema_slow_30min ? 1 : -1
// Combine trend signals
combined_trend = trend_5min + trend_15min + trend_30min
// Define entry and exit conditions with 200 EMA filter
enter_long = combined_trend == 3 and close > ema_200_5min
exit_long = combined_trend < 3 or close < ema_200_5min
// Plot EMAs for the 5-minute timeframe
plot(ema_fast_5min, color=color.blue, linewidth=2, title="Fast EMA 5min")
plot(ema_slow_5min, color=color.red, linewidth=2, title="Slow EMA 5min")
plot(ema_200_5min, color=color.green, linewidth=2, title="200 EMA 5min")
// Strategy execution
if (enter_long)
strategy.entry("Long", strategy.long, stop=close * (1 - stop_loss_perc), limit=close * (1 + take_profit_perc))
if (exit_long)
strategy.close("Long")