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

ملٹی ٹیکنیکل انڈیکیٹر رجحان آر ایس آئی مومنٹم فلٹر کے ساتھ حکمت عملی کے بعد

مصنف:چاؤ ژانگ، تاریخ: 2024-12-20 14:10:43
ٹیگز:ای ایم اےآر ایس آئیاے ٹی آرایس ایم اےایم اے سی ڈی

img

جائزہ

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

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

حکمت عملی ٹریڈنگ سگنل کا تعین کرنے کے لئے ایک ٹرپل فلٹرنگ میکانزم کا استعمال کرتی ہے:

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

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

حکمت عملی کے فوائد

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

حکمت عملی کے خطرات

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

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

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

خلاصہ

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


/*backtest
start: 2024-11-19 00:00:00
end: 2024-12-18 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title="Supertrend + EMA Crossover with RSI Filter", shorttitle="ST_EMA_RSI", overlay=true)

// Input parameters for EMA
fastEMA          = input.int(3,  title="Fast EMA Period", minval=1)
slowEMA          = input.int(6,  title="Slow EMA Period", minval=1)
atrLength        = input.int(3,  title="ATR Length", minval=1)

// Using a fixed multiplier for Supertrend calculation
stMultiplier = 1

// Stop loss and take profit multipliers
stopLossATR      = input.float(2.5, title="Stop Loss ATR Multiplier", minval=0.1, step=0.1)
takeProfitATR    = input.float(4,   title="Take Profit ATR Multiplier", minval=0.1, step=0.1)

// RSI inputs
rsiLength      = input.int(10, title="RSI Length", minval=1)
rsiOverbought  = input.float(65, title="RSI Overbought Level", minval=50.0, maxval=100.0)
rsiOversold    = input.float(30.0, title="RSI Oversold Level",   minval=0.0, maxval=50.0)

// Declare the RSI plot toggle input as a global variable
bool rsiPlotEnabled = input.bool(true, title="Show RSI in separate panel")

// Time filter inputs
i_startTime = input(title="Start Filter", defval=timestamp("01 Jan 2023 13:30 +0000"), group="Time Filter", tooltip="Start date & time to begin searching for setups")
i_endTime   = input(title="End Filter",   defval=timestamp("28 Apr 2099 19:30 +0000"), group="Time Filter", tooltip="End date & time to stop searching for setups")

// Date/time filtering logic
inDateRange = true

// Calculate EMAs
fastEMALine = ta.ema(close, fastEMA)
slowEMALine = ta.ema(close, slowEMA)

// Calculate ATR
atr = ta.atr(atrLength)

// Calculate Supertrend using fixed multiplier
up = high - (stMultiplier * atr)
dn = low +  (stMultiplier * atr)

var float trendUp = na
var float trendDown = na
var int trend = na

trendUp   := na(trendUp[1])   ? up : (close[1] > trendUp[1]   ? math.min(up, trendUp[1])   : up)
trendDown := na(trendDown[1]) ? dn : (close[1] < trendDown[1] ? math.max(dn, trendDown[1]) : dn)

trend := close > nz(trendUp[1]) ? 1 : close < nz(trendDown[1]) ? -1 : nz(trend[1], 1)
supertrend = trend == 1 ? trendUp : trendDown

// Calculate RSI
myRSI = ta.rsi(close, rsiLength)

// Entry conditions with RSI filter
longEntryCondition  = ta.crossover(fastEMALine, slowEMALine) and (trend == 1) and (myRSI < rsiOverbought)
shortEntryCondition = ta.crossunder(fastEMALine, slowEMALine) and (trend == -1) and (myRSI > rsiOversold)

// Strategy entries
if inDateRange and longEntryCondition and strategy.position_size <= 0
    strategy.entry("Long", strategy.long)

if inDateRange and shortEntryCondition and strategy.position_size >= 0
    strategy.entry("Short", strategy.short)

// Stops and targets
if strategy.position_size > 0
    longStopLoss   = strategy.position_avg_price - stopLossATR * atr
    longTakeProfit = strategy.position_avg_price + takeProfitATR * atr
    strategy.exit("Long SL/TP", "Long", stop=longStopLoss, limit=longTakeProfit)

if strategy.position_size < 0
    shortStopLoss   = strategy.position_avg_price + stopLossATR * atr
    shortTakeProfit = strategy.position_avg_price - takeProfitATR * atr
    strategy.exit("Short SL/TP", "Short", stop=shortStopLoss, limit=shortTakeProfit)

// Plot EMAs and Supertrend
plot(fastEMALine, title="Fast EMA", color=color.new(color.blue, 0))
plot(slowEMALine, title="Slow EMA", color=color.new(color.red, 0))
plot(trend == 1 ? supertrend : na, title="Supertrend Up", color=color.green, style=plot.style_linebr)
plot(trend == -1 ? supertrend : na, title="Supertrend Down", color=color.red, style=plot.style_linebr)

// Plot RSI and hlines
plot(rsiPlotEnabled ? myRSI : na, title="RSI", color=color.new(color.purple, 0))
hline(rsiOverbought, "Overbought", color=color.red, linestyle=hline.style_dotted)
hline(rsiOversold,   "Oversold",   color=color.green, linestyle=hline.style_dotted)

// Plot entry signals
plotshape(longEntryCondition, title="Long Entry Signal", style=shape.triangleup, location=location.belowbar, size=size.tiny, color=color.new(color.green, 0))
plotshape(shortEntryCondition, title="Short Entry Signal", style=shape.triangledown, location=location.abovebar, size=size.tiny, color=color.new(color.red, 0))


متعلقہ

مزید