
এই কৌশলটি সহজ চলমান গড় (এসএমএ), সমর্থনকারী প্রতিরোধের স্তর এবং লেনদেনের পরিমাণ বাড়ানোর তিনটি প্রযুক্তিগত সূচককে একত্রিত করে, একটি বিস্তৃত লেনদেনের কৌশল তৈরি করে। কৌশলটির মূল ধারণাটি হল যে দামগুলি এসএমএ গড়কে ছাড়িয়ে যায়, প্রতিরোধের স্তরকে সমর্থন করে এবং লেনদেনের পরিমাণ বাড়ানোর সাথে সাথে লেনদেন করা হয়, যখন ঝুঁকি নিয়ন্ত্রণের জন্য স্টপ লস শর্তগুলি সেট করা হয়।
এই কৌশলটি এসএমএ গড় লাইন, সমর্থনকারী প্রতিরোধের স্তর এবং লেনদেনের পরিমাণের সূচকগুলির সাথে একত্রিত করে একটি বিস্তৃত লেনদেনের কৌশল তৈরি করে। কৌশলটির সুবিধা হ’ল ট্রেন্ডিং সুযোগগুলি ক্যাপচার করা এবং লেনদেনের ঝুঁকি নিয়ন্ত্রণ করা। তবে, কৌশলটির কিছু সীমাবদ্ধতা রয়েছে, যেমন বাজারের চরম পরিস্থিতির সাথে অভিযোজনযোগ্যতা উন্নত করা। ভবিষ্যতে অন্যান্য প্রযুক্তিগত সূচকগুলি প্রবর্তন, সমর্থনকারী প্রতিরোধের স্তর গণনা করার পদ্ধতিটি অনুকূলিতকরণ, লেনদেনের ভলিউম সূচকগুলি মসৃণকরণ এবং স্টপ লস শর্তাদি অনুকূলিতকরণের মাধ্যমে কৌশলটির স্থায়িত্ব এবং লাভজনকতা বাড়ানোর জন্য কৌশলটি উন্নত করা যেতে পারে।
/*backtest
start: 2023-06-08 00:00:00
end: 2024-06-13 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Advanced Entry Conditions with Support/Resistance, SMA, and Volume", overlay=true)
// Inputs
length = input(20, title="SMA Length")
stopLossPerc = input(1, title="Stop Loss Percentage", type=input.float) / 100
leftBars = input(15, title="Left Bars")
rightBars = input(15, title="Right Bars")
distanceThresh = input(1, title="Distance Threshold from Support/Resistance", type=input.float) / 100
// Calculations
smaValue = sma(close, length)
highUsePivot = fixnan(pivothigh(leftBars, rightBars)[1])
lowUsePivot = fixnan(pivotlow(leftBars, rightBars)[1])
// Volume Calculation
volumeIncrease = volume > volume[1]
// Entry Conditions
longEntryCondition = close[0] > close[1] and close[1] > smaValue and close[0] > smaValue and close[0] > lowUsePivot and close[1] > lowUsePivot and abs(close[0] - highUsePivot) > distanceThresh and volumeIncrease
shortEntryCondition = close[0] < close[1] and close[1] < smaValue and close[0] < smaValue and close[0] < lowUsePivot and close[1] < lowUsePivot and abs(close[0] - highUsePivot) > distanceThresh and volumeIncrease
// Calculate stop loss levels
longStopLoss = close * (1 - stopLossPerc)
shortStopLoss = close * (1 + stopLossPerc)
// Strategy Logic
strategy.entry("Long", strategy.long, when=longEntryCondition)
strategy.exit("Exit Long", "Long", stop=longStopLoss)
strategy.entry("Short", strategy.short, when=shortEntryCondition)
strategy.exit("Exit Short", "Short", stop=shortStopLoss)
// Plotting
plot(smaValue, color=color.blue, title="SMA")
plot(highUsePivot, color=color.red, linewidth=2, title="Resistance")
plot(lowUsePivot, color=color.green, linewidth=2, title="Support")
plotshape(series=longEntryCondition, location=location.belowbar, color=color.green, style=shape.labelup, title="Long Entry")
plotshape(series=shortEntryCondition, location=location.abovebar, color=color.red, style=shape.labeldown, title="Short Entry")
// Background Color
bgcolor(longEntryCondition ? color.new(color.green, 90) : shortEntryCondition ? color.new(color.red, 90) : na)