
এই কৌশলটি সুপারট্রেন্ড সূচক এবং ডিইএমএ সূচককে একত্রিত করে, একটি প্রবণতা অনুসরণকারী ট্রেডিং কৌশল বাস্তবায়ন করে। দামগুলি যখন ট্র্যাকের উপরে থাকে তখন একটি কেনার সংকেত উত্পন্ন হয়, যখন দামগুলি ট্র্যাকের নীচে পড়ে তখন বিক্রয় সংকেত উত্পন্ন হয়, ডিইএমএ সূচক ফিল্টার মিথ্যা সংকেত। এই কৌশলটি প্রবণতার ক্ষেত্রে প্রয়োগ করা হয়, কার্যকরভাবে প্রবণতা অনুসরণ করতে পারে, ঝাঁকুনি ফিল্টার করতে পারে।
এই কৌশলটি মূলত সুপারট্রেন্ড সূচকের উপর ভিত্তি করে মূল্য প্রবণতার দিক নির্ধারণ করে। সুপারট্রেন্ড সূচকটি এটিআর সূচকের সাথে মিলিত হয়, যা মূল্যের প্রবণতা কার্যকরভাবে নির্ধারণ করতে পারে। দাম বাড়লে এটি ট্রেনে উঠে যায় এবং দাম কমে গেলে এটি ডাউনট্রেনে পড়ে। যখন দাম নীচের ট্র্যাক থেকে ভেঙে যায় তখন এটি ট্রেন্ডে পরিণত হয় এবং ক্রয় সংকেত তৈরি করে। যখন দাম উঁচু ট্র্যাক থেকে ভেঙে যায় তখন এটি ট্রেনে পরিণত হয় এবং বিক্রয় সংকেত তৈরি করে।
ভুল সংকেত ফিল্টার করার জন্য, এই কৌশলটি ডিইএমএ সূচককে সংযুক্ত করে। দামগুলি যখন ট্র্যাকের উপরে এবং ডিইএমএ লাইনের উপরে থাকে তখনই একটি ক্রয় সংকেত উত্পন্ন হয়; যখন দামগুলি ট্র্যাকের নীচে এবং ডিইএমএ লাইনের নীচে পড়ে তখনই একটি বিক্রয় সংকেত উত্পন্ন হয়। এটি কার্যকরভাবে বাজারের অস্থিরতার মধ্যে মিথ্যা সংকেতগুলি ফিল্টার করতে পারে।
বিশেষ করে, এই কৌশলটির ট্রেডিং সিগন্যাল লজিক নিম্নরূপঃ
এই ধরনের লজিক্যাল ডিজাইনের সাহায্যে ট্রেন্ডিংয়ের সময় সুষ্ঠুভাবে কাজ করা যায় এবং বাজারে ঘন ঘন পজিশন খোলা এড়ানো যায়।
ঝুঁকি মোকাবিলার উপায়ঃ
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে উন্নত করা যেতে পারেঃ
সুপারট্রেন্ড সূচক প্যারামিটার অপ্টিমাইজেশান। আপনি বিভিন্ন ATR চক্র প্যারামিটার পরীক্ষা করতে পারেন এবং সর্বোত্তম প্যারামিটার সমন্বয় খুঁজে পেতে পারেন।
DEMA সূচক প্যারামিটার অপ্টিমাইজেশান. আপনি বিভিন্ন প্যারামিটার পরীক্ষা করতে পারেন এবং সর্বোত্তম প্যারামিটার সেটিং নির্ধারণ করতে পারেন।
অতিরিক্ত স্টপ ম্যানেজমেন্ট। এটিআর মান অনুযায়ী স্টপ লেভেল সেট করা যেতে পারে, যাতে অতিরিক্ত স্টপ না হয়।
সংকেত পরিস্রাবণ নিয়ম যোগ করুন। আপনি অন্যান্য সূচকগুলির নিশ্চিতকরণকে গুরুত্বপূর্ণ পয়েন্টে যুক্ত করতে পারেন, ভুল সংকেত এড়াতে পারেন। উদাহরণস্বরূপ, প্রবণতা বিপরীত পয়েন্টে ভলিউম শক্তি সূচকগুলির নিশ্চিতকরণ বৃদ্ধি করুন।
পজিশন ম্যানেজমেন্ট অপ্টিমাইজ করুন। আপনি বাজারের অস্থিরতা এবং ঝুঁকি পরিস্থিতির গতিশীলতার উপর ভিত্তি করে পজিশনগুলি সামঞ্জস্য করতে পারেন।
এই কৌশলটি সুপারট্রেন্ড সূচক এবং ডিইএমএ সূচকগুলির সুবিধাগুলিকে সংহত করে, প্রবণতা অনুসরণ এবং সংকেত ফিল্টারিংয়ের উপর ভিত্তি করে একটি পরিমাণযুক্ত ট্রেডিং কৌশল বাস্তবায়ন করে। কৌশলটি অপ্টিমাইজ করার জন্য প্রচুর জায়গা রয়েছে, প্যারামিটার অপ্টিমাইজেশন, স্টপ লস মেকানিজম এবং সংকেত ফিল্টারিংয়ের মতো পদক্ষেপের মাধ্যমে কৌশলটির স্থায়িত্ব এবং লাভজনকতা আরও উন্নত করা যেতে পারে। কৌশলটি সহজ, সহজেই বাস্তবায়ন করা যায়, সামগ্রিক ঝুঁকি নিয়ন্ত্রণযোগ্য এবং পরিমাণযুক্ত ব্যবসায়ের জন্য উপযুক্ত।
/*backtest
start: 2023-11-07 00:00:00
end: 2023-12-07 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy('Krish\'s Supertrend Strategy', overlay=true)
// Supertrend Settings
Periods = input(title='ATR Period', defval=10)
src = input(hl2, title='Source')
Multiplier = input.float(title='ATR Multiplier', step=0.1, defval=3.0)
changeATR = input(title='Change ATR Calculation Method ?', defval=true)
showsignals = input(title='Show Buy/Sell Signals ?', defval=true)
highlighting = input(title='Highlighter On/Off ?', defval=true)
atr2 = ta.sma(ta.tr, Periods)
atr = changeATR ? ta.atr(Periods) : atr2
up = src - Multiplier * atr
up1 = nz(up[1], up)
up := close[1] > up1 ? math.max(up, up1) : up
dn = src + Multiplier * atr
dn1 = nz(dn[1], dn)
dn := close[1] < dn1 ? math.min(dn, dn1) : dn
trend = 1
trend := nz(trend[1], trend)
trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend
upPlot = plot(trend == 1 ? up : na, title='Up Trend', style=plot.style_linebr, linewidth=2, color=color.new(color.green, 0))
buySignal = trend == 1 and trend[1] == -1
plotshape(buySignal ? up : na, title='UpTrend Begins', location=location.absolute, style=shape.circle, size=size.tiny, color=color.new(color.green, 0))
plotshape(buySignal and showsignals ? up : na, title='Buy', text='Buy', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(color.green, 0), textcolor=color.new(color.white, 0))
dnPlot = plot(trend == 1 ? na : dn, title='Down Trend', style=plot.style_linebr, linewidth=2, color=color.new(color.red, 0))
sellSignal = trend == -1 and trend[1] == 1
plotshape(sellSignal ? dn : na, title='DownTrend Begins', location=location.absolute, style=shape.circle, size=size.tiny, color=color.new(color.red, 0))
plotshape(sellSignal and showsignals ? dn : na, title='Sell', text='Sell', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.red, 0), textcolor=color.new(color.white, 0))
// DEMA Settings
dema_length = 200
dema = ta.ema(close, dema_length)
// Long and Short Conditions
longCondition = buySignal and close > dema
shortCondition = sellSignal and close < dema
// Strategy Entry and Exit
strategy.entry('Long', strategy.long, when=longCondition)
strategy.entry('Short', strategy.short, when=shortCondition)
strategy.close('Long', when=ta.change(trend) or close < dema)
strategy.close('Short', when=ta.change(trend) or close > dema)
// Plotting
mPlot = plot(ohlc4, title='', style=plot.style_circles, linewidth=0)
longFillColor = highlighting ? trend == 1 ? color.green : color.white : color.white
shortFillColor = highlighting ? trend == -1 ? color.red : color.white : color.white
fill(mPlot, upPlot, title='UpTrend Highlighter', color=longFillColor, transp=90)
fill(mPlot, dnPlot, title='DownTrend Highlighter', color=shortFillColor, transp=90)
// Alerts (using plotshape for alerts in strategies)
plotshape(buySignal, title='SuperTrend Buy', color=color.new(color.green, 0), style=shape.triangleup, size=size.small)
plotshape(sellSignal, title='SuperTrend Sell', color=color.new(color.red, 0), style=shape.triangledown, size=size.small)
changeCond = trend != trend[1]
plotshape(changeCond, title='SuperTrend Direction Change', color=color.new(color.yellow, 0), style=shape.triangleup, size=size.small)