
সুপার ট্রেন্ড ভি কৌশলটি একটি সংক্ষিপ্ত ট্রেডিং কৌশল যা চলমান গড় এবং স্ট্যান্ডার্ড ডিফারেনশিয়ালের উপর ভিত্তি করে। এটি চলমান গড়ের সাথে সংযুক্ত সমর্থন এবং প্রতিরোধের সাথে দামের প্রবণতার দিকনির্দেশনা নির্ধারণের জন্য সুপার ট্রেন্ড সূচকটি ব্যবহার করে। একই সাথে, এটি স্ট্যান্ডার্ড ডিফারেনশিয়াল চ্যানেল ব্যবহার করে দামের সম্ভাব্য সমর্থন এবং প্রতিরোধের অঞ্চলগুলির পূর্বাভাস দেওয়ার জন্য, স্টপ লস স্টপ দামের অঞ্চলগুলি সেট করে, প্রবণতা অনুসরণ এবং দক্ষতার সাথে প্রস্থান করার জন্য সংক্ষিপ্ত ট্রেডিং কৌশল।
এই কৌশলটি প্রথমে সুপার ট্রেন্ড সূচকটি গণনা করে, যা ট্রেন্ডের দিকনির্দেশনা করার জন্য এটিআর এবং দামের সম্পর্কের ব্যবহার করে। দামগুলি যখন উত্থানের প্রবণতার উপরে থাকে তখন এটি মুদ্রাস্ফীতি হয় এবং দামগুলি যখন পতনের প্রবণতার নীচে থাকে তখন এটি মুদ্রাস্ফীতি।
এরপরে দামের চলমান গড় ইএমএ এবং ওপেনিং দামের চলমান গড় ইএমএ গণনা করা হয়, যখন দাম চলমান গড়ের উপরে এবং ওপেনিং গড়ের উপরে থাকে তখন এটি কেনার সংকেত দেয় এবং যখন দাম চলমান গড়ের নীচে এবং ওপেনিং গড়ের নীচে থাকে তখন এটি বিক্রি করার সংকেত দেয়।
তারপরে, স্ট্যান্ডার্ড বিভাজক ব্যবহার করে মূল্যের চ্যানেলের উত্থান-পতন গণনা করুন এবং এটি মসৃণভাবে পরিচালনা করুন, দামটি স্ট্যান্ডার্ড বিভাজক অতিক্রম করলে স্টপ সিগন্যালটি বন্ধ হয়ে যায় এবং দামটি স্ট্যান্ডার্ড বিভাজক অতিক্রম করলে স্টপ সিগন্যালটি বন্ধ হয়ে যায়।
পরিশেষে, সুপার ট্রেন্ড সূচকের সাথে মিলিত বিভিন্ন সময়কালের মুভিং এভারেজগুলি ট্রেন্ডের দিকনির্দেশের জন্য ব্যবহৃত হয়, যা স্থিতিশীল ট্রেন্ডের বিচার করে।
ঝুঁকি মোকাবিলার উপায়ঃ
সুপারট্রেন্ড ভি কৌশলটি প্রবণতা, গড় লাইন এবং স্ট্যান্ডার্ড ডিফারেনশিয়াল চ্যানেলের মতো সূচকগুলির সুবিধাগুলিকে একীভূত করে, প্রবণতার দিকনির্দেশের স্থিতিশীল বিচার করে, উপযুক্ত প্রবেশের সময়টি চয়ন করে এবং দামের অঞ্চলে স্টপ-ড্রপ স্টপিংয়ের সংক্ষিপ্ত ট্রেডিং কৌশল সেট করে। প্যারামিটার অপ্টিমাইজেশন, সূচক অপ্টিমাইজেশন, স্টপ-ড্রপ অপ্টিমাইজেশনের মাধ্যমে উন্নতি করা, কৌশল স্থিতিশীলতা এবং লাভজনকতা বাড়িয়ে তুলতে পারে। এর দৃ logical় যুক্তি এবং কঠোর চিন্তাভাবনা শেখার এবং অধ্যয়নের জন্য উপযুক্ত।
/*backtest
start: 2022-10-11 00:00:00
end: 2023-10-17 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// © theCrypster 2020
//@version=4
strategy(title = "Super trend V Strategy version", overlay = true, pyramiding=1,initial_capital = 1000, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills=false, slippage=0,commission_type=strategy.commission.percent,commission_value=0.075)
strat_dir_input = input(title="Strategy Direction", defval="long", options=["long", "short", "all"])
strat_dir_value = strat_dir_input == "long" ? strategy.direction.long : strat_dir_input == "short" ? strategy.direction.short : strategy.direction.all
strategy.risk.allow_entry_in(strat_dir_value)
hilow = ((high - low)*100)
openclose = ((close - open)*100)
vol = (volume / hilow)
spreadvol = (openclose * vol)
VPT = spreadvol + cum(spreadvol)
window_len = 28
v_len = 14
price_spread = stdev(high-low, window_len)
v = spreadvol + cum(spreadvol)
smooth = sma(v, v_len)
v_spread = stdev(v - smooth, window_len)
shadow = (v - smooth) / v_spread * price_spread
out = shadow > 0 ? high + shadow : low + shadow
//
src = out
src1=open
src2=low
src3=high
tf =input(720)
len = timeframe.isintraday and timeframe.multiplier >= 1 ?
tf / timeframe.multiplier * 7 :
timeframe.isintraday and timeframe.multiplier < 60 ?
60 / timeframe.multiplier * 24 * 7 : 7
c = ema(src, len)
plot(c,color=color.red)
o = ema(src1,len)
plot(o,color=color.blue)
//h = ema(src3,len)
//l=ema(src2,len)
//
col=c > o? color.lime : color.orange
vis = true
vl = c
ll = o
m1 = plot(vl, color=col, linewidth=1, transp=60)
m2 = plot(vis ? ll : na, color=col, linewidth=2, transp=80)
fill(m1, m2, color=col, transp=70)
//
vpt=ema(out,len)
// INPUTS //
st_mult = input(1, title = 'SuperTrend Multiplier', minval = 0, maxval = 100, step = 0.01)
st_period = input(10, title = 'SuperTrend Period', minval = 1)
// CALCULATIONS //
up_lev = vpt - (st_mult * atr(st_period))
dn_lev = vpt + (st_mult * atr(st_period))
up_trend = 0.0
up_trend := close[1] > up_trend[1] ? max(up_lev, up_trend[1]) : up_lev
down_trend = 0.0
down_trend := close[1] < down_trend[1] ? min(dn_lev, down_trend[1]) : dn_lev
// Calculate trend var
trend = 0
trend := close > down_trend[1] ? 1: close < up_trend[1] ? -1 : nz(trend[1], 1)
// Calculate SuperTrend Line
st_line = trend ==1 ? up_trend : down_trend
// Plotting
plot(st_line[1], color = trend == 1 ? color.green : color.red , style = plot.style_cross, linewidth = 2, title = "SuperTrend")
buy=crossover( close, st_line) and close>o
sell=crossunder(close, st_line) and close<o
//plotshape(crossover( close, st_line), location = location.belowbar, color = color.green,size=size.tiny)
//plotshape(crossunder(close, st_line), location = location.abovebar, color = color.red,size=size.tiny)
plotshape(buy, title="buy", text="Buy", color=color.green, style=shape.labelup, location=location.belowbar, size=size.small, textcolor=color.white, transp=0) //plot for buy icon
plotshape(sell, title="sell", text="Sell", color=color.red, style=shape.labeldown, location=location.abovebar, size=size.small, textcolor=color.white, transp=0) //plot for sell icon
//
multiplier = input(title="TP VWAP Deviation", type=input.float, defval=2, minval=1)
src5 = vwap
len5 = input(title="TP length", defval=150, minval=1)
offset = 0
calcSlope(src5, len5) =>
sumX = 0.0
sumY = 0.0
sumXSqr = 0.0
sumXY = 0.0
for i = 1 to len5
val = src5[len5-i]
per = i + 1.0
sumX := sumX + per
sumY := sumY + val
sumXSqr := sumXSqr + per * per
sumXY := sumXY + val * per
slope = (len5 * sumXY - sumX * sumY) / (len5 * sumXSqr - sumX * sumX)
average = sumY / len5
intercept = average - slope * sumX / len5 + slope
[slope, average, intercept]
var float tmp = na
[s, a, i] = calcSlope(src5, len5)
vwap1=(i + s * (len5 - offset))
sdev = stdev(vwap, len5)
dev = multiplier * sdev
top=vwap1+dev
bott=vwap1-dev
//
z1 = vwap1 + dev
x1 = vwap1 - dev
low1 = crossover(close, x1)
high1 = crossunder(close, z1)
plotshape(low1, title="low", text="TP", color=color.red, style=shape.labelup, location=location.belowbar, size=size.small, textcolor=color.white, transp=0) //plot for buy icon
plotshape(high1, title="high", text="TP", color=color.green, style=shape.labeldown, location=location.abovebar, size=size.small, textcolor=color.white, transp=0) //plot for sell icon
//
// Testing Start dates
testStartYear = input(2016, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
//Stop date if you want to use a specific range of dates
testStopYear = input(2030, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)
testPeriod() =>
time >= testPeriodStart and time <= testPeriodStop ? true : false
l = buy
s1 = sell
if l and testPeriod()
strategy.entry("buy", strategy.long)
if s1 and testPeriod()
strategy.entry("sell", strategy.short)