ٹریلنگ اسٹاپ حکمت عملی کے بعد رجحان


تخلیق کی تاریخ: 2024-01-17 11:19:06 آخر میں ترمیم کریں: 2024-01-17 11:19:06
کاپی: 0 کلکس کی تعداد: 616
1
پر توجہ دیں
1617
پیروکار

ٹریلنگ اسٹاپ حکمت عملی کے بعد رجحان

جائزہ

ٹرینڈ ٹریکنگ موبائل اسٹاپ اسٹریٹجی ایک مقداری تجارتی حکمت عملی ہے جو رجحان کا فیصلہ کرنے والے اشارے اور موبائل اسٹاپ میکانیزم کو جوڑتی ہے۔ یہ حکمت عملی موجودہ رجحان کی سمت کا فیصلہ کرنے کے لئے سپر ٹرینڈ اشارے کا استعمال کرتی ہے ، اور قیمت میں تبدیلی کو حقیقی وقت میں ٹریک کرنے کے لئے موبائل اسٹاپ لائن کا استعمال کرتی ہے ، جس سے رجحان کا سراغ لگانا اور خطرے پر قابو پایا جاتا ہے۔

حکمت عملی کا اصول

اس حکمت عملی میں سب سے پہلے سپر ٹرینڈ اشارے کا حساب لگایا جاتا ہے تاکہ یہ معلوم کیا جاسکے کہ آیا اس وقت عروج کا رجحان ہے یا زوال کا رجحان ہے۔ سپر ٹرینڈ اشارے ، اے ٹی آر اشارے اور مرکزی نقطہ کے ساتھ مل کر ، رجحان کی سمت کا زیادہ درست اندازہ لگاسکتے ہیں۔ اگر سپر ٹرینڈ اشارے کا فیصلہ عروج کا رجحان ہے تو ، خریدنے کا اشارہ پیدا ہوتا ہے۔ اگر فیصلہ زوال کا رجحان ہے تو ، فروخت کا اشارہ پیدا ہوتا ہے۔

جب خریدنے کا اشارہ پیدا ہوتا ہے تو ، حکمت عملی زیادہ پوزیشن کھولتی ہے۔ اس کے ساتھ ہی ، یہ ایک متحرک اسٹاپ لائن کا حساب کتاب کرتا ہے ، جس کا حساب کتاب مرکزی نقطہ کم سے کم اے ٹی آر اشارے کی قدر کے حساب سے ہوتا ہے۔ جب تک کہ موجودہ اختتامی قیمت اس اسٹاپ لائن سے زیادہ ہو ، اسٹاپ لائن حقیقی وقت میں منتقل ہوجائے گی ، اور ہمیشہ معقول اسٹاپ پوزیشن پر رہے گی۔ اگر قیمت اسٹاپ لائن سے نیچے آجائے تو ، اسٹاپ لائن کو فلیٹ کردیا جائے گا۔

یہ حکمت عملی ADX اشارے اور RSI اشارے کے ساتھ مل کر غیر موزوں تجارتی سگنل کو فلٹر کرتی ہے۔ یہ صرف اس صورت میں پوزیشن کھولتا ہے جب ADX مقررہ حد سے زیادہ ہو اور RSI مناسب سطح پر ہو۔

طاقت کا تجزیہ

اس حکمت عملی کا سب سے بڑا فائدہ یہ ہے کہ رجحان کی سمت کو اچھی طرح سے پکڑنے اور رجحان کی پیروی کرنے کے قابل ہو۔ سپر ٹرینڈ اشارے سادہ حرکت پذیر اوسط سے زیادہ درست ہیں ، اور فوری طور پر موڑ کا فیصلہ کرسکتے ہیں۔ اس کے ساتھ ہی ، موبائل اسٹاپ نقصان کا طریقہ کار خود بخود اسٹاپ نقصان کی پوزیشن کو ایڈجسٹ کرسکتا ہے ، منافع کو زیادہ سے زیادہ روک سکتا ہے ، اور خطرے کو مؤثر طریقے سے کنٹرول کرسکتا ہے۔

اس کے علاوہ ، یہ حکمت عملی ADX اور RSI اشارے میں فلٹرنگ کے لئے شامل ہے ، جس سے مارکیٹ میں زیادہ اتار چڑھاؤ کے دوران غلط تجارت سے بچا جاسکتا ہے۔ ADX اشارے کافی حد تک رجحان سازی کی ضمانت دیتے ہیں ، اور RSI اشارے اوور بیئر اوور سیل سے بچنے کے لئے ، جس سے منافع کی امکانات میں اضافہ ہوتا ہے۔

خطرے کا تجزیہ

اس حکمت عملی کا سب سے بڑا خطرہ یہ ہے کہ رجحان کا غلط فیصلہ کیا جائے ، اور سپر ٹرینڈ اشارے کے غلط سگنل جاری کرنے کی امکان ہے۔ اگرچہ سپر ٹرینڈ اشارے سادہ منتقل اوسط سے بہتر ہیں ، لیکن پیچیدہ حالات میں بھی غلطی کا فیصلہ کرنا ناگزیر ہے۔ اس وقت نقصان کو کنٹرول کرنے کے لئے اسٹاپ نقصان پر انحصار کرنے کی ضرورت ہے۔

اس کے علاوہ ، حکمت عملی کے پیرامیٹرز کی غلط ترتیب بھی کچھ خطرہ لاحق ہے۔ مثال کے طور پر ، اے ٹی آر پیرامیٹرز نے کانفرنسوں کو روکنے کی حد کو بہت زیادہ شدت سے ایڈجسٹ کیا ہے۔ ADX اور RSI کے پیرامیٹرز کی غلط ترتیب بھی تجارت کے مواقع سے محروم ہوسکتی ہے یا غلط تجارت کے امکانات میں اضافہ کرسکتی ہے۔ اس کے لئے بہت سارے تاریخی مشاہدات کے ذریعے بہترین پیرامیٹرز کی تلاش کی ضرورت ہے۔

اصلاح کی سمت

اس حکمت عملی کو مزید بہتر بنانے کے لیے مندرجہ ذیل نکات پر غور کیا جا سکتا ہے۔

  1. دیگر رجحانات کے فیصلے کے اشارے ، جیسے ڈی ایم آئی ، کے ڈی جے ، وغیرہ کو سپر رجحانات کے اشارے کے ساتھ جوڑ کر ، کثیر عنصر کھیپ فیصلے کا نظام تشکیل دینے کی کوشش کریں ، جس سے فیصلے کی درستگی میں اضافہ ہوسکتا ہے۔

  2. مشین لرننگ پر مبنی انکولی پیرامیٹرز کی اصلاح کے ماڈیول کو شامل کیا گیا ہے تاکہ اے ٹی آر پیرامیٹرز ، اے ڈی ایکس پیرامیٹرز ، آر ایس آئی پیرامیٹرز وغیرہ کو صرف فکسڈ اقدار کے بجائے حقیقی وقت کی مارکیٹ کے مطابق ایڈجسٹ کیا جاسکے۔

  3. جذبات کے اشارے جیسے متبادل RSI اشارے متعارف کروائیں ، سگنل کو فلٹر کریں۔ آر ایس آئی اشارے پیچیدہ حالات کا فیصلہ کرنے کے لئے مثالی نہیں ہیں ، جبکہ سماجی جذبات کے اشارے مارکیٹ کی گرمی کا بہتر اندازہ لگاسکتے ہیں۔

  4. پوزیشن مینجمنٹ ماڈیول شامل کریں ، اسٹاپ نقصان کی لائن موجودہ قیمت سے فاصلے کے قریب ہونے کے مطابق پوزیشن کا سائز متحرک طور پر ایڈجسٹ کریں۔ اسٹاپ نقصان کی لائن سے جتنا دور ، مناسب پوزیشن میں اضافہ کیا جاسکتا ہے ، منافع کی گنجائش میں اضافہ کریں۔

خلاصہ کریں۔

رجحانات کا سراغ لگانے والی موبائل اسٹاپ اسٹریٹجی ، جس میں رجحانات کے تجزیہ ، موبائل اسٹاپ اور ملٹی فیکٹر فلٹرنگ جیسے طریقوں کا استعمال کیا جاتا ہے ، رجحانات کو پکڑنے کے ساتھ ساتھ خطرے کو سختی سے کنٹرول کرنے والی ایک زیادہ پختہ مقداری حکمت عملی ہے۔ اس حکمت عملی کو بہتر بنانے کی گنجائش بہت زیادہ ہے ، اور اس میں مزید تحقیق کے قابل ہے تاکہ اسے زیادہ پیچیدہ مارکیٹ کے ماحول کے مطابق ڈھال لیا جاسکے۔

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bendre ADX Sup Trend", overlay = true)

///////////////////////////
// SuperTrend + Pivot Point
//////////////////////////

src =  input(close, title="EMA Source")
PPprd = input(defval = 2, title="Pivot Point Period")
AtrFactor=input(defval = 2, title = "ATR Factor")
AtrPd=input(defval = 18, title = "ATR Period")

StartDate = input(timestamp("1 Dec 2022"), title="Start Date")
EndDate = input(timestamp("12 Jan 2023"), title="End Date")

var float ph = na
var float pl = na
ph := ta.pivothigh(PPprd, PPprd)
pl :=ta.pivotlow(PPprd, PPprd)

float center = na
center := center[1]
// float lastpp = ph ? ph : pl ? pl : 0.0
float lastpp = na(ph) ? na(pl) ? na : pl : ph

if lastpp > 0
    if na(center)
        center := lastpp
    else
        center := (center * 2 + lastpp) / 3

Up = center - (AtrFactor * ta.atr(AtrPd))
Dn = center + (AtrFactor * ta.atr(AtrPd))

var float TUp = na
var float TDown = na
Trend = 0
TUp := close[1] > TUp[1] ? math.max(Up, TUp[1]) : Up
TDown := close[1] < TDown[1] ? math.min(Dn, TDown[1]) : Dn
Trend := close > TDown[1] ? 1: close < TUp[1]? -1: nz(Trend[1], 1)
Trailingsl = Trend == 1 ? TUp : TDown

// Lines
linecolor = Trend == 1 and nz(Trend[1]) == 1 ? color.lime : Trend == -1 and nz(Trend[1]) == -1 ? color.red : na
plot(Trailingsl, color = linecolor ,  linewidth = 2, title = "PP SuperTrend")

bsignalSSPP = close > Trailingsl
ssignalSSPP = close < Trailingsl


///////
// ADX
//////

lenADX = 14
th = 14
TrueRange = math.max(math.max(high-low, math.abs(high-nz(close[1]))), math.abs(low-nz(close[1])))
DirectionalMovementPlus = high-nz(high[1]) > nz(low[1])-low ? math.max(high-nz(high[1]), 0): 0
DirectionalMovementMinus = nz(low[1])-low > high-nz(high[1]) ? math.max(nz(low[1])-low, 0): 0
SmoothedTrueRange = 0.0
SmoothedTrueRange := nz(SmoothedTrueRange[1]) - (nz(SmoothedTrueRange[1])/lenADX) + TrueRange
SmoothedDirectionalMovementPlus = 0.0
SmoothedDirectionalMovementPlus := nz(SmoothedDirectionalMovementPlus[1]) - (nz(SmoothedDirectionalMovementPlus[1])/lenADX) + DirectionalMovementPlus
SmoothedDirectionalMovementMinus = 0.0
SmoothedDirectionalMovementMinus := nz(SmoothedDirectionalMovementMinus[1]) - (nz(SmoothedDirectionalMovementMinus[1])/lenADX) + DirectionalMovementMinus
DIPlus = SmoothedDirectionalMovementPlus / SmoothedTrueRange * 100
DIMinus = SmoothedDirectionalMovementMinus / SmoothedTrueRange * 100
DX = math.abs(DIPlus-DIMinus) / (DIPlus+DIMinus)*100
ADX = ta.sma(DX, lenADX)


//////
// MA
/////

lenMA = 21
srcMA = input(close, title="Source")
// offsetMA = input(title="Offset", type=input.integer, defval=0, minval=-500, maxval=500)
offsetMA = input(0, title="Offset")
outMA = ta.sma(srcMA, lenMA)

//
// RSI
//
length = input( 14 )
overSold = input( 30 )
overBought = input( 65 )
price = close
vrsi = ta.rsi(price, length)


// Buy - Sell Entries
buy = bsignalSSPP and outMA < close and ADX > th
sell = ssignalSSPP 


if (buy and vrsi > overBought)
    // .order // Tuned version
    strategy.entry("Buy", strategy.long)
    // strategy.close("Sell", "close Sell")

if (sell) and (strategy.position_size > 0)
    // strategy.entry("Sell", strategy.short)
    strategy.close("Buy", "Close Buy")

// if(sell and vrsi < overSold )
//     strategy.entry("Sell", strategy.short)

// if(buy) and (strategy.position_size > 0)
//     strategy.close("Sell", "close Sell")