ڈبل حرکت پذیر اوسط ADX ٹائمنگ حکمت عملی رجحانات کے آغاز میں تجارتی سگنل پیدا کرنے کے لئے 2/20 حرکت پذیر اوسط اور ADXR اشارے کو جوڑ کر رجحانات کی نشاندہی کرتی ہے۔ یہ پہلے قیمت کے رجحان کی سمت کا تعین کرنے کے لئے 2/20 تیزی سے حرکت پذیر اوسط کا استعمال کرتا ہے ، پھر ADXR اشارے کے ساتھ مل کر رجحان سگنل کی مزید تصدیق کرتا ہے ، اس طرح زیادہ قابل اعتماد تجارتی سگنل تیار کرتا ہے۔
دوہری حرکت پذیر اوسط ADX ٹائمنگ کی حکمت عملی کا بنیادی منطق مندرجہ ذیل اہم اجزاء پر مبنی ہے:
2/20 اشاریاتی چلتی اوسط (EMA)
ADXR اشارے
تجارتی سگنل
اس حکمت عملی کی اہم جدت یہ ہے کہ ابتدائی مرحلے میں رجحانات کی نشاندہی کرنے کے لئے ADXR اشارے کا استعمال کیا جائے ، اور معیار اور استحکام کو بہتر بنانے کے لئے روایتی حرکت پذیر اوسط سگنلز کے ساتھ مل کر۔
دوہری حرکت پذیر اوسط ADX ٹائمنگ کی حکمت عملی کے اہم فوائد:
اس حکمت عملی کے لئے بھی کئی اہم خطرات ہیں:
ADXR پیرامیٹر کی غلط ترتیب سے غائب تجارت ہوسکتی ہے۔
خاص مارکیٹ کے حالات میں زیادہ غلط سگنل ہو سکتے ہیں۔
فکسڈ ای ایم اے پیرامیٹرز مارکیٹ میں ہونے والی تبدیلیوں کے مطابق نہیں بن پاتے۔
تجارت کی حدوں کی نشاندہی کرنے میں ناکام، غیر اہم تجارتوں کو پیدا کر سکتا ہے.
اسٹریٹیجی کو مزید بہتر اور بہتر بنایا جاسکتا ہے:
EMA پیرامیٹرز کو مارکیٹ کے حالات کے مطابق خود کار طریقے سے اپنانے کے لئے بہتر بنانا.
زیادہ موثر تجارتی سگنل حاصل کرنے کے لئے ADXR پیرامیٹر رینج کو بڑھانا۔
معیار کو بہتر بنانے کے لئے مجموعی سگنل کے لئے اضافی رجحان کی تشخیص کے اشارے شامل کریں.
سٹاپ نقصان کی حکمت عملی شامل کریں اور ہر تجارت کے خطرات کو کنٹرول کرنے کے لئے منافع کے معیار کو لے لو.
اکاؤنٹ کی حیثیت کی بنیاد پر متحرک پوزیشن سائزنگ کے لئے منی مینجمنٹ کو بہتر بنائیں۔
ڈبل موونگ ایوریج ADX ٹائمنگ حکمت عملی روایتی ڈبل موونگ ایوریجز اور ADXR اشارے کو جدید انداز میں جوڑتی ہے تاکہ سگنل کے معیار کو بہتر بنایا جاسکے اور استحکام کو بڑھا سکے۔ یہ مناسب تاریخی کارکردگی کے ساتھ رجحانات کے ابتدائی مرحلے کی مؤثر طریقے سے نشاندہی کرسکتا ہے۔ اس حکمت عملی میں اصلاح کے لئے کافی گنجائش ہے تاکہ اسے زیادہ پیچیدہ منڈیوں میں مضبوط اور منافع بخش بنایا جاسکے۔
/*backtest start: 2023-11-05 00:00:00 end: 2023-12-05 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 04/04/2022 // This is combo strategies for get a cumulative signal. // // First strategy // This indicator plots 2/20 exponential moving average. For the Mov // Avg X 2/20 Indicator, the EMA bar will be painted when the Alert criteria is met. // // Second strategy // The Average Directional Movement Index Rating (ADXR) measures the strength // of the Average Directional Movement Index (ADX). It's calculated by taking // the average of the current ADX and the ADX from one time period before // (time periods can vary, but the most typical period used is 14 days). // Like the ADX, the ADXR ranges from values of 0 to 100 and reflects strengthening // and weakening trends. However, because it represents an average of ADX, values // don't fluctuate as dramatically and some analysts believe the indicator helps // better display trends in volatile markets. // // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// EMA20(Length) => pos = 0.0 xPrice = close xXA = ta.ema(xPrice, Length) nHH = math.max(high, high[1]) nLL = math.min(low, low[1]) nXS = nLL > xXA or nHH < xXA ? nLL : nHH iff_1 = nXS < close[1] ? 1 : nz(pos[1], 0) pos := nXS > close[1] ? -1 : iff_1 pos fADX(Len) => up = ta.change(high) down = -ta.change(low) trur = ta.rma(ta.tr, Len) plus = fixnan(100 * ta.rma(up > down and up > 0 ? up : 0, Len) / trur) minus = fixnan(100 * ta.rma(down > up and down > 0 ? down : 0, Len) / trur) sum = plus + minus 100 * ta.rma(math.abs(plus - minus) / (sum == 0 ? 1 : sum), Len) ADXR(LengthADX,LengthADXR,Signal1,Signal2) => pos = 0.0 xADX = fADX(LengthADX) xADXR = (xADX + xADX[LengthADXR]) / 2 pos := xADXR < Signal1 ? 1 : xADXR > Signal2 ? -1 : nz(pos[1], 0) pos strategy(title='Combo 2/20 EMA & ADXR', shorttitle='Combo', overlay=true) var I1 = '●═════ 2/20 EMA ═════●' Length = input.int(14, minval=1, group=I1) var I2 = '●═════ ADXR ═════●' LengthADX = input(title="Length ADX", defval=14) LengthADXR = input(title="Length ADXR", defval=14) Signal1 = input.float(13, step=0.01) Signal2 = input.float(45, step=0.01) var misc = '●═════ MISC ═════●' reverse = input.bool(false, title='Trade reverse', group=misc) var timePeriodHeader = '●═════ Time Start ═════●' d = input.int(1, title='From Day', minval=1, maxval=31, group=timePeriodHeader) m = input.int(1, title='From Month', minval=1, maxval=12, group=timePeriodHeader) y = input.int(2005, title='From Year', minval=0, group=timePeriodHeader) StartTrade = time > timestamp(y, m, d, 00, 00) ? true : false posEMA20 = EMA20(Length) prePosADXR = ADXR(LengthADX,LengthADXR,Signal1,Signal2) iff_1 = posEMA20 == -1 and prePosADXR == -1 and StartTrade ? -1 : 0 pos = posEMA20 == 1 and prePosADXR == 1 and StartTrade ? 1 : iff_1 iff_2 = reverse and pos == -1 ? 1 : pos possig = reverse and pos == 1 ? -1 : iff_2 if possig == 1 strategy.entry('Long', strategy.long) if possig == -1 strategy.entry('Short', strategy.short) if possig == 0 strategy.close_all() barcolor(possig == -1 ? #b50404 : possig == 1 ? #079605 : #0536b3)