سپر ٹرینڈ V حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-10-18 12:35:53
ٹیگز:

img

جائزہ

سپر ٹرینڈ وی حکمت عملی ایک قلیل مدتی تجارتی حکمت عملی ہے جو چلتی اوسط اور معیاری انحراف پر مبنی ہے۔ یہ قیمت کی رجحان کی سمت کا تعین کرنے کے لئے سپر ٹرینڈ اشارے کا استعمال کرتی ہے اور مارکیٹ میں داخل ہونے کے لئے چلتی اوسط کی طرف سے تشکیل کردہ معاونت اور مزاحمت کو جوڑتی ہے۔ دریں اثنا ، یہ قیمت کے ممکنہ معاونت اور مزاحمت کے علاقوں کی پیش گوئی کرنے کے لئے معیاری انحراف چینل کا استعمال کرتی ہے اور رجحان کی پیروی کرنے اور موثر طریقے سے باہر نکلنے والی قلیل مدتی تجارتی حکمت عملی کو نافذ کرنے کے لئے اسٹاپ نقصان اور منافع کی قیمت کی حد طے کرتی ہے۔

حکمت عملی منطق

سب سے پہلے ، یہ حکمت عملی سپر ٹرینڈ اشارے کا حساب لگاتی ہے۔ سپر ٹرینڈ اشارے میں رجحان کی سمت کا تعین کرنے کے لئے اے ٹی آر اور قیمت کے مابین تعلق کا استعمال ہوتا ہے۔ جب قیمت بڑھتی ہوئی رجحان سے اوپر ہوتی ہے تو ، یہ تیزی سے ہوتی ہے۔ جب قیمت گرتی ہوئی رجحان سے نیچے ہوتی ہے تو ، یہ bearish ہوتی ہے۔

اس کے بعد یہ قیمت کے ای ایم اے اور کھلی قیمت کے ای ایم اے کا حساب لگاتا ہے۔ جب قیمت ای ایم اے سے اوپر ہوتی ہے اور کھلی قیمت ای ایم اے سے زیادہ ہوتی ہے تو ، یہ خرید کا اشارہ ہے۔ جب قیمت ای ایم اے سے نیچے ہوتی ہے اور کھلی قیمت ای ایم اے سے کم ہوتی ہے تو ، یہ فروخت کا اشارہ ہے۔

اس کے بعد ، یہ قیمت چینل کے اوپری اور نچلے بینڈ کا حساب لگانے کے لئے معیاری انحراف کا استعمال کرتا ہے اور ہموار پروسیسنگ کرتا ہے۔ جب قیمت معیاری انحراف کے اوپری بینڈ کو توڑتی ہے تو ، یہ اسٹاپ نقصان کا اشارہ ہے۔ جب قیمت معیاری انحراف کے نچلے بینڈ کو توڑتی ہے تو ، یہ منافع لینے کا اشارہ ہے۔

آخر میں، یہ مختلف ٹائم فریموں کے چلتے ہوئے اوسط کو ایک مستحکم رجحان کا فیصلہ کرنے کے لئے سپر رجحان اشارے کے ساتھ مل کر رجحان کی سمت کا تعین کرنے کے لئے یکجا کرتا ہے.

حکمت عملی کے فوائد

  • قیمتوں کے رجحان کی سمت کا تعین کرنے کے لئے سپر رجحان اشارے کا استعمال کریں، رجحان کی تبدیلی کی وجہ سے نقصانات سے بچنے کے
  • کھلی قیمت کے ساتھ مل کر چلنے والی اوسط قیمتوں سے اندراج کے وقت کا تعین کرنے میں مدد ملتی ہے ، غلط خرابیوں سے بچنے میں مدد ملتی ہے
  • معیاری انحراف چینل سٹاپ نقصان اور منافع لینے کے لئے قیمت کے ممکنہ حمایت اور مزاحمت زون کی پیش گوئی کرتا ہے
  • متعدد ٹائم فریم کا امتزاج رجحان کی تشخیص کے استحکام کو بہتر بناتا ہے

اسٹریٹجی کے خطرات

  • سپر رجحان اشارے میں تاخیر کا اثر ہے، رجحان تبدیلی کے پوائنٹس کو یاد کر سکتے ہیں
  • چلتی اوسط کے کراس اوورز میں تاخیر کا اثر ہوتا ہے ، اندراج کا وقت درست نہیں ہوسکتا ہے
  • سٹینڈرڈ ڈیویژن چینل کی حد بہت زیادہ مقررہ ہے تاکہ ریئل ٹائم میں مارکیٹ کے اتار چڑھاو کو ظاہر کیا جاسکے
  • ایک سے زیادہ وقت کے فریم پر مبنی فیصلے ایک دوسرے سے متصادم ہوسکتے ہیں

خطرے کا انتظام:

  • حساسیت کو بہتر بنانے کے لئے مناسب طریقے سے سپر رجحان پیرامیٹرز کو مختصر کریں
  • موونگ اوسط ادوار کو بہتر بنائیں، یا اندراج کا تعین کرنے کے لئے دیگر اشارے شامل کریں
  • معیاری انحراف چینل کو متحرک طور پر مارکیٹ سے ملنے کے لئے ایڈجسٹ کریں
  • تنازعات سے نمٹنے کے لئے کثیر ٹائم فریم فیصلوں کے لئے واضح منطق کی وضاحت کریں

اصلاح کی ہدایات

  • بہترین مجموعہ تلاش کرنے کے لئے سپر رجحان پیرامیٹرز کو بہتر بنائیں
  • داخلہ کا تعین کرنے کے لئے چلتی اوسط کے ساتھ مل کر دوسرے اشارے آزمائیں
  • معیاری انحراف چینل کی متحرک ایڈجسٹمنٹ کی کوشش کریں
  • بہترین میچ تلاش کرنے کے لئے مختلف ملٹی ٹائم فریم مجموعے کی جانچ کریں
  • منافع کی جگہ کو بہتر بنانے کے لئے سٹاپ نقصان کو بہتر بنائیں اور منافع کی حکمت عملی لیں

نتیجہ

سپر ٹرینڈ وی حکمت عملی میں رجحان ، چلتی اوسط ، معیاری انحراف چینل اور دیگر اشارے کے فوائد کو مستحکم رجحان فیصلے ، مناسب انٹری ٹائمنگ ، اور قیمت کے علاقوں کی بنیاد پر نقصان کو روکنے اور منافع حاصل کرنے کے ل. ضم کیا گیا ہے۔ پیرامیٹرز ، اشارے ، نقصان کو روکنے اور منافع حاصل کرنے وغیرہ کو بہتر بنانے سے ، یہ حکمت عملی کے استحکام اور منافع میں بہتری لاسکتی ہے۔ اس کی ٹھوس منطق اور سخت سوچ سیکھنے اور تحقیق کے قابل ہے۔


/*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)



مزید