এটি একটি পরিমাণগত ট্রেডিং কৌশল যা এক্সপোনেনশিয়াল মুভিং এভারেজ (ইএমএ) ক্রসওভারগুলিকে একটি গড় সত্য পরিসীমা (এটিআর) ফিল্টারের সাথে একত্রিত করে। কৌশলটি শক্তিশালী প্রবণতা সনাক্ত করতে এবং উচ্চ অস্থিরতার বাজারের অবস্থার মধ্যে বাণিজ্য সম্পাদন করার লক্ষ্য রাখে, কার্যকরভাবে শার্প অনুপাত এবং সামগ্রিক পারফরম্যান্স উন্নত করে। এটি মাঝারি থেকে দীর্ঘমেয়াদী প্রবণতা ক্যাপচার করতে 50-পরিবাহী এবং 200-পরিবাহী ইএমএ ব্যবহার করে, বাজারের অস্থিরতা মূল্যায়নের জন্য এটিআর সূচক ব্যবহার করে, কেবলমাত্র যখন অস্থিরতা একটি নির্দিষ্ট প্রান্তিক অতিক্রম করে তখনই ট্রেড করে।
মূল যৌক্তিকতা দুটি প্রধান উপাদান নিয়ে গঠিতঃ প্রবণতা নির্ধারণ এবং অস্থিরতা ফিল্টারিং। প্রবণতা নির্ধারণের জন্য, কৌশলটি দ্রুত রেখা হিসাবে 50 পিরিয়ড ইএমএ এবং ধীর রেখা হিসাবে 200 পিরিয়ড ইএমএ ব্যবহার করে, যখন দ্রুত রেখা ধীর রেখার উপরে অতিক্রম করে তখন দীর্ঘ সংকেত এবং নীচে অতিক্রম করার সময় সংক্ষিপ্ত সংকেত তৈরি করে। অস্থিরতা ফিল্টারিংয়ের জন্য, কৌশলটি 14 পিরিয়ড এটিআর মান গণনা করে এবং এটিকে মূল্যের শতাংশে রূপান্তর করে, কেবলমাত্র যখন এটিআর শতাংশ একটি পূর্বনির্ধারিত থ্রেশহোল্ড (ডিফল্ট 2%) অতিক্রম করে তখনই অবস্থানগুলি অনুমোদিত হয়। এই নকশাটি নিশ্চিত করে যে কৌশলটি কেবলমাত্র পর্যাপ্ত অস্থিরতা সহ বাজারে বাণিজ্য করে, কার্যকরভাবে বাজারের মধ্যে মিথ্যা সংকেত হ্রাস করে।
এই কৌশলটি আধুনিক ঝুঁকি ব্যবস্থাপনা ধারণাগুলির সাথে ক্লাসিকাল প্রযুক্তিগত সূচকগুলিকে একত্রিত করে। ট্রেডিং টাইমিং নিয়ন্ত্রণের জন্য একটি এটিআর ফিল্টার ব্যবহার করার সময় প্রবণতা ক্যাপচার করার জন্য ইএমএ ক্রসওভার ব্যবহার করে কৌশলটি শক্তিশালী ব্যবহারিকতা অর্জনের সময় সরলতা বজায় রাখে। যদিও কিছু অন্তর্নিহিত ঝুঁকি রয়েছে, কৌশলটি এখনও সঠিক অপ্টিমাইজেশন এবং ঝুঁকি ব্যবস্থাপনা ব্যবস্থাগুলির মাধ্যমে ভাল অ্যাপ্লিকেশন মান ধারণ করে। ব্যবসায়ীদের নির্দিষ্ট বাজারের বৈশিষ্ট্য এবং ব্যবহারিক অ্যাপ্লিকেশনগুলিতে তাদের নিজস্ব ঝুঁকি পছন্দ অনুযায়ী পরামিতিগুলি সামঞ্জস্য করার পরামর্শ দেওয়া হয়।
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-27 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Crossover with ATR Filter", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10) // Inputs for Moving Averages fastLength = input.int(50, title="Fast EMA Length") slowLength = input.int(200, title="Slow EMA Length") // Inputs for ATR Filter atrLength = input.int(14, title="ATR Length") atrMultiplier = input.float(1.5, title="ATR Multiplier") atrThreshold = input.float(0.02, title="ATR Threshold (%)") // Calculate EMAs fastEMA = ta.ema(close, fastLength) slowEMA = ta.ema(close, slowLength) // Calculate ATR atr = ta.atr(atrLength) // Convert ATR to a percentage of price atrPct = atr / close // Define Long Condition (Cross and ATR filter) longCondition = ta.crossover(fastEMA, slowEMA) and atrPct > atrThreshold / 100 // Define Short Condition shortCondition = ta.crossunder(fastEMA, slowEMA) and atrPct > atrThreshold / 100 // Define Exit Conditions exitConditionLong = ta.crossunder(fastEMA, slowEMA) exitConditionShort = ta.crossover(fastEMA, slowEMA) // Long Entry if (longCondition) strategy.entry("Long", strategy.long) // Short Entry if (shortCondition) strategy.entry("Short", strategy.short) // Long Exit if (exitConditionLong) strategy.close("Long") // Short Exit if (exitConditionShort) strategy.close("Short") // Plot EMAs for visual reference plot(fastEMA, title="50 EMA", color=color.blue) plot(slowEMA, title="200 EMA", color=color.red) // Plot ATR for reference plot(atrPct, title="ATR Percentage", color=color.orange, style=plot.style_line) hline(atrThreshold / 100, "ATR Threshold", color=color.green)