یہ حکمت عملی رجحان کی پیروی کرنے کے لئے چلتی اوسط اور سپر ٹرینڈ اشارے کو جوڑتی ہے۔ جب رجحان اوپر ہے تو یہ لمبا جاتا ہے اور جب رجحان نیچے ہوتا ہے تو مختصر ہوجاتا ہے۔
وزن شدہ حرکت پذیر اوسط ایم اے کا حساب لگائیں۔ ایک مدت کے دوران وزن شدہ اوسط قیمت کا حساب لگانے کے لئے وزن کے طور پر حجم کا استعمال کریں۔
ایم اے کی بنیاد پر ہل چلتی اوسط کا حساب لگائیں۔ ہل چلتی اوسط قیمتوں میں ہونے والی تبدیلیوں کے لئے زیادہ حساس ہے۔
سپر رجحان اشارے کا حساب لگائیں۔ سپر رجحان رجحان کی تبدیلیوں کی نشاندہی کرنے کے لئے اے ٹی آر کو جوڑتا ہے۔ یہ اوپری اور نچلی بینڈ کا حساب لگاتا ہے۔
جب بالائی بینڈ کے اوپر قریب ٹوٹ جاتا ہے تو، لمبا ہو جاتا ہے۔ جب نیچے والے بینڈ کے نیچے قریب ٹوٹ جاتا ہے تو، مختصر ہو جاتا ہے۔
قیمت کی نقل و حرکت کو بصری طور پر دیکھنے کے لئے کھلے، بند، اعلی اور کم جیسے معاون اشارے کو پلاٹ کریں.
اشارے کے کراس اوورز کی بنیاد پر تجارتی فیصلے کریں۔
یہ حکمت عملی چلتی اوسط اور سپر رجحان دونوں کو یکجا کرتی ہے، جس سے زیادہ درست رجحان کا پتہ چلتا ہے.
ہیل چلتی اوسط قیمت کی تبدیلیوں کے لئے زیادہ حساس ہے، بروقت اسپاٹ رجحان کی تبدیلی میں مدد ملتی ہے.
سپر رجحان متحرک طور پر مارکیٹ میں اتار چڑھاؤ کے مطابق اپر اور نچلے بینڈ کو ایڈجسٹ کرتا ہے۔
معاون اشارے اشارے کے ساتھ فیصلہ سازی میں مدد کے لئے قیمت کی نقل و حرکت کو بصری طور پر ظاہر کرتے ہیں۔
حکمت عملی چلتی اوسط مدت، سپر رجحان ضارب وغیرہ پر پیرامیٹر کی اصلاح کی اجازت دیتا ہے.
وِپساؤس رینج سے منسلک مارکیٹوں کے دوران غلط سگنل پیدا کرسکتے ہیں، جس سے غیر ضروری تجارت ہوتی ہے۔
متعدد اشارے کی نگرانی سے حکمت عملی کو لاگو کرنا نسبتا پیچیدہ ہوسکتا ہے۔
پیرامیٹرز کو مختلف مصنوعات کی خصوصیات کے مطابق مناسب ایڈجسٹمنٹ کی ضرورت ہے۔
سنگل پوزیشنوں پر نقصانات کو محدود کرنے کے لئے سخت سٹاپ نقصان کی ضرورت ہے۔
اعلی تجارتی تعدد کمیشنوں سے اثرات کے کنٹرول کی ضرورت ہوتی ہے.
مارکیٹ کے لئے زیادہ حساس ایک تلاش کرنے کے لئے مختلف چلتی اوسط ٹیسٹ.
وقت میں رجحان کی تبدیلیوں کو پکڑنے کے لئے مختلف سپر رجحان ضارب کی جانچ کریں.
غیر مستحکم ہونے پر پوزیشن کے سائز کو کم کرنے کے لئے اتار چڑھاؤ انڈیکس شامل کریں.
رینج محدود ادوار کے دوران جھوٹے سگنل سے بچنے کے لئے توڑنے کے حالات شامل کریں.
سٹاپ نقصان کی حکمت عملی کو بہتر بنائیں تاکہ اسے مارکیٹ کے حالات سے زیادہ موافقت پذیر بنایا جاسکے۔
یہ حکمت عملی رجحان کی پیروی کرنے کے لئے چلتی اوسط اور سپر ٹرینڈ دونوں کا استعمال کرتے ہوئے رجحان کی سمت کا فیصلہ کرتی ہے۔ فائدہ یہ ہے کہ زیادہ درست رجحان کا پتہ لگانے کے لئے اشارے کے مابین باہمی تصدیق ہوتی ہے۔ لیکن غلط اشاروں سے خبردار رہنا چاہئے۔ اس حکمت عملی کو پیرامیٹر کی اصلاح اور رسک کنٹرول کے ذریعے مزید بہتر بنایا جاسکتا ہے۔ یہ مضبوط رجحان کی خصوصیات والے آلات پر ٹرینڈ کے بعد کی کارروائیوں کے مطابق ہے۔
/*backtest start: 2022-11-07 00:00:00 end: 2023-11-13 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © rajukpatel //@version=5 strategy('My RK Strategy with Alert', shorttitle='My RK Strategy with Alert', overlay=true ) src5 = input(close) tf = input(1440) len5 = timeframe.isintraday and timeframe.multiplier >= 1 ? tf / timeframe.multiplier * 7 : timeframe.isintraday and timeframe.multiplier < 60 ? 60 / timeframe.multiplier * 24 * 7 : 7 ma = ta.ema(src5 * volume, len5) / ta.ema(volume, len5) //script taken from https://www.tradingview.com/script/kChCRRZI-Hull-Moving-Average/ src1 = ma p(src1, len5) => n = 0.0 s = 0.0 for i = 0 to len5 - 1 by 1 w = (len5 - i) * len5 n += w s += src5[i] * w s s / n hm = 2.0 * p(src1, math.floor(len5 / 3)) - p(src1, len5) vhma = p(hm, math.floor(math.sqrt(len5))) lineColor = vhma > vhma[1] ? color.lime : color.red plot(vhma, title='VHMA', color=lineColor, linewidth=3) hColor = true vis = true hu = hColor ? vhma > vhma[2] ? #00ff00 : #ff0000 : #ff9800 vl = vhma[0] ll = vhma[1] m1 = plot(vl, color=hu, linewidth=1, transp=60) m2 = plot(vis ? ll : na, color=hu, linewidth=2, transp=80) fill(m1, m2, color=hu, transp=70) // b = timeframe.isintraday and timeframe.multiplier >= 1 ? 60 / timeframe.multiplier * 7 : timeframe.isintraday and timeframe.multiplier < 60 ? 60 / timeframe.multiplier * 24 * 7 : 7 // res5 = input.timeframe('D') o = request.security(syminfo.tickerid, res5, open, barmerge.gaps_off, barmerge.lookahead_on) c = request.security(syminfo.tickerid, res5, close, barmerge.gaps_off, barmerge.lookahead_on) hz = request.security(syminfo.tickerid, res5, high, barmerge.gaps_off, barmerge.lookahead_on) l = request.security(syminfo.tickerid, res5, low, barmerge.gaps_off, barmerge.lookahead_on) col = c >= o ? color.lime : color.red ppo = plot(b ? o >= c ? hz : l : o, color=col, title='Open', style=plot.style_stepline, transp=100) ppc = plot(b ? o <= c ? hz : l : c, color=col, title='Close', style=plot.style_stepline, transp=100) plot(b and hz > c ? hz : na, color=col, title='High', style=plot.style_circles, linewidth=2, transp=60) plot(b and l < c ? l : na, color=col, title='Low', style=plot.style_circles, linewidth=2, transp=60) fill(ppo, ppc, col, transp=90) // // INPUTS // st_mult = input.float(1, title='SuperTrend Multiplier', minval=0, maxval=100, step=0.01) st_period = input.int(50, title='SuperTrend Period', minval=1) // CALCULATIONS // up_lev = l - st_mult * ta.atr(st_period) dn_lev = hz + st_mult * ta.atr(st_period) up_trend = 0.0 up_trend := c[1] > up_trend[1] ? math.max(up_lev, up_trend[1]) : up_lev down_trend = 0.0 down_trend := c[1] < down_trend[1] ? math.min(dn_lev, down_trend[1]) : dn_lev // Calculate trend var trend = 0 trend := c > down_trend[1] ? 1 : c < 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 = ta.crossover(c, st_line) sell = ta.crossunder(c, st_line) signal = input(false) /////////////// Plotting /////////////// plotshape(signal and buy, style=shape.triangleup, size=size.normal, location=location.belowbar, color=color.new(color.lime, 0)) plotshape(signal and sell, style=shape.triangledown, size=size.normal, location=location.abovebar, color=color.new(color.red, 0)) if buy strategy.entry('My Long Entry Id', strategy.long) if sell strategy.entry('My Short Entry Id', strategy.short)