یہ حکمت عملی دوہری حرکت پذیر اوسط کراس اوور ٹرینڈ فالونگ سسٹم پر مبنی ہے۔ یہ تیز رفتار سادہ حرکت پذیر اوسط (ایس ایم اے) اور سست وزن والے حرکت پذیر اوسط (وی ڈبلیو ایم اے) کو جوڑتا ہے ، اور جب دونوں لائنیں ایک دوسرے کو عبور کرتی ہیں تو تجارتی سگنل تیار کرتا ہے۔
جب تیز رفتار ایس ایم اے سست وی ڈبلیو ایم اے کے اوپر عبور کرتا ہے تو ، خرید کا اشارہ پیدا ہوتا ہے۔ جب تیز رفتار ایس ایم اے سست وی ڈبلیو ایم اے کے نیچے عبور کرتا ہے تو ، فروخت کا اشارہ پیدا ہوتا ہے۔ یہ حکمت عملی خطرات کو کنٹرول کرنے کے لئے اسٹاپ نقصان کے طریقہ کار کو بھی استعمال کرتی ہے۔
اس حکمت عملی کا بنیادی منطق دوہری حرکت پذیر اوسط کراس اوور سسٹم میں ہے۔ خاص طور پر یہ مندرجہ ذیل تکنیکی اشارے استعمال کرتا ہے۔
تیز رفتار ایس ایم اے میں قیمت کی تبدیلیوں پر تیزی سے رد عمل ظاہر کرنے کے لئے ایک مختصر نظرثانی کی مدت ہوتی ہے ، جبکہ سست وی ڈبلیو ایم اے میں ہموار کرنے کے لئے ایک لمبی نظرثانی کی مدت ہوتی ہے۔ جب قلیل مدتی اور طویل مدتی رجحانات ایک ہی سمت میں سیدھے ہوجاتے ہیں تو ، سست وی ڈبلیو ایم اے کے اوپر تیز رفتار ایس ایم اے کراسنگ خرید سگنل پیدا کرتی ہے ، جبکہ نیچے کراسنگ فروخت سگنل پیدا کرتی ہے۔
یہ حکمت عملی سٹاپ نقصان کے طریقہ کار کو بھی قائم کرتی ہے۔ جب قیمت منفی سمت میں چلتی ہے تو یہ وقت میں نقصانات کو کم کرتی ہے۔
خطرے کا انتظام:
اسٹریٹیجی کو مندرجہ ذیل پہلوؤں میں بہتر بنایا جاسکتا ہے:
اختتام کے طور پر ، یہ ایک بہت ہی عملی رجحان کی پیروی کرنے والی حکمت عملی ہے۔ یہ تجارتی سگنل تیار کرنے کے لئے بدیہی دوہری حرکت پذیر اوسط کراس اوورز کا استعمال کرتا ہے ، تیز اور سست حرکت پذیر اوسط کے ہم آہنگی کے ساتھ رجحان کی تبدیلیوں کو مؤثر طریقے سے پکڑتا ہے۔ اسٹاپ نقصان کا طریقہ کار بھی اچھے رسک کنٹرول کو یقینی بناتا ہے۔ تکمیلی اشارے اور پیرامیٹر کی اصلاح کے ساتھ ، حکمت عملی اور بھی بہتر تجارتی کارکردگی حاصل کرسکتی ہے۔
/*backtest start: 2023-11-23 00:00:00 end: 2023-11-28 00:00:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //strategy(title="Bitlinc Entry v0.1 VWMA / SMA / MRSI SQQQ 94M", overlay=true, initial_capital=10000, currency='USD') strategy(title="Bitlinc Entry v0.1 VWMA / SMA / MRSI SQQQ 94M", overlay=true) // Credit goes to this developer for the "Date Range Code" // https://www.tradingview.com/script/62hUcP6O-How-To-Set-Backtest-Date-Range/ // === GENERAL INPUTS === // short ma maFastSource = input(defval = close, title = "Simple MA Source") maFastLength = input(defval = 6, title = "Simple MA Length", minval = 1) // long ma maSlowSource = input(defval = high, title = "VW MA Source") maSlowLength = input(defval = 7, title = "VW MA Period", minval = 1) // === SERIES SETUP === // a couple of ma's... maFast = sma(maFastSource, maFastLength) maSlow = vwma(maSlowSource, maSlowLength) // === PLOTTING === fast = plot(maFast, title = "Fast MA", color = color.green, linewidth = 2, style = plot.style_line, transp = 30) slow = plot(maSlow, title = "Slow MA", color = color.red, linewidth = 2, style = plot.style_line, transp = 30) // === INPUT BACKTEST RANGE === FromMonth = input(defval = 1, 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 = 2017) 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 = 2017) // === FUNCTION EXAMPLE === start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window window() => time >= start and time <= finish ? true : false // create function "within window of time" // === LOGIC === enterLong = crossover(maFast, maSlow) exitLong = crossover(maSlow, maFast) //enterLong = crossover(maSlow, maFast) //exitLong = crossover(maFast, maSlow) // Entry // strategy.entry(id="Long Entry", long=true, when=window() and enterLong) strategy.entry(id="Short Entry", long=false, when=window() and exitLong) // === FILL ==== fill(fast, slow, color = maFast > maSlow ? color.green : color.red) // === MRSI === // // basis = rsi(close, input(50)) ma1 = ema(basis, input(2)) ma2 = ema(basis, input(27)) oversold = input(32.6) overbought = input(63) //plot(ma1, title="RSI EMA1", color=blue) //plot(ma2, title="RSI EMA2", color=yellow) obhist = ma1 >= overbought ? ma1 : overbought oshist = ma1 <= oversold ? ma1 : oversold //plot(obhist, title="Overbought Highligth", style=columns, color=color.maroon, histbase=overbought) //plot(oshist, title="Oversold Highligth", style=columns, color=color.yellow, histbase=oversold) //i1 = hline(oversold, title="Oversold Level", color=white) //i2 = hline(overbought, title="Overbought Level", color=white) //fill(i1, i2, color=olive, transp=100) // === LOGIC === enterLongMrsi = crossover(ma1, oversold) exitLongMrsi = crossover(ma1, overbought) // Entry // strategy.entry(id="MRSI Long Entry", long=true, when=window() and enterLongMrsi) strategy.entry(id="MRSI Short Entry", long=false, when=window() and exitLongMrsi) //hline(50, title="50 Level", color=white)