
এটি একটি সমন্বিত ট্রেডিং কৌশল যা সুপারট্রেন্ড এবং স্টোক্যাস্টিক দোলককে একত্রিত করে। এই কৌশলটি সুপারট্রেন্ড নির্দেশককে বাজার প্রবণতার দিকনির্দেশের জন্য ব্যবহার করে এবং দামের গতিশীলতা নিশ্চিত করার জন্য এলোমেলো দোলক ব্যবহার করে যাতে আরও সঠিক ট্রেডিং সিগন্যাল তৈরি করা যায়। এই কৌশলটি এটিআর (আসল তরঙ্গের গড়) ব্যবহার করে, এটি গতিশীলতার রেফারেন্স হিসাবে, গতিশীলভাবে সমর্থন / প্রতিরোধের অবস্থানগুলি সামঞ্জস্য করে।
কৌশলটির মূল যুক্তি নিম্নলিখিত কয়েকটি মূল উপাদানগুলির উপর ভিত্তি করে তৈরি করা হয়েছেঃ
এই কৌশলটি সুপারট্রেন্ড এবং এলোমেলো অস্থিরতার সূচকগুলির সাথে মিলিত হয়ে প্রবণতা ট্র্যাকিং এবং গতিশীলতা নিশ্চিতকরণের একটি জৈবিক সমন্বয় অর্জন করে। কৌশলটি যুক্তিসঙ্গতভাবে ডিজাইন করা হয়েছে, ভাল সামঞ্জস্যযোগ্যতা এবং অভিযোজনযোগ্যতা রয়েছে। সুপারিশ করা দিকনির্দেশের অপ্টিমাইজেশনের মাধ্যমে কৌশলটির স্থায়িত্ব এবং লাভজনকতা আরও বাড়ার সম্ভাবনা রয়েছে। রিয়েল-টাইম ট্রেডিংয়ে, ট্রেডারদের সুপারিশ করা হয় যে তারা নির্দিষ্ট বাজারের বৈশিষ্ট্য এবং তাদের নিজস্ব ঝুঁকি পছন্দ অনুসারে প্যারামিটারগুলিতে লক্ষ্যবস্তুভাবে সামঞ্জস্য করতে পারে।
/*backtest
start: 2024-02-21 00:00:00
end: 2025-02-18 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"DOGE_USDT"}]
*/
//@version=5
strategy("SuperTrend + Stochastic Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// === Vstupy ===
// SuperTrend
atrPeriod = input.int(10, title="ATR Period", minval=1)
multiplier = input.float(3.0, title="SuperTrend Multiplier", step=0.1)
// Stochastic Oscillator
kPeriod = input.int(14, title="%K Period", minval=1)
dPeriod = input.int(3, title="%D Period", minval=1)
smoothK = input.int(3, title="Smooth %K", minval=1)
// === Výpočty Indikátorov ===
// Výpočet ATR
atr = ta.atr(atrPeriod)
// Výpočet SuperTrend
upperBasic = (ta.highest(high, 1) + ta.lowest(low, 1)) / 2 + (multiplier * atr)
lowerBasic = (ta.highest(high, 1) + ta.lowest(low, 1)) / 2 - (multiplier * atr)
var float upperBand = na
var float lowerBand = na
var bool isBullish = true
if (na(upperBand[1]))
upperBand := upperBasic
lowerBand := lowerBasic
else
upperBand := close[1] > upperBand[1] ? math.max(upperBasic, upperBand[1]) : upperBasic
lowerBand := close[1] < lowerBand[1] ? math.min(lowerBasic, lowerBand[1]) : lowerBasic
isBullish := close > upperBand[1] ? true : close < lowerBand[1] ? false : isBullish[1]
// Výpočet Stochastic Oscillator
stochK = ta.sma(ta.stoch(high, low, close, kPeriod), smoothK)
stochD = ta.sma(stochK, dPeriod)
// === Podmienky Pre Vstupy ===
// Nákupný signál
longCondition = isBullish and ta.crossover(stochK, stochD) and stochK < 20
// Predajný signál
shortCondition = not isBullish and ta.crossunder(stochK, stochD) and stochK > 80
// === Vstupné Signály ===
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
// === Výstupné Podmienky ===
// Môžete pridať vlastné podmienky pre uzatvorenie pozícií alebo použitie stop-loss/take-profit
// === Vykreslenie Indikátorov na Grafe ===
// Vykreslenie SuperTrend
plot(isBullish ? upperBand : na, color=color.green, title="SuperTrend Up", linewidth=2)
plot(not isBullish ? lowerBand : na, color=color.red, title="SuperTrend Down", linewidth=2)
fill(plot(isBullish ? upperBand : na, color=color.green), plot(not isBullish ? lowerBand : na, color=color.red), color=isBullish ? color.new(color.green, 90) : color.new(color.red, 90), title="SuperTrend Fill")
// Vykreslenie Stochastic Oscillator na samostatnom okne
hline(80, "Overbought", color=color.red, linestyle=hline.style_dotted)
hline(20, "Oversold", color=color.green, linestyle=hline.style_dotted)
plot(stochK, color=color.blue, title="%K")
plot(stochD, color=color.orange, title="%D")
// Vizualizácia Signálov
plotshape(series=longCondition, title="Long Entry", location=location.belowbar, color=color.green, style=shape.labelup, text="Long")
plotshape(series=shortCondition, title="Short Entry", location=location.abovebar, color=color.red, style=shape.labeldown, text="Short")