এই কৌশলটি দ্বৈত ইএমএ ক্রসওভার সংকেতগুলির উপর ভিত্তি করে একটি গতিশীল প্রবণতা অনুসরণকারী সিস্টেম, যা স্বল্পমেয়াদী 20 দিনের এক্সপোনেনশিয়াল মুভিং এভারেজ (ইএমএ) এবং দীর্ঘমেয়াদী 50 দিনের ইএমএ ক্রসওভারের মাধ্যমে বাজারের প্রবণতা পরিবর্তনগুলি সনাক্ত করে, স্বয়ংক্রিয়ভাবে ক্রয় এবং বিক্রয় অপারেশন সম্পাদন করে। কৌশলটি পরিপক্ক প্রযুক্তিগত বিশ্লেষণ পদ্ধতি ব্যবহার করে, প্রবণতা অনুসরণকারীকে গতিশীল অবস্থান পরিচালনার সাথে একত্রিত করে, উল্লেখযোগ্য অস্থিরতার সাথে বাজারগুলির জন্য উপযুক্ত।
কৌশলটির মূল যুক্তি নিম্নলিখিত মূল উপাদানগুলির উপর ভিত্তি করেঃ
এই কৌশলটি একটি ক্লাসিক প্রবণতা অনুসরণকারী সিস্টেমের একটি আধুনিক বাস্তবায়ন, প্রোগ্রাম্যাটিক ট্রেডিংয়ের মাধ্যমে traditionalতিহ্যবাহী দ্বৈত ইএমএ ক্রসওভার কৌশলটি পদ্ধতিগতকরণ এবং মানককরণ। যদিও অন্তর্নিহিত ঝুঁকি রয়েছে, কৌশলটি ক্রমাগত অপ্টিমাইজেশন এবং উন্নতির মাধ্যমে ভাল প্রয়োগের সম্ভাবনা রয়েছে। লাইভ ট্রেডিংয়ের আগে পুঙ্খানুপুঙ্খ পরামিতি অপ্টিমাইজেশন এবং ব্যাকটেস্টিং পরিচালনা করার পরামর্শ দেওয়া হয়।
/*backtest start: 2019-12-23 08:00:00 end: 2025-01-04 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Crossover Buy/Sell Signals", overlay=true) // Input parameters for EMAs emaShortLength = input.int(20, title="Short EMA Length") emaLongLength = input.int(50, title="Long EMA Length") // Calculating EMAs emaShort = ta.ema(close, emaShortLength) emaLong = ta.ema(close, emaLongLength) // Plotting EMA crossover lines plot(emaShort, color=color.green, title="20 EMA") plot(emaLong, color=color.red, title="50 EMA") // Buy and Sell signal logic longCondition = ta.crossover(emaShort, emaLong) exitLongCondition = ta.crossunder(emaShort, emaLong) shortCondition = ta.crossunder(emaShort, emaLong) exitShortCondition = ta.crossover(emaShort, emaLong) // Plot buy and sell signals on the chart plotshape(series=longCondition, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal") plotshape(series=exitLongCondition, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Exit") plotshape(series=shortCondition, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal") plotshape(series=exitShortCondition, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Exit") // Backtesting strategy logic var float entryPrice = na var int position = 0 // 1 for long, -1 for short, 0 for no position if (longCondition and position == 0) entryPrice := close position := 1 if (shortCondition and position == 0) entryPrice := close position := -1 if (exitLongCondition and position == 1) strategy.exit("Exit Long", from_entry="Long", limit=close) position := 0 if (exitShortCondition and position == -1) strategy.exit("Exit Short", from_entry="Short", limit=close) position := 0 if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short)