
सुपर ट्रेंड वी रणनीति एक छोटी लाइन ट्रेडिंग रणनीति है जो चलती औसत और मानक अंतर पर आधारित है। यह सुपर ट्रेंड सूचक का उपयोग करके कीमत की प्रवृत्ति की दिशा का आकलन करता है, जिसमें समर्थन और प्रतिरोध शामिल हैं जो चलती औसत बनाते हैं। साथ ही, यह मानक विचलन चैनल का उपयोग करके कीमत के संभावित समर्थन और प्रतिरोध क्षेत्रों की भविष्यवाणी करता है, स्टॉप-लॉस स्टॉप के लिए मूल्य क्षेत्र सेट करता है, प्रवृत्ति का पालन करने और कुशलता से बाहर निकलने के लिए शॉर्ट लाइन ट्रेडिंग रणनीति।
यह रणनीति सबसे पहले सुपर ट्रेंड सूचक की गणना करती है, जो एटीआर और कीमत के संबंध का उपयोग करके प्रवृत्ति की दिशा का आकलन करती है। कीमतें जब ऊपर की ओर बढ़ती हैं तो यह आशावादी होती हैं, और जब कीमतें नीचे की ओर होती हैं तो यह आशावादी होती हैं।
फिर कीमतों के लिए चलती औसत ईएमए और ओपन प्राइस के लिए चलती औसत ईएमए की गणना की जाती है, जब कीमतें ऊपर की ओर चलती औसत से अधिक होती हैं और ओपन प्राइस औसत से ऊपर होती हैं तो यह एक खरीद संकेत है, और जब कीमतें नीचे की ओर चलती औसत से अधिक होती हैं और ओपन प्राइस औसत से नीचे होती हैं तो यह एक बेचने का संकेत है।
फिर मानक विचलन का उपयोग करके मूल्य चैनल के ऊपर और नीचे के ट्रैक की गणना करें, और एक चिकनी प्रसंस्करण करें, जब कीमत मानक विचलन को पार करती है तो स्टॉप सिग्नल, जब कीमत मानक विचलन को पार करती है तो स्टॉप सिग्नल।
अंत में, प्रवृत्ति की दिशा का आकलन करने के लिए अलग-अलग समय अवधि के लिए चलती औसत का संयोजन, सुपर ट्रेंड सूचक के साथ संयोजन, एक स्थिर प्रवृत्ति का आकलन करने के लिए।
जोखिम समाधान:
सुपर ट्रेंड वी रणनीति में प्रवृत्ति, औसत रेखा, मानक विचलन चैनल और अन्य संकेतक के फायदे शामिल हैं, जिससे प्रवृत्ति की दिशा का स्थिर निर्णय लिया जा सकता है, उचित प्रवेश समय का चयन किया जा सकता है, और मूल्य क्षेत्र के स्टॉप-लॉस स्टॉप की शॉर्ट-लाइन ट्रेडिंग रणनीति स्थापित की जा सकती है। पैरामीटर अनुकूलन, संकेतक अनुकूलन, स्टॉप-लॉस स्टॉप अनुकूलन आदि के माध्यम से सुधार करने से रणनीति की स्थिरता और लाभप्रदता में सुधार किया जा सकता है। इसका ठोस तर्क और कठोर विचार सीखने और अध्ययन के लायक है।
/*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)