এই কৌশলটি একটি বিস্তৃত ট্রেডিং সিস্টেম যা সেন্ট্রাল পিভট রেঞ্জ (সিপিআর), এক্সপোনেনশিয়াল মুভিং এভারেজ (ইএমএ), আপেক্ষিক শক্তি সূচক (আরএসআই) এবং ব্রেকআউট লজিককে একত্রিত করে। কৌশলটি একটি এটিআর-ভিত্তিক গতিশীল ট্রেলিং স্টপ-লস প্রক্রিয়া ব্যবহার করে, গতিশীল ঝুঁকি ব্যবস্থাপনা বাস্তবায়নের সময় বাজার প্রবণতা এবং ট্রেডিং সুযোগগুলি সনাক্ত করতে একাধিক প্রযুক্তিগত সূচক ব্যবহার করে। এটি শক্তিশালী অভিযোজনযোগ্যতা এবং ঝুঁকি নিয়ন্ত্রণের ক্ষমতা সরবরাহ করে ইনট্রাডে এবং মাঝারি মেয়াদী ট্রেডিংয়ের জন্য উপযুক্ত।
কৌশলটি বেশ কয়েকটি মূল উপাদানগুলির উপর ভিত্তি করেঃ
কৌশলটি একাধিক প্রযুক্তিগত সূচকগুলির সমন্বিত প্রভাবের মাধ্যমে একটি বিস্তৃত ট্রেডিং সিস্টেম তৈরি করে। গতিশীল স্টপ-লস প্রক্রিয়া এবং বহু-মাত্রিক সংকেত নিশ্চিতকরণ অনুকূল ঝুঁকি-পুরষ্কার বৈশিষ্ট্য সরবরাহ করে। কৌশল অপ্টিমাইজেশান সম্ভাব্যতা মূলত সংকেত মানের উন্নতি এবং ঝুঁকি ব্যবস্থাপনা পরিমার্জন মধ্যে অবস্থিত। ক্রমাগত অপ্টিমাইজেশন এবং সমন্বয় মাধ্যমে, কৌশল বিভিন্ন বাজারের অবস্থার মধ্যে স্থিতিশীল কর্মক্ষমতা বজায় রাখার প্রতিশ্রুতি দেখায়।
/*backtest start: 2024-12-06 00:00:00 end: 2025-01-04 08:00:00 period: 7h basePeriod: 7h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=6 strategy("Enhanced CPR + EMA + RSI + Breakout Strategy", overlay=true) // Inputs ema_short = input(9, title="Short EMA Period") ema_long = input(21, title="Long EMA Period") cpr_lookback = input.timeframe("D", title="CPR Timeframe") atr_multiplier = input.float(1.5, title="ATR Multiplier") rsi_period = input(14, title="RSI Period") rsi_overbought = input(70, title="RSI Overbought Level") rsi_oversold = input(30, title="RSI Oversold Level") breakout_buffer = input.float(0.001, title="Breakout Buffer (in %)") // Calculate EMAs short_ema = ta.ema(close, ema_short) long_ema = ta.ema(close, ema_long) // Request Daily Data for CPR Calculation high_cpr = request.security(syminfo.tickerid, cpr_lookback, high) low_cpr = request.security(syminfo.tickerid, cpr_lookback, low) close_cpr = request.security(syminfo.tickerid, cpr_lookback, close) // CPR Levels pivot = (high_cpr + low_cpr + close_cpr) / 3 bc = (high_cpr + low_cpr) / 2 tc = pivot + (pivot - bc) // ATR for Stop-Loss and Take-Profit atr = ta.atr(14) // RSI Calculation rsi = ta.rsi(close, rsi_period) // Entry Conditions with RSI Filter and Breakout Logic long_condition = ((close > tc) and (ta.crossover(short_ema, long_ema)) and (rsi > 50 and rsi < rsi_overbought)) or (rsi > 80) or (close > (pivot + pivot * breakout_buffer)) short_condition = ((close < bc) and (ta.crossunder(short_ema, long_ema)) and (rsi < 50 and rsi > rsi_oversold)) or (rsi < 20) or (close < (pivot - pivot * breakout_buffer)) // Dynamic Exit Logic long_exit = short_condition short_exit = long_condition // Trailing Stop-Loss Implementation if long_condition strategy.entry("Long", strategy.long) strategy.exit("Exit Long", from_entry="Long", trail_points=atr * atr_multiplier, trail_offset=atr * atr_multiplier / 2) if short_condition strategy.entry("Short", strategy.short) strategy.exit("Exit Short", from_entry="Short", trail_points=atr * atr_multiplier, trail_offset=atr * atr_multiplier / 2) // Plot CPR Levels and EMAs plot(pivot, title="Pivot Point", color=color.orange, linewidth=2) plot(tc, title="Top CPR", color=color.green, linewidth=2) plot(bc, title="Bottom CPR", color=color.red, linewidth=2) plot(short_ema, title="Short EMA", color=color.blue, linewidth=1) plot(long_ema, title="Long EMA", color=color.purple, linewidth=1) // Highlight Buy and Sell Signals bgcolor(long_condition ? color.new(color.green, 90) : na, title="Buy Signal Highlight") bgcolor(short_condition ? color.new(color.red, 90) : na, title="Sell Signal Highlight")