یہ سپر ٹرینڈ اشارے اور اے ٹی آر اشارے پر مبنی حکمت عملی ہے۔ اس حکمت عملی کا بنیادی خیال یہ ہے کہ سپر ٹرینڈ اشارے کا استعمال موجودہ مارکیٹ کے رجحان کی سمت کا تعین کرنے اور جب سپر ٹرینڈ اشارے میں تبدیلی آتی ہے تو تجارت کرنا ہے۔ ایک ہی وقت میں ، یہ حکمت عملی اسٹاپ نقصان اور منافع کی قیمتوں کا حساب لگانے کے لئے اے ٹی آر اشارے کا استعمال کرتی ہے ، اور خطرے کو کنٹرول کرنے کے لئے اکاؤنٹ کے بیلنس کے ایک خاص فیصد کی بنیاد پر پوزیشن سائز کا حساب لگاتی ہے۔
اس حکمت عملی کے اصول مندرجہ ذیل ہیں:
اس حکمت عملی کے فوائد مندرجہ ذیل ہیں:
اس حکمت عملی کے خطرات مندرجہ ذیل ہیں:
مذکورہ بالا خطرات سے نمٹنے کے لیے مندرجہ ذیل اقدامات کئے جا سکتے ہیں:
اس حکمت عملی کو مندرجہ ذیل شعبوں میں بہتر بنایا جاسکتا ہے:
مذکورہ بالا اصلاحات حکمت عملی کی منافع بخش اور استحکام کو بہتر بناسکتی ہیں جبکہ اس کے خطرے کو کم کرتی ہیں ، جس سے یہ مختلف مارکیٹ کے ماحول میں زیادہ موافقت پذیر ہوجاتی ہے۔
یہ حکمت عملی خطرے کو کنٹرول کرتے ہوئے مؤثر طریقے سے رجحانات کو حاصل کرنے کے لئے سپر ٹرینڈ اشارے اور اے ٹی آر اشارے کو جوڑتی ہے۔ زیادہ سے زیادہ پوزیشن سائز کا حساب لگاتے ہوئے ، ہر تجارت کا خطرہ قابو میں ہے۔ تاہم ، یہ حکمت عملی ایک غیر مستحکم مارکیٹ میں اعلی لین دین کے اخراجات اور ڈراؤونگ پیدا کرسکتی ہے۔ زیادہ تکنیکی اشارے متعارف کرانے ، پیرامیٹرز کو بہتر بنانے ، رسک کنٹرول عوامل شامل کرنے اور منافع لینے کی حکمت عملیوں کو بہتر بنانے سے ، اس حکمت عملی کی کارکردگی کو مزید بہتر بنایا جاسکتا ہے۔ مجموعی طور پر ، یہ حکمت عملی ایک آسان اور موثر رجحان کی پیروی کرنے والی حکمت عملی ہے جو رجحان سازی کی مارکیٹوں میں استعمال کے لئے موزوں ہے۔
/*backtest start: 2024-02-01 00:00:00 end: 2024-02-29 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © tradez99 //@version=5 strategy('Supertrend', overlay=true, format=format.price, precision=2) Periods = input(title='ATR Period', defval=10) src = input(hl2, title='Source') Multiplier = input.float(title='ATR Multiplier', step=0.1, defval=3.0) changeATR = input(title='Change ATR Calculation Method ?', defval=true) showsignals = input(title='Show Buy/Sell Signals ?', defval=true) highlighting = input(title='Highlighter On/Off ?', defval=true) atr2 = ta.sma(ta.tr, Periods) atr = changeATR ? ta.atr(Periods) : atr2 up = src - Multiplier * atr up1 = nz(up[1], up) up := close[1] > up1 ? math.max(up, up1) : up dn = src + Multiplier * atr dn1 = nz(dn[1], dn) dn := close[1] < dn1 ? math.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 upPlot = plot(trend == 1 ? up : na, title='Up Trend', style=plot.style_linebr, linewidth=2, color=color.new(color.green, 0)) buySignal = trend == 1 and trend[1] == -1 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), textcolor=color.new(color.white, 0)) dnPlot = plot(trend == 1 ? na : dn, title='Down Trend', style=plot.style_linebr, linewidth=2, color=color.new(color.red, 0)) sellSignal = trend == -1 and trend[1] == 1 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), textcolor=color.new(color.white, 0)) mPlot = plot(ohlc4, title='', style=plot.style_circles, linewidth=0) longFillColor = highlighting ? trend == 1 ? color.green : color.white : color.white shortFillColor = highlighting ? trend == -1 ? color.red : color.white : color.white //fill(mPlot, upPlot, title='UpTrend Highligter', color=longFillColor) //fill(mPlot, dnPlot, title='DownTrend Highligter', color=shortFillColor) multiplier = input.float(title="ATR multiplier", defval = 1.5) rr = input.float(title="Risk:Reward", defval=1.0) riskPerTrade = input.float(title="Risk Per Trade %", defval=1.0) atr3 = ta.atr(14) //calculate stops and targets longstop = close - (atr3 * multiplier) shortstop = close + (atr3 * multiplier) longStopDistance = close - longstop shortStopDistance = shortstop - close longTarget = close + (longStopDistance * rr) shortTarget = close - (shortStopDistance * rr) // Save stops & targets var t_stop = 0.0 var t_target = 0.0 longCondition = buySignal if (longCondition) t_stop := longstop t_target := longTarget positionSize = math.floor((strategy.equity * (riskPerTrade/100)) / (close - t_stop)) strategy.entry("Long", strategy.long, qty = positionSize) shortCondition = sellSignal if (shortCondition) t_stop := shortstop t_target := shortTarget positionSize = math.floor((strategy.equity * (riskPerTrade/100)) / (t_stop - close)) strategy.entry("Short", strategy.short, qty = positionSize) strategy.exit(id="Long Exit", from_entry="Long", limit=t_target, stop=t_stop) strategy.exit(id="Short Exit", from_entry="Short", limit=t_target, stop=t_stop)