سپر ٹرینڈ سپورٹ اور مزاحمت اور ADX اشارے پر مبنی اعلی تعدد تجارتی حکمت عملی


تخلیق کی تاریخ: 2024-02-19 15:01:36 آخر میں ترمیم کریں: 2024-02-19 15:01:36
کاپی: 1 کلکس کی تعداد: 871
1
پر توجہ دیں
1617
پیروکار

سپر ٹرینڈ سپورٹ اور مزاحمت اور ADX اشارے پر مبنی اعلی تعدد تجارتی حکمت عملی

جائزہ

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

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

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

  2. ADX اشارے رجحان کی طاقت کا فیصلہ کرتا ہے۔ جب ADX سیٹ ویلیو سے زیادہ ہوتا ہے تو ، یہ سمجھا جاتا ہے کہ رجحان کافی مضبوط ہے۔

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

طاقت کا تجزیہ

یہ حکمت عملی مندرجہ ذیل فوائد رکھتی ہے:

  1. سپر ٹرینڈ لائن متحرک حساب سے مزاحمت کی حمایت کی جاتی ہے ، جس سے تیزی سے توڑ کا تعین کیا جاسکتا ہے۔

  2. ADX اشارے مؤثر طریقے سے غیر رجحان کے منظر نامے کو فلٹر کرتا ہے ، اور غیر موثر تجارت کو کم کرتا ہے۔

  3. اس کے علاوہ، اس کے پاس بہت سے دوسرے اختیارات ہیں.

خطرے کا تجزیہ

اس حکمت عملی میں مندرجہ ذیل خطرات بھی ہیں:

  1. اس کے علاوہ ، یہ بھی کہا گیا ہے کہ اس کے نتیجے میں ، اس کی قیمتوں میں کمی واقع ہوگی۔

  2. ADX کی غلط ترتیب بھی حکمت عملی کی کارکردگی کو متاثر کرتی ہے۔

  3. ہائی فریکوئینسی ٹرانزیکشنز اعلی ٹرانزیکشن فیس کے ساتھ آتے ہیں۔

اس کا حل کیا ہے؟

  1. اوپری پیرامیٹرز کو بہتر بنائیں ، مناسب طریقے سے توڑنے کی چوڑائی کو کم کریں۔

  2. بہتر ADX پیرامیٹرز کی جانچ پڑتال کریں.

  3. ٹرانزیکشن کی فریکوئنسی کو مناسب طریقے سے کم کریں۔

اصلاح کی سمت

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

  1. اے ٹی آر ضارب پیرامیٹرز کو بہتر بنائیں تاکہ مزاحمت لائن کو مضبوط بنایا جاسکے۔

  2. مختلف ADX پیرامیٹرز کو آزمائیں اور بہترین قیمت تلاش کریں۔

  3. ایک بار نقصان کو کنٹرول کرنے کے لئے اسٹاپ نقصان کے نظام میں شامل ہوں۔

خلاصہ کریں۔

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

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

//@version=4
strategy("STPP20 + ADX", overlay = true)

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

src =  input(close, title="EMA Source")
PPprd = input(defval = 2, title="Pivot Point Period", minval = 1, maxval = 50)
AtrFactor=input(defval = 5, title = "ATR Factor", minval = 1, step = 0.1)
AtrPd=input(defval = 20, title = "ATR Period", minval=1)

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

float center = na
center := center[1]
float lastpp = ph ? ph : pl ? pl : na
if lastpp
    if na(center)
        center := lastpp
    else
        center := (center * 2 + lastpp) / 3

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

float TUp = na
float TDown = na
Trend = 0
TUp := close[1] > TUp[1] ? max(Up, TUp[1]) : Up
TDown := close[1] < TDown[1] ? 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 = 25
TrueRange = max(max(high-low, abs(high-nz(close[1]))), abs(low-nz(close[1])))
DirectionalMovementPlus = high-nz(high[1]) > nz(low[1])-low ? max(high-nz(high[1]), 0): 0
DirectionalMovementMinus = nz(low[1])-low > high-nz(high[1]) ? 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 = abs(DIPlus-DIMinus) / (DIPlus+DIMinus)*100
ADX = sma(DX, lenADX)


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

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


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

if (buy)
    // .order // Tuned version
    strategy.entry("Buy", strategy.long)


if (sell) and (strategy.position_size > 0)
    strategy.order("Sell", false, when = sell)