
এই কৌশলটি WaveTrend সূচকের উপর ভিত্তি করে একটি পরিমাণগত ট্রেডিং সিস্টেম, যা গতিশীল ঝুঁকি ব্যবস্থাপনার সাথে মিলিত। কৌশলটি মূল্যের ওঠানামার প্রবণতার শক্তি গণনা করে, ওভারব্লুড ওভারসোল্ড অঞ্চলে সংকেত ফিল্টার করে এবং স্টপ লস, স্টপ স্টপ এবং ট্র্যাকিং স্টপ লস এর মতো ঝুঁকি নিয়ন্ত্রণের উপায় প্রয়োগ করে, যা একটি সম্পূর্ণ লেনদেন পরিচালনা করে।
এই কৌশলটির মূল বিষয় হল HLC3 মূল্যের মাধ্যমে WaveTrend সূচকটি গণনা করা। প্রথমে বেঞ্চলাইন হিসেবে n1 চক্রের ইন্ডেক্সাল মুভিং এভারেজ (ইএমএ) গণনা করা হয়, তারপর মূল্য এবং বেঞ্চলাইন এর বিচ্যুতি গণনা করা হয় এবং 0.015কে ফ্যাক্টর হিসেবে ব্যবহার করে একীভূতকরণ প্রক্রিয়া করা হয়। অবশেষে দুটি ওয়েভ লাইন wt1 এবং wt2 পাওয়া যায়, যা যথাক্রমে দ্রুত এবং ধীর লাইনকে প্রতিনিধিত্ব করে। এই দুটি লাইন ওভারবই ওভারসেলের স্তরের সাথে ক্রস করার উপর ভিত্তি করে ট্রেডিং সিগন্যাল তৈরি করা হয়, একই সাথে একটি বহুস্তরীয় ঝুঁকি নিয়ন্ত্রণ ব্যবস্থা যুক্ত করা হয়।
এই কৌশলটি ওয়েভট্রেন্ড সূচক এবং একটি উন্নত ঝুঁকি ব্যবস্থাপনা সিস্টেমের সাথে মিলিত হয়ে একটি আরও ব্যাপক পরিমাণে পরিমাণগত ট্রেডিং কৌশল অর্জন করে। কৌশলটির মূল সুবিধা হ’ল এটির দৃ adaptability়তা এবং ঝুঁকি নিয়ন্ত্রণযোগ্য, তবে এখনও ব্যবসায়ীদের বাস্তব বাজারের অবস্থার সাথে সামঞ্জস্য রেখে প্যারামিটার অপ্টিমাইজেশন এবং কৌশলগত উন্নতি করা প্রয়োজন। ক্রমাগত অপ্টিমাইজেশন এবং পরিমার্জনের মাধ্যমে, কৌশলটি প্রকৃত ব্যবসায়ের ক্ষেত্রে স্থিতিশীল আয় পাওয়ার সম্ভাবনা রয়েছে।
/*backtest
start: 2024-11-12 00:00:00
end: 2024-12-11 08:00:00
period: 3h
basePeriod: 3h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy(title="WaveTrend [LazyBear] with Risk Management", shorttitle="WT_LB_RM", overlay=true)
// Input Parameters
n1 = input.int(10, "Channel Length")
n2 = input.int(21, "Average Length")
obLevel1 = input.int(60, "Over Bought Level 1")
obLevel2 = input.int(53, "Over Bought Level 2")
osLevel1 = input.int(-60, "Over Sold Level 1")
osLevel2 = input.int(-53, "Over Sold Level 2")
// Risk Management Inputs
stopLossPercent = input.float(50.0, "Stop Loss (%)", minval=0.1, maxval=100)
takeProfitPercent = input.float(5.0, "Take Profit (%)", minval=0.1, maxval=100)
trailingStopPercent = input.float(3.0, "Trailing Stop (%)", minval=0.1, maxval=100)
trailingStepPercent = input.float(2.0, "Trailing Stop Step (%)", minval=0.1, maxval=100)
// WaveTrend Calculation
ap = hlc3
esa = ta.ema(ap, n1)
d = ta.ema(math.abs(ap - esa), n1)
ci = (ap - esa) / (0.015 * d)
tci = ta.ema(ci, n2)
wt1 = tci
wt2 = ta.sma(wt1, 4)
// Plotting Original Indicators
plot(0, color=color.gray)
plot(obLevel1, color=color.red)
plot(osLevel1, color=color.green)
plot(obLevel2, color=color.red, style=plot.style_line)
plot(osLevel2, color=color.green, style=plot.style_line)
plot(wt1, color=color.green)
plot(wt2, color=color.red, style=plot.style_line)
plot(wt1-wt2, color=color.blue, style=plot.style_area, transp=80)
// Buy and Sell Signals with Risk Management
longCondition = ta.crossover(wt1, osLevel1) or ta.crossover(wt1, osLevel2)
shortCondition = ta.crossunder(wt1, obLevel1) or ta.crossunder(wt1, obLevel2)
// Strategy Entry with Risk Management
if (longCondition)
entryPrice = close
stopLossPrice = entryPrice * (1 - stopLossPercent/100)
takeProfitPrice = entryPrice * (1 + takeProfitPercent/100)
strategy.entry("Long", strategy.long)
strategy.exit("Long Exit", "Long",
stop=stopLossPrice,
limit=takeProfitPrice,
trail_price=close * (1 + trailingStopPercent/100),
trail_offset=close * (trailingStepPercent/100))
if (shortCondition)
entryPrice = close
stopLossPrice = entryPrice * (1 + stopLossPercent/100)
takeProfitPrice = entryPrice * (1 - takeProfitPercent/100)
strategy.entry("Short", strategy.short)
strategy.exit("Short Exit", "Short",
stop=stopLossPrice,
limit=takeProfitPrice,
trail_price=close * (1 - trailingStopPercent/100),
trail_offset=close * (trailingStepPercent/100))