
এই কৌশলটি একটি নিম্ন প্রত্যাহারের পরিমাণযুক্ত ট্রেডিং সিস্টেম যা একটি পরিসীমা ফিল্টার (Range Filter) এবং গড় বাস্তব তরঙ্গদৈর্ঘ্য (Average True Ratio) (ATR) সংযুক্ত করে। এটি একটি পরিসীমা ফিল্টার দ্বারা প্রবণতা দিক সনাক্ত করে, যখন এটির ব্যবহার করে পজিশনের আকারটি গতিশীলভাবে সামঞ্জস্য করে এবং স্টপ লস সেট করে, কার্যকরভাবে ঝুঁকি নিয়ন্ত্রণ করে। এই কৌশলটি প্রবণতা নিশ্চিত করার জন্য প্রবণতা নিশ্চিত করার জন্য মূল্যের ধারাবাহিকভাবে দুইটি চক্রের পরিসীমা ফিল্টার অতিক্রম করার প্রয়োজন হয়। এই দ্বৈত নিশ্চিতকরণ পদ্ধতিটি কার্যকরভাবে মিথ্যা ব্রেকিংকে হ্রাস করে। সিস্টেমের ডিফল্ট ঝুঁকিটি প্রতি লেনদেনের ঝুঁকি মূলধনের 1% হিসাবে সংরক্ষণ করা হয়। এই কৌশলটি বিশেষত বাজারের পরিবেশের জন্য উপযুক্ত যেখানে বড় তরঙ্গ রয়েছে তবে একটি স্পষ্ট প্রবণতা রয়েছে।
এই কৌশলটির মূল নীতি হল এটিআর ঝুঁকি ব্যবস্থাপনা সিস্টেমের সাথে পরিসীমা ফিল্টার ট্রেন্ড সনাক্তকরণের সমন্বয়ঃ
পরিসীমা ফিল্টার গণনা:
প্রবণতা নিশ্চিতকরণ:
ATR ডায়নামিক অবস্থান:
এটিআর কুলিং ক্ষতি:
নমনীয়তা:
দুর্দান্ত ঝুঁকি ব্যবস্থাপনা:
সংকেতের গুণমান:
নিম্ন প্রত্যাহারের বৈশিষ্ট্য:
স্বচ্ছ এবং কাস্টমাইজযোগ্য:
ওয়াই-ফাই মার্কেটের দুর্বলতা:
দ্রুত বিপর্যয়ের ঝুঁকি:
পরামিতি সংবেদনশীলতা:
ধারাবাহিক ক্ষতির ঝুঁকি:
স্লাইড পয়েন্ট এবং ফি প্রভাব:
মার্কেটপ্লেস ফিল্টার যুক্ত করুন:
পরিসীমা ফিল্টার চক্র অনুকূলিতকরণ:
মাল্টিপল টাইম ফ্রেম নিশ্চিতকরণ:
গতিশীলভাবে ATR গুণক সমন্বয় করুন:
সময় ভিত্তিক প্রস্থান ব্যবস্থা যোগ করুন:
দ্বৈত নিশ্চিতকরণ পরিসীমা ফিল্টার কৌশল ATR গতিশীল অবস্থান এবং কুলুঙ্গি ক্ষতি সিস্টেমের সাথে একত্রিত একটি পরিমাণগত ট্রেডিং কৌশল যা ঝুঁকি নিয়ন্ত্রণের উপর দৃষ্টি নিবদ্ধ করে। এটি পরিসীমা ফিল্টার দ্বারা প্রবণতা দিক সনাক্ত করে, সংকেত নিশ্চিত করার জন্য দুটি ধারাবাহিক চক্রের ব্রেকডাউন প্রয়োজন, গতিশীলভাবে অবস্থান আকার এবং কুলুঙ্গি ক্ষতি সেট করার জন্য ATR ব্যবহার করে, প্রতিটি লেনদেনের ঝুঁকিকে পূর্বনির্ধারিত শতাংশের মধ্যে কার্যকরভাবে নিয়ন্ত্রণ করে। এই কৌশলটির প্রধান সুবিধা হ’ল শক্তিশালী অভিযোজনযোগ্যতা এবং দুর্দান্ত ঝুঁকি নিয়ন্ত্রণের ক্ষমতা, বিশেষত বিপুল ওঠানামা কিন্তু স্পষ্ট প্রবণতাযুক্ত বাজারের জন্য উপযুক্ত।
/*backtest
start: 2025-02-01 00:00:00
end: 2025-05-25 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"SOL_USDT"}]
*/
//@version=5
strategy("Range Filter + ATR Strategy (Low Drawdown)", overlay=true,
pyramiding=0, default_qty_type=strategy.percent_of_equity,
default_qty_value=100, commission_type=strategy.commission.percent,
commission_value=0.1, initial_capital=10000)
// Input parameters
rangePeriod = input.int(14, title="Range Filter Period")
atrPeriod = input.int(14, title="ATR Period")
riskPercent = input.float(1.0, title="Risk % per Trade", minval=0.1, maxval=5)
useATRSizing = input(true, title="Use ATR Position Sizing")
trailATR = input(1.5, title="Trailing Stop ATR Multiple")
// Calculate Range Filter
src = close
smooth = ta.sma(src, rangePeriod)
filter = ta.sma(math.abs(src - smooth), rangePeriod)
upper = smooth + filter
lower = smooth - filter
// Calculate ATR
atr = ta.atr(atrPeriod)
// Trend direction
upTrend = src > upper and src[1] > upper[1]
downTrend = src < lower and src[1] < lower[1]
// Position sizing based on ATR
atrPositionSize = (strategy.equity * riskPercent/100) / (atr * syminfo.pointvalue)
// Strategy logic
if (upTrend)
strategy.entry("Long", strategy.long, qty=useATRSizing ? atrPositionSize : na)
if (downTrend)
strategy.entry("Short", strategy.short, qty=useATRSizing ? atrPositionSize : na)
// Corrected trailing stop using trail_offset instead of trail_points
if (strategy.position_size > 0)
strategy.exit("Long Exit", "Long", trail_price=na, trail_offset=trailATR * atr)
if (strategy.position_size < 0)
strategy.exit("Short Exit", "Short", trail_price=na, trail_offset=trailATR * atr)
// Plotting
plot(upper, color=color.green, title="Upper Range")
plot(lower, color=color.red, title="Lower Range")
plot(smooth, color=color.blue, title="Smooth Line")