یہ حکمت عملی سپر ٹرینڈ اشارے کے ذریعہ لانگ لائن میں داخلے کے مواقع کی نشاندہی کرتی ہے۔ اس نے اوسطا حقیقی حد اے ٹی آر اور ضرب کو متحرک معاونت کی جگہ کا تعین کرنے کے لئے استعمال کیا ہے۔ اس حکمت عملی میں طویل پوزیشن میں داخلے پر توجہ دی گئی ہے۔
اے ٹی آر کے دورانیے اور ضرب کے حساب سے اوپر اور نیچے کا حساب لگایا گیا ہے۔ جب قیمت اوپر کی طرف بڑھتی ہے اور جب نیچے کی طرف بڑھتی ہے تو گرتی ہے۔
موجودہ رجحان کا حساب لگائیں ، 1 بولی کا اشارہ کرتا ہے ، -1 بولی کا اشارہ کرتا ہے۔ جب قیمت ٹریک سے ٹکرا جاتی ہے تو ، رجحان نیچے کی طرف مڑ جاتا ہے ، جس سے خریدنے کا اشارہ ہوتا ہے۔ جب نیچے کی طرف مڑ جاتا ہے تو ، رجحان نیچے کی طرف مڑ جاتا ہے ، جس سے فروخت کا اشارہ ہوتا ہے۔
ایک رجحان فلٹر کے طور پر چلتی اوسط کے ساتھ مل کر ، خریدنے کے لئے ایم اے سے زیادہ قیمت کی ضرورت ہوتی ہے ، اور فروخت کرنے کے لئے ایم اے سے کم قیمت کی ضرورت ہوتی ہے ، تاکہ جھوٹے بریک سے بچا جاسکے۔
اسسٹنٹ مارکنگ رجحانات ، تجارتی سگنل وغیرہ کو بصری طور پر دکھائیں ، معاون فیصلے کریں۔
اس حکمت عملی کے کچھ فوائد ہیں:
سپر ٹرینڈ اشارے کا استعمال کرتے ہوئے ، قیمتوں میں ہونے والی تبدیلیوں کو متحرک طور پر ٹریک کیا جاسکتا ہے ، جس سے رجحان کی تبدیلی کو بروقت انداز میں ظاہر کیا جاسکتا ہے۔
اے ٹی آر اسٹاپ نقصان کا طریقہ مارکیٹ میں اتار چڑھاو کے مطابق اسٹاپ نقصان کی جگہ کو ایڈجسٹ کرسکتا ہے ، جو منافع کو لاک کرنے میں مددگار ہے۔
ایم اے کو ہٹانے کے ساتھ ، جعلی بریک آؤٹ کے ساتھ مل کر ، مارکیٹ میں ہلچل کے شور کے تجارتی سگنل کو مؤثر طریقے سے فلٹر کیا جاسکتا ہے۔
بصری ڈیزائن ٹریڈنگ حکمت عملی اور مارکیٹ کی صورتحال کو ظاہر کرنے کے لئے ڈیزائن کیا گیا ہے ، اور اس کا استعمال آسان ہے۔
صرف رجحان کی تبدیلی کے ساتھ تجارت کرنا ، لمبی لائن کے لئے بہترین ہے۔
اس حکمت عملی میں مندرجہ ذیل خطرات شامل ہیں:
سپر ٹرینڈ اشارے پیرامیٹرز کے لئے حساس ہیں ، متعدد لائنوں میں اکثر ایڈجسٹ ہوتے ہیں ، اور اکثر تجارت ہوسکتی ہے۔
زلزلے کی صورت میں، سٹاپ نقصان کی لائن اکثر متحرک ہوتی ہے۔
ٹرانزیکشن کی لاگت کو مدنظر نہ رکھتے ہوئے ، چھوٹے فنڈز پر ٹرانزیکشن فیس کا زیادہ اثر پڑتا ہے۔
اسٹاپ نقصان کا تعین نہیں کیا گیا ہے، واپسی کا خطرہ زیادہ ہے۔
ٹرینڈ وے نے شاید کچھ مواقع کھوئے ہیں۔
خطرے کو کم کرنے کے لئے، مندرجہ ذیل اقدامات کریں:
اے ٹی آر پیرامیٹرز کو بہتر بنائیں اور ملٹی لائن ایڈجسٹمنٹ کی تعدد کو کم کریں۔
ہائی فریکوئینسی چھوٹی لہر سے بچنے کے لئے مساوی K لائن فلٹر شامل کریں۔
منافع کو روکنے کے لئے سٹاپ نقصان کا تعین کریں.
فلٹرنگ کے اثر کو متوازن کرنے کے لئے مناسب طور پر منتقل اوسط سائیکل کو ایڈجسٹ کریں.
فنڈ مینجمنٹ کو بہتر بنانا اور لین دین کے اخراجات کو کم کرنا۔
یہ حکمت عملی مندرجہ ذیل پہلوؤں سے بہتر بنائی جا سکتی ہے۔
قیمتوں کے مختلف ذرائع جیسے اختتامی قیمت، اعلی ترین قیمت وغیرہ کی جانچ کریں۔
دوسرے متحرک سٹاپ نقصان کے اشارے آزمائیں ، جیسے Chandelier Exit
پوزیشن مینجمنٹ ماڈیول شامل کریں ، فنڈز کے استعمال کو بہتر بنائیں۔
ریفائن انٹری ٹائمنگ فریکوئینسی انڈیکس کے ساتھ مل کر۔
اسٹاپ نقصان ، اسٹاپ اسٹاپ ماڈیولز ، خطرے کو کنٹرول کریں۔
مختلف مارکیٹوں کے لئے ایڈجسٹمنٹ پیرامیٹرز
مشین لرننگ الگورتھم کو پیرامیٹرز کی اصلاح کے لئے دریافت کریں۔
دوسرے اشارے کے ساتھ مل کر ، فلٹرنگ کی درستگی کو بہتر بنائیں۔
یہ حکمت عملی سپر ٹرینڈ کا استعمال کرتی ہے جس میں متحرک اسٹاپ نقصان کا فیصلہ کرنے والے رجحانات کو مربوط کیا جاتا ہے ، اور اس میں ایم اے کے ساتھ ٹرینڈ فلٹرنگ کی مدد سے لمبی لائن خریدنے کا وقت پہچان لیا جاتا ہے۔ آپریشن کو آسان بنانے کے لئے بصری ڈیزائن۔ پیرامیٹرز کی بہتر ترتیب اور فنکشنل توسیع کے ذریعہ ، یہ ایک مستحکم اور قابل اعتماد لمبی لائن ٹریڈنگ حکمت عملی بن سکتی ہے۔
/*backtest
start: 2020-09-13 00:00:00
end: 2023-09-19 00:00:00
period: 3d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("SuperTrend Long Strategy", overlay=true, initial_capital=50000, currency=currency.USD, default_qty_type=strategy.cash, default_qty_value=50000)
Periods = input(title="ATR Period", type=input.integer, defval=10)
src = input(hl2, title="Source")
Multiplier = input(title="ATR Multiplier", type=input.float, step=0.1, defval=3.0)
changeATR = input(title="Change ATR Calculation Method ?", type=input.bool, defval=true)
showsignals = input(title="Show Buy/Sell Signals ?", type=input.bool, defval=false)
highlighting = input(title="Highlighter On/Off ?", type=input.bool, defval=true)
barcoloring = input(title="Bar Coloring On/Off ?", type=input.bool, defval=true)
atr2 = sma(tr, Periods)
atr = changeATR ? atr(Periods) : atr2
up = src - (Multiplier * atr)
up1 = nz(up[1], up)
up := close[1] > up1 ? max(up, up1) : up
dn = src + (Multiplier * atr)
dn1 = nz(dn[1], dn)
dn := close[1] < dn1 ? min(dn, dn1) : dn
trend = 1
trend := nz(trend[1], trend)
trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend
// Moving Average as Trend Filter
periodes_ma = input(title="Moving Average Period", type=input.integer, defval=20)
src_ma = input(title="Moving Average Source", type=input.source, defval=close)
ma = sma(src_ma, periodes_ma)
upPlot = plot(trend == 1 ? up : na, title="Up Trend", style=plot.style_linebr, linewidth=2, color=color.green)
buySignal = trend == 1 and trend[1] == -1 and close > ma
plotshape(buySignal ? up : na, title="UpTrend Begins", location=location.absolute, style=shape.circle, size=size.tiny, color=color.new(color.green, 0))
plotshape(buySignal and showsignals ? up : na, title="Buy", text="Buy", location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(color.green, 0))
dnPlot = plot(trend == 1 ? na : dn, title="Down Trend", style=plot.style_linebr, linewidth=2, color=color.red)
sellSignal = trend == -1 and trend[1] == 1 and close < ma
plotshape(sellSignal ? dn : na, title="DownTrend Begins", location=location.absolute, style=shape.circle, size=size.tiny, color=color.new(color.red, 0))
plotshape(sellSignal and showsignals ? dn : na, title="Sell", text="Sell", location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.red, 0))
mPlot = plot(ohlc4, title="", style=plot.style_circles, linewidth=0)
longFillColor = highlighting ? (trend == 1 ? color.new(color.green, 70) : color.white) : color.white
shortFillColor = highlighting ? (trend == -1 ? color.new(color.red, 70) : color.white) : color.white
fill(mPlot, upPlot, title="UpTrend Highlighter", color=longFillColor)
fill(mPlot, dnPlot, title="DownTrend Highlighter", color=shortFillColor)
FromMonth = input(defval = 9, title = "From Month", minval = 1, maxval = 12)
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear = input(defval = 2018, title = "From Year", minval = 999)
ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear = input(defval = 9999, title = "To Year", minval = 999)
start = timestamp(FromYear, FromMonth, FromDay, 00, 00)
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)
window() => time >= start and time <= finish ? true : false
longCondition = buySignal
if (longCondition)
strategy.entry("BUY", strategy.long, when = window())
shortCondition = sellSignal
if (shortCondition)
strategy.close("BUY")
strategy.entry("SELL", strategy.short, when = window())
buy1 = barssince(buySignal)
sell1 = barssince(sellSignal)
color1 = buy1[1] < sell1[1] ? color.green : buy1[1] > sell1[1] ? color.red : na
barcolor(barcoloring ? color1 : na)