
এই কৌশলটি হাই-ফ্রিকোয়েন্সি লেনদেনের জন্য সুপারট্রেন্ড সাপোর্ট রেসিস্ট্যান্স লাইন এবং এডিএক্স সূচকগুলির সমন্বিত ব্যবহার করে। সুপারট্রেন্ড সাপোর্ট রেসিস্ট্যান্স লাইনটি দামের প্রবণতা এবং ট্রেডিং সংকেত প্রেরণ করার জন্য সর্বশেষ সমর্থন এবং প্রতিরোধের পয়েন্টের গতিশীল গণনা করে। এডিএক্স সূচকটি প্রবণতার শক্তি নির্ধারণের জন্য ব্যবহৃত হয়, এডিএক্স মানটি ফিল্টার শর্ত হিসাবে সেট করে, যখন প্রবণতা যথেষ্ট শক্তিশালী হয় তখনই ট্রেডিং সংকেত প্রেরণ করা হয়।
সমর্থন ও প্রতিরোধের রেখা গণনা করুন। বন্ধের মূল্যকে বেঞ্চমার্ক হিসাবে গ্রহণ করুন এবং একটি ATR ভলিউম যুক্ত করুন। যখন দাম এই রেখাগুলি ভেঙে যায়, তখন এটি একটি প্রবণতা বিপরীত হিসাবে বিবেচিত হয়।
ADX সূচকটি প্রবণতার শক্তি নির্ধারণ করে। যখন ADX সেট মানের চেয়ে বেশি হয়, তখন প্রবণতা যথেষ্ট শক্তিশালী বলে মনে করা হয়।
এই দুইয়ের সমন্বয়ে ট্রেডিং সিগন্যাল জারি করা হয়। শুধুমাত্র যখন সমর্থন রেসিস্ট্যান্স লাইন ভেঙ্গে যায় এবং ADX যথেষ্ট বড় হয় তখন অতিরিক্ত খালি করা হয়।
এই কৌশলটির সুবিধাগুলো হলঃ
সুপার ট্রেন্ড লাইন গতিশীল গণনা প্রতিরোধকে সমর্থন করে, যা দ্রুত বিরতি নির্ধারণ করতে পারে।
এডিএক্স সূচক কার্যকরভাবে অ-প্রবণতা পরিস্থিতি ফিল্টার করে, অবৈধ লেনদেন হ্রাস করে।
এই ছবিতে, তিনি তার বান্ধবীকে দেখছেন।
এই কৌশলটি নিম্নলিখিত ঝুঁকিগুলিও বহন করেঃ
তবে, এই প্রবণতাটি হ্রাস পেয়েছে এবং এই প্রবণতাটি হ্রাস পেয়েছে।
ADX এর ভুল সেট করা হলে, এটি আপনার কৌশলকে প্রভাবিত করতে পারে।
হাই-ফ্রিকোয়েন্সি লেনদেনের লেনদেনের খরচ বেশি।
সমাধানঃ
সুপারপ্যারামিটার অপ্টিমাইজ করুন, যথাযথভাবে ব্রেকথ্রু প্রশস্ত করুন।
ADX পরামিতি পরীক্ষা করা ভাল
ট্রেডিং ফ্রিকোয়েন্সি যথাযথভাবে হ্রাস করা।
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে উন্নত করা যেতে পারেঃ
এটিআর গুণিতক প্যারামিটারগুলিকে অপ্টিমাইজ করুন, যাতে প্রতিরোধের লাইনগুলি আরও শক্তিশালী হয়।
বিভিন্ন ADX প্যারামিটার পরীক্ষা করুন এবং সর্বোত্তম মান খুঁজে বের করুন।
একক ক্ষতি নিয়ন্ত্রণের জন্য স্টপ লস ম্যানেজমেন্টে যোগদান করুন
এই কৌশলটি সুপার ট্রেন্ড লাইন এবং এডিএক্স সূচকের সুবিধাগুলিকে একত্রিত করে, গতিশীল গণনার মাধ্যমে প্রতিরোধকে সমর্থন করে এবং প্রবণতা পাল্টানোর সময় নির্ধারণ করে, এডিএক্স সূচকটি নিম্নমানের সংকেতগুলিকে ফিল্টার করে। প্যারামিটার অপ্টিমাইজেশন এবং প্রক্রিয়াটি সামঞ্জস্য করার পরে, এটি একটি স্থিতিশীল লাভজনক উচ্চ-প্রবাহের কৌশল হতে পারে।
/*backtest
start: 2023-02-12 00:00:00
end: 2024-02-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("STPP20 + ADX", overlay = true)
///////////////////////////
// SuperTrend + Pivot Point
//////////////////////////
src = input(close, title="EMA Source")
PPprd = input(defval = 2, title="Pivot Point Period", minval = 1, maxval = 50)
AtrFactor=input(defval = 5, title = "ATR Factor", minval = 1, step = 0.1)
AtrPd=input(defval = 20, title = "ATR Period", minval=1)
float ph = na
float pl = na
ph := pivothigh(PPprd, PPprd)
pl := pivotlow(PPprd, PPprd)
float center = na
center := center[1]
float lastpp = ph ? ph : pl ? pl : na
if lastpp
if na(center)
center := lastpp
else
center := (center * 2 + lastpp) / 3
Up = center - (AtrFactor * atr(AtrPd))
Dn = center + (AtrFactor * atr(AtrPd))
float TUp = na
float TDown = na
Trend = 0
TUp := close[1] > TUp[1] ? max(Up, TUp[1]) : Up
TDown := close[1] < TDown[1] ? min(Dn, TDown[1]) : Dn
Trend := close > TDown[1] ? 1: close < TUp[1]? -1: nz(Trend[1], 1)
Trailingsl = Trend == 1 ? TUp : TDown
// Lines
linecolor = Trend == 1 and nz(Trend[1]) == 1 ? color.lime : Trend == -1 and nz(Trend[1]) == -1 ? color.red : na
plot(Trailingsl, color = linecolor , linewidth = 2, title = "PP SuperTrend")
bsignalSSPP = close > Trailingsl
ssignalSSPP = close < Trailingsl
///////
// ADX
//////
lenADX = 14
th = 25
TrueRange = max(max(high-low, abs(high-nz(close[1]))), abs(low-nz(close[1])))
DirectionalMovementPlus = high-nz(high[1]) > nz(low[1])-low ? max(high-nz(high[1]), 0): 0
DirectionalMovementMinus = nz(low[1])-low > high-nz(high[1]) ? max(nz(low[1])-low, 0): 0
SmoothedTrueRange = 0.0
SmoothedTrueRange := nz(SmoothedTrueRange[1]) - (nz(SmoothedTrueRange[1])/lenADX) + TrueRange
SmoothedDirectionalMovementPlus = 0.0
SmoothedDirectionalMovementPlus := nz(SmoothedDirectionalMovementPlus[1]) - (nz(SmoothedDirectionalMovementPlus[1])/lenADX) + DirectionalMovementPlus
SmoothedDirectionalMovementMinus = 0.0
SmoothedDirectionalMovementMinus := nz(SmoothedDirectionalMovementMinus[1]) - (nz(SmoothedDirectionalMovementMinus[1])/lenADX) + DirectionalMovementMinus
DIPlus = SmoothedDirectionalMovementPlus / SmoothedTrueRange * 100
DIMinus = SmoothedDirectionalMovementMinus / SmoothedTrueRange * 100
DX = abs(DIPlus-DIMinus) / (DIPlus+DIMinus)*100
ADX = sma(DX, lenADX)
//////
// MA
/////
lenMA = 21
srcMA = input(close, title="Source")
offsetMA = input(title="Offset", type=input.integer, defval=0, minval=-500, maxval=500)
outMA = sma(srcMA, lenMA)
// Buy - Sell Entries
buy = bsignalSSPP and outMA < close and ADX > th
sell = ssignalSSPP
if (buy)
// .order // Tuned version
strategy.entry("Buy", strategy.long)
if (sell) and (strategy.position_size > 0)
strategy.order("Sell", false, when = sell)