ڈوئل موونگ ایوریج ٹرینڈ ٹریکنگ ٹریڈنگ سسٹم اور اڈاپٹیو ڈائنامک فلٹرنگ کی حکمت عملی

EMA MA HMA
تخلیق کی تاریخ: 2025-02-20 09:49:23 آخر میں ترمیم کریں: 2025-02-27 17:51:58
کاپی: 0 کلکس کی تعداد: 305
2
پر توجہ دیں
319
پیروکار

ڈوئل موونگ ایوریج ٹرینڈ ٹریکنگ ٹریڈنگ سسٹم اور اڈاپٹیو ڈائنامک فلٹرنگ کی حکمت عملی ڈوئل موونگ ایوریج ٹرینڈ ٹریکنگ ٹریڈنگ سسٹم اور اڈاپٹیو ڈائنامک فلٹرنگ کی حکمت عملی

جائزہ

یہ حکمت عملی ایک رجحان ٹریڈنگ سسٹم ہے جس میں متعدد تکنیکی اشارے شامل ہیں۔ یہ بنیادی طور پر سادہ منتقل اوسط ((SMA) اور اشاریہ منتقل اوسط ((EMA) کے کراس سگنل پر مبنی ہے اور متعدد اعلی درجے کی خصوصیات کو مربوط کرتا ہے جیسے ہل منتقل اوسط ((HMA) رجحان بینڈ ، ولیم اشارے ((%R) ، اتار چڑھاؤ کے اعلی اور کم تجزیہ ، متحرک فلٹرنگ میکانزم کے ذریعہ زیادہ قابل اعتماد تجارتی سگنل فراہم کرنے کے لئے۔

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

اس حکمت عملی کی بنیادی منطق مندرجہ ذیل اہم عناصر پر مبنی ہے:

  1. اہم رجحانات کے اشارے کے طور پر سائیکل 100 ایس ایم اے اور سائیکل 200 ای ایم اے کا استعمال کریں
  2. رجحان کی رفتار کی تصدیق کرنے کے لئے 70 سائیکلوں پر مشتمل HMA رجحان بینڈ استعمال کیا جاتا ہے
  3. ولیم اشارے ((٪ R) کا استعمال کرتے ہوئے متحرک حمایت / مزاحمت کی جگہ کا حساب کتاب
  4. 20 سائیکلوں کے ساتھ بیک اپ ونڈو کے ذریعے اعلی اور کم ہلچل کا پتہ لگانے
  5. ریئل ٹائم مانیٹرنگ اور اپ ڈیٹس
  6. غلط سگنل کو کم کرنے کے لئے اوپن ڈسک ابتدائی فلٹرنگ اور اتار چڑھاؤ کی شرح کی حد ((0.5٪) مقرر کریں

داخلہ کی شرائط کو ایک ہی وقت میں پورا کرنے کی ضرورت ہے: قیمت اسٹیشن پر دوہری اوسط لائن ،٪ R اشارے مسلسل 3 K لائنوں میں اضافہ اور 20 سے زیادہ ، K لائن بند اور اختتامی قیمت پچھلی لائن سے زیادہ ، قیمت دن کے اندر اتار چڑھاؤ کی کم قیمت سے زیادہ نہیں ہے۔ باہر نکلنے کی شرائط مندرجہ ذیل میں سے کسی ایک کو پورا کرتی ہیں: قیمت ڈبل میڈین لائن سے نیچے ہے۔ %R اشارے -80 سے کم ہے۔

اسٹریٹجک فوائد

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

اسٹریٹجک رسک

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

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

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2025-01-01 00:00:00
end: 2025-01-31 23:59:59
period: 30m
basePeriod: 30m
exchanges: [{"eid":"Binance","currency":"TRB_USDT"}]
*/

//@version=5
strategy(title="EMA & MA Crossover Strategy", shorttitle="EMA & MA Crossover Strategy", overlay=true)

// Inputs
LengthMA = input.int(100, minval=1, title="MA Length")
LengthEMA = input.int(200, minval=1, title="EMA Length")
swingLookback = input.int(20, title="Swing Lookback")
Lengthhmaribbon = input.int(70, minval=1, title="HMA Ribbon")
// Input for ignoring the first `n` candles of the day
ignore_n_candles = input.int(1, "Ignore First N Candles", minval=0)
// Input for percentage threshold to ignore high run-up candles
run_up_threshold = input.float(0.5, "Run-up Threshold (%)", minval=0.0)

//====================================================================
hmacondition = ta.hma(close,Lengthhmaribbon)> ta.hma(close,Lengthhmaribbon)[1]

//====================================================================
// Function to drop the first `n` candles
dropn(src, n) =>
    na(src[n]) ? na : src

// Request data with the first `n` candles dropped
valid_candle = not na(dropn(close, ignore_n_candles))
// Check for run-up condition on the previous candle
prev_run_up = (high[1] - low[1]) / low[1] * 100

// Combine conditions: exclude invalid candles and ignore high run-up candles
valid_entry_condition = valid_candle and prev_run_up <= run_up_threshold

//======================================================
// Define the start of a new day based on time
var is_first = false
var float day_high = na
var float day_low = na

// Use time() to detect the start of a new day
t = time("1440") // 1440 = 60 * 24 (one full day in minutes)
is_first := na(t[1]) and not na(t) or t[1] < t

if is_first and barstate.isnew
    day_high := high
    day_low := low
else
    day_high := nz(day_high[1], high)
    day_low := nz(day_low[1], low)

// Update daily high and low
if high > day_high
    day_high := high

if low < day_low
    day_low := low

//====================================================
previousdayclose = request.security(syminfo.tickerid, "D", close)

day_highrange = previousdayclose*.018
//======================================================
length = input(title="Length", defval=14)
src = input(close, "Source")
_pr(length) =>
	max = ta.highest(length)
	min = ta.lowest(length)
	100 * (src - max) / (max - min)
percentR = _pr(length)

//======================================================
higherline = close* 1+((100-(percentR*-1))/100)
lowerline = close* 1-((100-(percentR*-1))/100)
//======================================================
// Moving Averages
xMA = ta.sma(close, LengthMA)
xEMA = ta.sma(xMA, LengthEMA)

// Plot the MA and EMA lines
plot(xMA, color=color.red, title="MA")
plot(xEMA, color=color.blue, title="EMA")

// Find recent swing high and low
recentHigh = ta.highest(high, swingLookback)
recentLow = ta.lowest(low, swingLookback)
//===============================================
emacondition = ta.ema(close,20)>ta.ema(close,30) and ta.ema(close,30)>ta.ema(close,40) and ta.ema(close,40)>ta.ema(close,50) and close >ta.ema(close,20)
// Define Buy Condition
buyCondition1 = (percentR>percentR[1] and percentR[1]>percentR[2] and percentR[2]>percentR[3]) and percentR>-20 and percentR[1]>-20
buyCondition = (close> xMA and close> xEMA) and (close > open and close > close[1]) or xMA>xEMA and close<day_highrange and hmacondition and emacondition

// Define Sell Conditions
sellCondition = (close < xMA and close < xEMA) or xMA<xEMA or percentR<-80

// Strategy Execution
if (buyCondition and buyCondition1 and valid_entry_condition)
    strategy.entry("Buy", strategy.long)

if (sellCondition)
    strategy.close("Buy")  // Close the long position

// Candle coloring for buy/sell indication
barcolor(buyCondition ? color.green : sellCondition ? color.red : na)
plot(higherline, color=color.olive, title="EMA")
plot(higherline, color=color.black, title="EMA")