وسائل لوڈ ہو رہے ہیں... لوڈنگ...

متعدد اشارے کے انضمام پر مبنی حکمت عملی کے بعد رجحان

مصنف:چاؤ ژانگ، تاریخ: 2023-09-13 17:16:51
ٹیگز:

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

آر ایس آئی اشارے سے زیادہ خرید / فروخت کی حیثیت کا تعین ہوتا ہے۔ آر ایس آئی 30 سے اوپر کی حد کو عبور کرنا طویل داخلے پر غور کرتے ہوئے ، زیادہ فروخت کا اختتام ہے۔ آر ایس آئی 70 پرچم سے نیچے کی حد کو عبور کرنا ، پوزیشنوں کو بند کرنے پر غور کرتے ہوئے ، زیادہ خرید کا اختتام ہے۔

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

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

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

فائدہ یہ ہے کہ تصدیق کے لئے متعدد اشارے کا استعمال کرکے غلط سگنل کو مؤثر طریقے سے روک سکتا ہے۔ لیکن پیرامیٹرز کو انفرادی اصلاح کی ضرورت ہے ، اور اسٹاپ نقصان ناگزیر ہے۔

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


/*backtest
start: 2023-09-05 00:00:00
end: 2023-09-08 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// RSI
//@version=3
// strategy("Femi Strategy", overlay=true)
strategy("Femi Strategy", overlay=false)
RSIlength = input( 14 )
overSold = input( 30 )
overBought = input( 70 )
price = close

vrsi = rsi(price, RSIlength)



//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)





// ADX

//@version=3
adxlen = input(14)
dilen = input(14)
adxThreshold = input( 25 )
dirmov(len) =>
	up = change(high)
	down = -change(low)
	plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
    minusDM = na(down) ? na : (down > up and down > 0 ? down : 0)
	truerange = rma(tr, len)
	plus = fixnan(100 * rma(plusDM, len) / truerange)
	minus = fixnan(100 * rma(minusDM, len) / truerange)
	[plus, minus]

adx(dilen, adxlen) =>
	[plus, minus] = dirmov(dilen)
	sum = plus + minus
	adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)

sig = adx(dilen, adxlen)


// MACD
//@version=3
MACDZero = input(0)
fastLength = input(12)
slowlength = input(26)
MACDLength = input(9)

MACD = ema(close, fastLength) - ema(close, slowlength)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD



source = close
length = input(20, minval=1)
mult = input(2.0, minval=0.001, maxval=50)

basis = sma(source, length)
dev = mult * stdev(source, length)

upper = basis + dev
lower = basis - dev

if (not na(vrsi))
    if (crossover(delta, MACDZero))
        strategy.entry("FEMIMACDLE", strategy.long, comment="FEMIMACDLE")
    else
        strategy.cancel(id="FEMIMACDLE")
        
    
    if (crossunder(vrsi, overSold))
        strategy.entry("FEMIRSILE", strategy.long, comment="FEMIRSILE")
    else
        strategy.cancel(id="FEMIRSILE")
        
        
    // if(crossover(sig, adxThreshold)) // crossover(sig, adxThreshold) crossover(delta, MACDZero) crossunder(vrsi, overSold)
    //     strategy.entry("FEMIADXLE", strategy.long, comment="FEMIADXLE")
    // else
    //     strategy.cancel(id="FEMIADXLE")
        
        
    // if (crossover(source, lower))
    //     strategy.entry("FEMIBBLE", strategy.long, comment="FEMIBBLE")
    // else
    //     strategy.cancel(id="FEMIBBLE")
        
    // if(crossunder(sig, adxThreshold))
        // strategy.cancel(id="FEMILE")
        // strategy.exit(id="FEMILE")
        
    // if (crossunder(delta, MACDZero))
        // strategy.entry("FEMIMACDSE", strategy.short, comment="FEMIMACDSE")
    if (crossover(vrsi, overBought))
        // strategy.entry("FEMIRSISE", strategy.short, comment="FEMIRSISE")
        strategy.close("FEMIRSILE")
        strategy.close("FEMIMACDLE")
        strategy.close("FEMIADXLE")
        strategy.close("FEMIBBLE")
    
    if (crossunder(sig, adxThreshold) and crossunder(delta, MACDZero) and crossunder(source, upper)) // crossover(delta, MACDZero) crossover(vrsi, overSold) crossover(sig, adxThreshold)
        strategy.close("FEMIRSILE")
        strategy.close("FEMIMACDLE")
        strategy.close("FEMIADXLE")
        strategy.close("FEMIBBLE")
        
    // if(crossunder(source, upper))
    //     strategy.close("FEMIRSILE")
    //     strategy.close("FEMIMACDLE")
    //     strategy.close("FEMIADXLE")
    //     strategy.close("FEMIBBLE")
        // strategy.entry("FEMIADXSE", strategy.short, comment="FEMIADXSE")
    // else
    //     strategy.cancel(id="FEMISE")

// plot(sig, color=red, title="ADX", linewidth=2, style=areabr)
// plot(adxThreshold, color=blue, title="ADX")


// plot(vrsi, color=green, title="RSI", linewidth=2, style=areabr)
// plot(overSold, color=blue, title="RSI")
// plot(overBought, color=red, title="RSI")

// plot(delta, color=green, title="MACD", linewidth=2, style=areabr)
// plot(MACDZero, color=blue, title="MACD")
// plot(overBought, color=red, title="MACD")
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)

مزید