এই কৌশলটি হ'ল এক্সপোনেনশিয়াল মুভিং এভারেজ (ইএমএ) ক্রসওভারের উপর ভিত্তি করে একটি ট্রেডিং সিস্টেম, গতিশীল ঝুঁকি পরিচালনার জন্য গড় সত্য পরিসীমা (এটিআর) এর সাথে মিলিত। কৌশলটি মূল্যের প্রবণতার গতি পরিবর্তনগুলি ক্যাপচার করতে স্বল্পমেয়াদী এবং দীর্ঘমেয়াদী ইএমএ লাইন ব্যবহার করে, যখন এটিআর ব্যবহার করে গতিশীলভাবে লাভ এবং স্টপ-লস স্তর সেট করে, ট্রেডিং ঝুঁকির উপর সুনির্দিষ্ট নিয়ন্ত্রণ অর্জন করে।
কৌশলটির মূল যুক্তিটি বিভিন্ন সময়ের দুটি ইএমএ (9 এবং 21) এর মধ্যে ক্রসওভার সংকেতগুলির উপর ভিত্তি করে। যখন স্বল্পমেয়াদী ইএমএ দীর্ঘমেয়াদী ইএমএর উপরে অতিক্রম করে তখন একটি ক্রয় সংকেত উত্পন্ন হয়, যখন স্বল্পমেয়াদী ইএমএ দীর্ঘমেয়াদী ইএমএর নীচে অতিক্রম করে তখন একটি বিক্রয় সংকেত উত্পন্ন হয়। ঝুঁকি আরও ভালভাবে পরিচালনা করার জন্য, কৌশলটি 14 পিরিয়ড এটিআর ভিত্তিক একটি গতিশীল লাভ এবং স্টপ-লস প্রক্রিয়া অন্তর্ভুক্ত করে, লাভের স্তরগুলি 2x এটিআর এবং স্টপ-লস স্তরগুলি 1x এটিআর এ সেট করা হয়, সময়মত ঝুঁকি নিয়ন্ত্রণ বজায় রেখে পর্যাপ্ত সম্ভাব্য মুনাফা নিশ্চিত করে।
এই কৌশলটি ক্লাসিক ইএমএ ক্রসওভার সিস্টেমকে গতিশীল এটিআর ঝুঁকি ব্যবস্থাপনার সাথে একত্রিত করে একটি বিস্তৃত ট্রেডিং সিস্টেম তৈরি করে। এর প্রধান শক্তিগুলি গতিশীল ঝুঁকি ব্যবস্থাপনা ক্ষমতা এবং কার্যকর প্রবণতা অনুসরণকারী বৈশিষ্ট্যগুলিতে রয়েছে। প্রস্তাবিত অপ্টিমাইজেশান দিকগুলির মাধ্যমে আরও উন্নতির সুযোগ রয়েছে। লাইভ ট্রেডিং বাস্তবায়নের জন্য, নির্দিষ্ট বাজারের বৈশিষ্ট্যগুলির উপর ভিত্তি করে উপযুক্ত সমন্বয় সহ পুঙ্খানুপুঙ্খ ব্যাকটেস্টিং এবং পরামিতি অপ্টিমাইজেশন পরিচালনা করার পরামর্শ দেওয়া হয়।
/*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("Improved EMA Crossover Strategy", overlay=true) // User-defined inputs for EMAs shortTermLength = input(9, title="Short-Term EMA Length") longTermLength = input(21, title="Long-Term EMA Length") // Dynamic Take Profit and Stop Loss atrLength = input(14, title="ATR Length") atrMultiplierTP = input(2.0, title="ATR Multiplier for Take Profit") atrMultiplierSL = input(1.0, title="ATR Multiplier for Stop Loss") // Calculate EMAs and ATR shortTermEMA = ta.ema(close, shortTermLength) longTermEMA = ta.ema(close, longTermLength) atr = ta.atr(atrLength) // Plot the EMAs plot(shortTermEMA, color=color.blue, title="Short-Term EMA") plot(longTermEMA, color=color.red, title="Long-Term EMA") // Generate Entry Conditions longCondition = ta.crossover(shortTermEMA, longTermEMA) shortCondition = ta.crossunder(shortTermEMA, longTermEMA) // Optional Debugging: Print conditions (you can remove this later) var label longLabel = na var label shortLabel = na if longCondition longLabel := label.new(bar_index, high, "Buy Signal", color=color.green, style=label.style_label_down, textcolor=color.white) if shortCondition shortLabel := label.new(bar_index, low, "Sell Signal", color=color.red, style=label.style_label_up, textcolor=color.white) if (longCondition) strategy.entry("Long", strategy.long) strategy.exit("Long Exit", "Long", limit=close + atr * atrMultiplierTP, stop=close - atr * atrMultiplierSL) if (shortCondition) strategy.entry("Short", strategy.short) strategy.exit("Short Exit", "Short", limit=close - atr * atrMultiplierTP, stop=close + atr * atrMultiplierSL)