متعدد اشارے متحرک طور پر ٹرینڈ بینڈ ٹریڈنگ کی حکمت عملی کو ٹریک کرتے ہیں۔

EMA RSI ADX ATR TP SL
تخلیق کی تاریخ: 2025-02-18 14:02:44 آخر میں ترمیم کریں: 2025-02-18 14:02:44
کاپی: 2 کلکس کی تعداد: 327
1
پر توجہ دیں
1617
پیروکار

متعدد اشارے متحرک طور پر ٹرینڈ بینڈ ٹریڈنگ کی حکمت عملی کو ٹریک کرتے ہیں۔

یہ ایک ٹرینڈ ٹریکنگ حکمت عملی ہے جو متعدد تکنیکی اشارے پر مبنی ہے ، جس میں متحرک طور پر ایڈجسٹ کرنے والے ہولڈرز کے ذریعہ بینڈ ٹریڈنگ کی اجازت دی جاتی ہے۔ اس حکمت عملی میں بنیادی طور پر مارکیٹ کے رجحانات کا تجزیہ کرنے اور ٹریڈنگ سگنل تیار کرنے کے لئے انڈیکس کی متحرک اوسط ((EMA) ، نسبتا strong مضبوط اشارے ((RSI) اور رجحان کی سمت کا اشارہ ((ADX) استعمال کیا جاتا ہے ، جبکہ متحرک اسٹاپ نقصان اور منافع کے اہداف کو قائم کرنے کے لئے حقیقی اتار چڑھاؤ کی چوڑائی ((ATR) کا استعمال کیا جاتا ہے۔

حکمت عملی کا جائزہ

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

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

  1. انٹری سگنل: جب قیمت اوپر سے EMA گزرے اور RSI> 50 ہو ، اور ADX مقررہ حد سے زیادہ ہو تو ، کثیر سگنل پیدا کریں۔ جب قیمت نیچے سے EMA گزرے اور RSI <50 ہو ، اور ADX مقررہ حد سے زیادہ ہو تو ، خالی سگنل پیدا کریں۔
  2. پوزیشن مینجمنٹ: پوزیشن کھولنے کی رقم کا حساب صارف کے منتخب کردہ طریقہ کار کے مطابق کیا جاتا ہے ، جس میں چار طریقوں کی حمایت کی جاتی ہے جن میں خطرہ تناسب ، فنڈ تناسب ، فکسڈ فنڈ کی رقم اور فکسڈ معاہدوں کی تعداد شامل ہے۔
  3. خطرے کا کنٹرول: اے ٹی آر کا استعمال کرتے ہوئے متحرک طور پر اسٹاپ نقصان اور منافع کے اہداف کا حساب لگائیں ، اور اس کے ساتھ ہی ٹریکنگ اسٹاپ نقصان کی حفاظت سے حاصل ہونے والے منافع کو بھی حاصل کریں۔

طاقت کا تجزیہ

  1. کثیر جہتی رجحان کی تصدیق: ای ایم اے ، آر ایس آئی اور اے ڈی ایکس ٹرپل اشارے کے ذریعہ رجحان کی تصدیق ، تجارتی سگنل کی وشوسنییتا کو بہتر بنانا۔
  2. لچکدار پوزیشن مینجمنٹ: مختلف تاجروں کی ضروریات کو پورا کرنے کے لئے متعدد پوزیشن حساب کتاب کے طریقوں کی حمایت کرتا ہے۔
  3. متحرک رسک مینجمنٹ: اے ٹی آر پر مبنی متحرک اسٹاپ نقصان اور منافع کے اہداف کی ترتیب ، جو مارکیٹ میں اتار چڑھاؤ کی تبدیلیوں کے مطابق ہے۔
  4. ٹریلنگ اسٹاپ: ٹریلنگ اسٹاپ کے ذریعہ حاصل شدہ منافع کو بچانے اور مجموعی منافع کو بہتر بنانے کے لئے۔

خطرے کا تجزیہ

  1. تاخیر کا خطرہ: تکنیکی اشارے میں تاخیر کا خطرہ ہے ، جس کی وجہ سے داخلے میں تاخیر ہوسکتی ہے۔
  2. اتار چڑھاؤ کی مارکیٹ کا خطرہ: اکثر غلط سگنل افقی اتار چڑھاؤ کی مارکیٹ میں پیدا ہوسکتے ہیں۔
  3. پیرامیٹر حساسیت: متعدد اشارے پیرامیٹرز کے انتخاب سے حکمت عملی کی کارکردگی پر نمایاں اثر پڑتا ہے۔
  4. لیوریج کا خطرہ: زیادہ سے زیادہ لیوریج کی حمایت میں زیادہ مالیاتی خطرہ ہوسکتا ہے۔

اصلاح کی سمت

  1. مارکیٹ کے ماحول کو اپنانے: مارکیٹ کے ماحول کی شناخت کے لئے ایک میکانزم شامل کیا جاسکتا ہے ، جس میں مختلف مارکیٹ کے حالات میں پیرامیٹرز کو متحرک طور پر ایڈجسٹ کیا جاسکتا ہے۔
  2. سگنل فلٹرنگ: ٹریفک کی مقدار جیسے معاون اشارے متعارف کرانے ، سگنل کے معیار کو بہتر بنانے کے لئے
  3. روک تھام کو بہتر بنانا: منافع بخش بنانے کے لئے زیادہ لچکدار بیچ روک تھام کے طریقہ کار کو ڈیزائن کیا جاسکتا ہے۔
  4. خطرے کے کنٹرول میں اضافہ: خطرے کے انتظام کے طریقہ کار جیسے زیادہ سے زیادہ واپسی کے کنٹرول میں اضافہ۔

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2025-02-10 00:00:00
end: 2025-02-17 00:00:00
period: 45m
basePeriod: 45m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMA Momentum Scalper", shorttitle="EMS", overlay=true, pyramiding=0)

// === ПАРАМЕТРЫ ===
posSizeMethod = input.string("Capital %", title="Метод расчета позиции", options=["% Based", "Capital %", "Fixed Capital Based", "Fixed Contract Size"])
riskPerTrade = input.float(3, title="Риск на сделку (%)", minval=0.1, maxval=100, step=0.5) / 100
capitalPctPerTrade = input.float(10, title="Доля капитала на сделку (%)", minval=0.1, maxval=100, step=0.5) / 100
fixedCapitalAmount = input.float(100, title="Фиксированная сумма капитала", minval=0)
fixedContractSize = input.int(10, title="Фиксированный размер контракта")
atrLength = input.int(14, title="Длина ATR")
atrMultiplierSL = input.float(2.5, title="ATR множитель для SL")
atrMultiplierTP = input.float(1.5, title="ATR множитель для TP")
timeoutBars = input.int(20, title="Выход через X баров, если нет TP/SL")
emaLength = input.int(50, title="Длина EMA")
rsiLength = input.int(14, title="Длина RSI")
rsiOverbought = input.int(70, title="RSI перекупленность")
rsiOversold = input.int(30, title="RSI перепроданность")
adxLength = input.int(14, title="Длина ADX")
adxThreshold = input.float(20, title="Порог ADX для тренда")
leverage = input.int(15, title="Плечо", minval=1, maxval=100)

// === ИНДИКАТОРЫ ===
atr = ta.atr(atrLength)
ema = ta.ema(close, emaLength)
rsi = ta.rsi(close, rsiLength)

// === ADX ===
diPlus = ta.rma(math.max(high - high[1], 0), adxLength)
diMinus = ta.rma(math.max(low[1] - low, 0), adxLength)
dx = 100 * math.abs(diPlus - diMinus) / (diPlus + diMinus)
adx = ta.rma(dx, adxLength)

// === УСЛОВИЯ ВХОДА ===
longEntry = ta.crossover(close, ema) and rsi > 50 and adx > adxThreshold
shortEntry = ta.crossunder(close, ema) and rsi < 50 and adx > adxThreshold

// === РАСЧЕТ РАЗМЕРА ПОЗИЦИИ ===
var float qty = na
riskAmount = strategy.equity * riskPerTrade
stopLossDistance = atr * atrMultiplierSL
positionSize = riskAmount / stopLossDistance

if (posSizeMethod == "% Based")
    qty := strategy.equity * riskPerTrade / (atr * atrMultiplierSL)
else if (posSizeMethod == "Capital %")
    qty := strategy.equity * capitalPctPerTrade / close
else if (posSizeMethod == "Fixed Capital Based")
    qty := fixedCapitalAmount / close
else if (posSizeMethod == "Fixed Contract Size")
    qty := fixedContractSize

qty := qty * leverage  // Умножаем на плечо

// === СТОП-ЛОСС И ТЕЙК-ПРОФИТ ===
entryPrice = close
stopLossLong = entryPrice - atrMultiplierSL * atr
stopLossShort = entryPrice + atrMultiplierSL * atr
takeProfit1 = entryPrice + atrMultiplierTP * atr * (longEntry ? 1 : -1)
takeProfit2 = entryPrice + atrMultiplierTP * atr * (longEntry ? 2 : -2) / 1.5

// === ТРЕЙЛИНГ-СТОП ===
trailStopDistance = atr * atrMultiplierSL

if (longEntry)
    strategy.entry("Long", strategy.long, qty=qty)
    strategy.exit("Exit Long", "Long", stop=stopLossLong, limit=takeProfit1, trail_points=trailStopDistance)
    alertMessage = syminfo.ticker + " LONG\n" +
                   "Leverage: Cross " + str.tostring(leverage) + "x\n" +
                   "➡️ Entry: " + str.tostring(entryPrice) + "\n" +
                   "🟢 Take profit 1: " + str.tostring(takeProfit1) + "\n" +
                   "🛑 Stop loss: " + str.tostring(stopLossLong)
    alert(alertMessage, alert.freq_once_per_bar_close)

if (shortEntry)
    strategy.entry("Short", strategy.short, qty=qty)
    strategy.exit("Exit Short", "Short", stop=stopLossShort, limit=takeProfit1, trail_points=trailStopDistance)
    alertMessage = syminfo.ticker + " SHORT\n" +
                   "Leverage: Cross " + str.tostring(leverage) + "x\n" +
                   "➡️ Entry: " + str.tostring(entryPrice) + "\n" +
                   "🟢 Take profit 1: " + str.tostring(takeProfit1) + "\n" +
                   "🛑 Stop loss: " + str.tostring(stopLossShort)
    alert(alertMessage, alert.freq_once_per_bar_close)

// === ВИЗУАЛИЗАЦИЯ ===
plotshape(longEntry, color=color.green, style=shape.labelup, location=location.belowbar, text="BUY")
plotshape(shortEntry, color=color.red, style=shape.labeldown, location=location.abovebar, text="SELL")
plot(ema, color=color.blue, title="EMA")
bgcolor(rsi > rsiOverbought or rsi < rsiOversold ? color.new(color.gray, 80) : na)