موافقت پذیر قیمت چینل کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-12-04 16:33:45
ٹیگز:

img

جائزہ

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

حکمت عملی منطق

  1. ایک دی گئی لمبائی پر سب سے زیادہ اعلی (HH) اور سب سے کم کم (LL) کا حساب لگائیں۔ اسی لمبائی پر ATR کا حساب بھی لگائیں۔

  2. قیمتوں میں اضافے اور کمی کی بنیاد پر +DI اور -DI کا حساب لگائیں۔ پھر ADX کا حساب لگائیں۔

  3. اگر ADX < 25 ہے تو ، مارکیٹ کو ضمنی سمجھا جاتا ہے۔ اگر قریب > اوپری چینل (HH - ATR ضرب * ATR) ، طویل چلے جائیں۔ اگر قریب < نچلے چینل (LL + ATR ضرب * ATR) ، مختصر چلے جائیں۔

  4. اگر ADX >= 25 اور +DI > -DI ہے تو مارکیٹ تیزی سے بڑھتی ہے۔ اگر بند > اوپری چینل ہے تو ، طویل ہوجائیں۔

  5. اگر ADX >= 25 اور +DI < -DI ہے تو مارکیٹ bearish ہے۔ اگر بند < نچلی چینل ہے تو مختصر ہو جائیں۔

  6. داخل ہونے کے بعد exit_length سلاخوں کے بعد باہر نکلنے کی پوزیشن

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

  1. حکمت عملی مارکیٹ کے حالات کی بنیاد پر خود کار طریقے سے اپنانے، ضمنی مارکیٹ میں چینل کی حکمت عملی کا استعمال کرتے ہوئے اور رجحان کی مارکیٹ میں رجحان کی پیروی کرتے ہیں.

  2. اے ٹی آر اور اے ڈی ایکس کا استعمال موافقت کو یقینی بناتا ہے۔ اے ٹی آر چینل کی چوڑائی کو ایڈجسٹ کرتا ہے ، اے ڈی ایکس رجحان کا تعین کرتا ہے۔

  3. جبری باہر نکلنے سے استحکام بڑھتا ہے۔

خطرے کا تجزیہ

  1. ADX اکثر غلط سگنل پیدا کر سکتا ہے.

  2. خراب اے ٹی آر اور اے ڈی ایکس پیرامیٹرز خراب کارکردگی کا باعث بنتے ہیں.

  3. بلیک سوان واقعات کے خلاف مؤثر طریقے سے حفاظت کرنے کے قابل نہیں.

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

  1. اے ٹی آر اور اے ڈی ایکس کے پیرامیٹرز کو بہتر بنانا تاکہ موافقت کو بہتر بنایا جاسکے۔

  2. نقصانات کو محدود کرنے کے لئے سٹاپ نقصان شامل کریں.

  3. غلط سگنل سے بچنے کے لیے فلٹرز شامل کریں۔

نتیجہ

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


/*backtest
start: 2023-11-03 00:00:00
end: 2023-12-03 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Adaptive Price Channel Strategy", overlay=true)

length = input(20, title="Length")
exit_length = input(10, title="Exit After X Periods")
atr_multiplier = input(3.2, title="ATR Multiplier")

startDate = input(defval = timestamp("2019-01-15T08:15:15+00:00"), title = "Start Date")
endDate = input(defval = timestamp("2033-04-01T08:15:00+00:00"), title = "End Date")

hh = ta.highest(high, length)
ll = ta.lowest(low, length)
atr = ta.atr(length)

// calculate +DI and -DI
upMove = high - high[1]
downMove = low[1] - low
plusDM = na(upMove[1]) ? na : (upMove > downMove and upMove > 0 ? upMove : 0)
minusDM = na(downMove[1]) ? na : (downMove > upMove and downMove > 0 ? downMove : 0)
plusDI = ta.rma(plusDM, length) / atr * 100
minusDI = ta.rma(minusDM, length) / atr * 100

// calculate ADX
dx = math.abs(plusDI - minusDI) / (plusDI + minusDI) * 100
adx = ta.rma(dx, length)

var int barSinceEntry = na

if (not na(close[length]) )
    if (adx < 25) // Sideways market
        if (close > hh - atr_multiplier * atr)
            strategy.entry("PChLE", strategy.long, comment="PChLE")
            barSinceEntry := 0
        else if (close < ll + atr_multiplier * atr)
            strategy.entry("PChSE", strategy.short, comment="PChSE")
            barSinceEntry := 0
    else if (adx >= 25 and plusDI > minusDI) // Bullish market
        if (close > hh - atr_multiplier * atr)
            strategy.entry("PChLE", strategy.long, comment="PChLE")
            barSinceEntry := 0
    else if (adx >= 25 and plusDI < minusDI) // Bearish market
        if (close < ll + atr_multiplier * atr)
            strategy.entry("PChSE", strategy.short, comment="PChSE")
            barSinceEntry := 0

if (na(barSinceEntry))
    barSinceEntry := barSinceEntry[1] + 1
else if (barSinceEntry >= exit_length)
    strategy.close("PChLE")
    strategy.close("PChSE")
    barSinceEntry := na

plot(hh, title="Highest High", color=color.green, linewidth=2)
plot(ll, title="Lowest Low", color=color.red, linewidth=2)



مزید