ٹرینڈ ٹریکنگ ٹریلنگ اسٹاپ حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-01-17 11:19:06
ٹیگز:

img

جائزہ

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

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

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

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

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

فوائد کا تجزیہ

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

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

خطرے کا تجزیہ

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

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

اصلاح کی ہدایات

اسٹریٹیجی کو مندرجہ ذیل پہلوؤں میں مزید بہتر بنایا جاسکتا ہے:

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

  2. مشین لرننگ پر مبنی موافقت پذیر پیرامیٹر اصلاح ماڈیول کو بڑھانا تاکہ ATR پیرامیٹر ، ADX پیرامیٹر ، RSI پیرامیٹر وغیرہ کو مقررہ اقدار کے بجائے حقیقی وقت کی مارکیٹ کے مطابق ایڈجسٹ کیا جاسکے۔

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

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

نتیجہ

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


/*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")





مزید