এই কৌশলটি সুপারট্রেন্ড, ডুয়াল মুভিং এভারেজ (ডিইএমএ) এবং বোলিংজার ব্যান্ড সহ একাধিক প্রযুক্তিগত সূচককে একত্রিত করে, তাদের শক্তির সুবিধা নিতে এবং আরও সঠিক ট্রেডিং সংকেত তৈরি করতে।
কৌশলটি সুপারট্রেন্ডের উপরের এবং নীচের ব্যান্ডগুলি গণনা করতে একটি 12 পিরিয়ডের এটিআর এবং মূল্য গড় ব্যবহার করে এবং যখন দাম সেই ব্যান্ডগুলি ভেঙে যায় তখন দীর্ঘ এবং সংক্ষিপ্ত সংকেতগুলি সনাক্ত করে। এদিকে, 200 পিরিয়ডের ডিএমএ প্রবণতা বিচারের জন্য একটি সহায়ক সূচক হিসাবে কাজ করে। এছাড়াও, বোলিংজার ব্যান্ডগুলি এন্ট্রি এবং স্টপ লসগুলির জন্য সর্বোত্তম সময় নির্ধারণে সহায়তা করে।
যখন দাম উপরের ব্যান্ডের উপরে ভাঙ্গবে তখন কিনুন সংকেত উত্পন্ন হয়। যখন দাম নীচের ব্যান্ডের নীচে ভাঙ্গবে তখন বিক্রয় সংকেত উত্পন্ন হয়। যখন দাম সুপারট্রেন্ডের উপরের বা নীচের ব্যান্ডের মধ্য দিয়ে ভাঙ্গবে, তখন চিহ্নিতকারী এবং পাঠ্য
সামগ্রিক বাজার প্রবণতার দিকনির্দেশনা নির্ধারণের জন্য ডেমাকে সাদা রঙে মূল্য বক্ররেখার উপরে বা নীচে চিত্রিত করা হয়েছে।
বোলিংজার ব্যান্ডগুলি এন্ট্রি এবং স্টপ লসগুলির জন্য সর্বোত্তম সময় নির্ধারণের জন্য ব্যবহৃত হয়। এর উপরের এবং নীচের ব্যান্ডগুলি একটি চ্যানেল গঠন করে যা দামের ওঠানামাকে অন্তর্ভুক্ত করে, যা দামগুলি তাদের স্বাভাবিক পরিসরের বাইরে চলে গেছে, অর্থাৎ অত্যধিক অস্থির হয়ে উঠেছে তা নির্ধারণে সহায়তা করে।
ট্রেডে প্রবেশের পর, কৌশলটি স্বয়ংক্রিয় অবস্থান হ্রাসের জন্য স্টপ লস মূল্য এবং লাভের মূল্য নির্ধারণ করে লাভ বা হ্রাস হ্রাস করার জন্য স্টপ লস এবং লাভের পদ্ধতি ব্যবহার করে।
একাধিক সূচককে একীভূত করা এই কৌশলটিকে আরও নির্ভুল ট্রেডিং সংকেত তৈরির জন্য তাদের পৃথক শক্তির সর্বাধিক ব্যবহার করতে দেয়।
সুপারট্রেন্ড বাজারের গোলমাল ফিল্টার করতে সক্ষম এবং অতিরিক্ত ট্রেডিং এড়াতে পারে। ডিইএমএ সাধারণ প্রবণতা দিক নির্ধারণ করতে পারে এবং প্রবণতার বিরুদ্ধে ট্রেডিং রোধ করতে পারে। বোলিংজার ব্যান্ডগুলি এন্ট্রি এবং স্টপ লসগুলির জন্য সর্বোত্তম সময় নির্ধারণ করে।
মোবাইল সতর্কতা সময়মত ট্রেডিং প্রম্পট সক্ষম করে। স্বয়ংক্রিয় স্টপ লস এবং লাভ গ্রহণ লাভ এবং ক্ষতি কমানোর অনুমতি দেয়।
একাধিক সূচক একীভূত করা কৌশলটির জটিলতা এবং ত্রুটির সম্ভাবনা বৃদ্ধি করে। সূচক প্যারামিটার সেটিংগুলি ব্যবসায়ের সুযোগগুলি মিস করতে বা মিথ্যা সংকেত তৈরি করতে পারে।
এছাড়াও, অত্যধিক আক্রমণাত্মক স্টপ লস সেটিংগুলি ক্ষতি বাড়িয়ে তুলতে পারে। মোবাইল সতর্কতার স্থায়িত্বও সময়মত মুনাফা গ্রহণ এবং স্টপ লসের কার্যকারিতাকে প্রভাবিত করে।
সর্বোত্তম প্যারামিটার সেট খুঁজে পেতে বিভিন্ন প্যারামিটার সমন্বয় পরীক্ষা করা যেতে পারে। বিভিন্ন বাজারের অবস্থার উপর ভিত্তি করে প্যারামিটারগুলিও সামঞ্জস্য করা যেতে পারে।
পৃথক সূচকগুলির স্বতন্ত্র ব্যবহারের চেষ্টা করা মিথ্যা সংকেতগুলি হ্রাস করতে পারে। আরও অপ্টিমাইজেশনের জন্য অতিরিক্ত সূচকগুলিও যুক্ত করা যেতে পারে।
স্টপ লস এবং লভ্যাংশ গ্রহণের মানদণ্ডগুলিও সামঞ্জস্যের সাপেক্ষে যেমন ট্রেলিং স্টপ লস এবং আংশিক স্টপ লস।
এই কৌশলটি ট্রেড সিগন্যাল জেনারেশনের জন্য একাধিক প্রযুক্তিগত সূচকের শক্তিকে একত্রিত করে এবং তুলনামূলকভাবে উচ্চ ব্যবহারিকতা রয়েছে। তবে এটি নির্দিষ্ট ঝুঁকিগুলির মুখোমুখি হয় এবং কার্যকরভাবে এবং লাভজনকভাবে নিয়োগের জন্য ক্রমাগত পরীক্ষা এবং অপ্টিমাইজেশনের প্রয়োজন হয়।
/*backtest start: 2024-01-23 00:00:00 end: 2024-02-22 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © zhuenrong //@version=4 strategy("Supertrend + DEMA + Bollinger Bands", overlay=true) // Input parameters for Supertrend atrLength = input(title="ATR Period", type=input.integer, defval=12) src = input(hl2, title="Source") multiplier = input(title="ATR Multiplier", type=input.float, step=0.1, defval=3.0) changeATR = input(title="Change ATR Calculation Method?", type=input.bool, defval=true) showSupertrend = input(title="Show Supertrend Indicator?", type=input.bool, defval=true) // Input parameters for DEMA demaLength = input(200, title="DEMA Period") showDEMA = input(title="Show DEMA Indicator?", type=input.bool, defval=true) // Calculate ATR for Supertrend atr2 = sma(tr, atrLength) atr = changeATR ? atr(atrLength) : atr2 // Calculate Supertrend up = src - (multiplier * atr) up1 = nz(up[1], up) up := close[1] > up1 ? max(up, up1) : up dn = src + (multiplier * atr) dn1 = nz(dn[1], dn) dn := close[1] < dn1 ? 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 // Plot Supertrend upPlot = plot(showSupertrend ? (trend == 1 ? up : na) : 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 ? 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(showSupertrend ? (trend == 1 ? na : dn) : na, 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 ? 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)) mPlot = plot(ohlc4, title="", style=plot.style_circles, linewidth=0) longFillColor = (trend == 1 ? color.new(color.green, 80) : color.new(color.white, 0)) shortFillColor = (trend == -1 ? color.new(color.red, 80) : color.new(color.white, 0)) fill(mPlot, upPlot, title="UpTrend Highlighter", color=longFillColor) fill(mPlot, dnPlot, title="DownTrend Highlighter", color=shortFillColor) // Alert conditions alertcondition(buySignal, title="Custom Supertrend Buy", message="Custom Supertrend Buy!") alertcondition(sellSignal, title="Custom Supertrend Sell", message="Custom Supertrend Sell!") // Calculate DEMA ema1 = ema(close, demaLength) dema = 2 * ema1 - ema(ema1, demaLength) // Plot DEMA with white color plot(showDEMA ? dema : na, color=color.new(color.white, 0), title="DEMA", linewidth=2) // Add push notification on mobile if buy and sell occurred if (buySignal) strategy.entry("Buy", strategy.long) //strategy.exit("Sell") //alert("Buy Signal - Supertrend") if (sellSignal) strategy.entry("Sell", strategy.short) //strategy.exit("Cover") //alert("Sell Signal - Supertrend") // === Stop LOSS === if strategy.position_size>0 strategy.exit("Stop Loss/Profit Long","Buy", stop=strategy.position_avg_price*100, limit=strategy.position_avg_price*1.1) if strategy.position_size<0 strategy.exit("Stop Loss/Profit Short","Sell", stop=strategy.position_avg_price*100, limit=strategy.position_avg_price*1.1)