
اس حکمت عملی میں VWAP (ٹرانزیکشن ویٹڈ اوسط قیمت) اور سپر ٹرینڈ اشارے کا امتزاج کیا گیا ہے۔ قیمتوں کا VWAP کے ساتھ موازنہ کرکے اور سپر ٹرینڈ اشارے کی سمت کے ذریعہ خرید و فروخت کے سگنل کا تعین کیا گیا ہے۔ جب قیمت اوپر سے VWAP کو عبور کرتی ہے اور سپر ٹرینڈ مثبت ہوتا ہے تو ، خریدنے کا سگنل پیدا ہوتا ہے۔ جب قیمت نیچے سے VWAP کو عبور کرتی ہے اور سپر ٹرینڈ منفی ہوتا ہے تو ، فروخت کا سگنل پیدا ہوتا ہے۔ یہ حکمت عملی پچھلے سگنل کی حیثیت کو ریکارڈ کرکے بھی پیدا کرتی ہے تاکہ اس کے برعکس سگنل آنے تک دوبارہ سگنل سے بچایا جاسکے۔
وی ڈبلیو اے پی اور سپر ٹرینڈ خرید و فروخت کی حکمت عملی دو مختلف اقسام کے اشارے کو ملا کر مارکیٹ کے رجحانات اور ممکنہ موڑ کے مقامات کو مکمل طور پر گرفت میں لینے کی کوشش کرتی ہے۔ حکمت عملی کی منطق واضح ہے ، اسے نافذ کرنے اور بہتر بنانے میں آسان ہے۔ تاہم ، اس حکمت عملی کی کارکردگی پیرامیٹرز کے انتخاب پر منحصر ہے اور اس میں خطرے کے انتظام کے اقدامات کی کمی ہے۔
/*backtest
start: 2023-05-28 00:00:00
end: 2024-06-02 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy(title="VWAP and Super Trend Buy/Sell Strategy", shorttitle="VWAPST", overlay=true)
//===== VWAP =====
showVWAP = input.bool(title="Show VWAP", defval=true, group="VWAP")
VWAPSource = input.source(title="VWAP Source", defval=hl2, group="VWAP")
VWAPrice = ta.vwap(VWAPSource)
plot(showVWAP ? VWAPrice : na, color=color.teal, title="VWAP", linewidth=2)
//===== Super Trend =====
showST = input.bool(true, "Show SuperTrend Indicator", group="Super Trend")
Period = input.int(title="ATR Period", defval=10, group="Super Trend")
Multiplier = input.float(title="ATR Multiplier", defval=2.0, group="Super Trend")
// Super Trend ATR
Up = hl2 - (Multiplier * ta.atr(Period))
Dn = hl2 + (Multiplier * ta.atr(Period))
var float TUp = na
var float TDown = na
TUp := na(TUp[1]) ? Up : close[1] > TUp[1] ? math.max(Up, TUp[1]) : Up
TDown := na(TDown[1]) ? Dn : close[1] < TDown[1] ? math.min(Dn, TDown[1]) : Dn
var int Trend = na
Trend := na(Trend[1]) ? 1 : close > TDown[1] ? 1 : close < TUp[1] ? -1 : Trend[1]
Tsl = Trend == 1 ? TUp : TDown
linecolor = Trend == 1 ? color.green : color.red
plot(showST ? Tsl : na, color=linecolor, style=plot.style_line, linewidth=2, title="SuperTrend")
// Buy/Sell Conditions
var bool previousBuysignal = false
var bool previousSellsignal = false
buysignal = not previousBuysignal and Trend == 1 and close > VWAPrice
sellsignal = not previousSellsignal and Trend == -1 and close < VWAPrice
// Ensure the signals are not repetitive
if (buysignal)
previousBuysignal := true
previousSellsignal := false
else if (sellsignal)
previousBuysignal := false
previousSellsignal := true
// Execute buy and sell orders
if (buysignal)
strategy.entry("Buy", strategy.long)
if (sellsignal)
strategy.entry("Sell", strategy.short)
// Plot Buy/Sell Labels
//plotshape(buysignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY", textcolor=color.white, size=size.normal)
//plotshape(sellsignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL", textcolor=color.white, size=size.normal)