مومنٹم انڈیکیٹر کراس اوور ڈائنامک اسٹاپ نقصان کی حکمت عملی


تخلیق کی تاریخ: 2024-02-29 13:55:16 آخر میں ترمیم کریں: 2024-02-29 13:55:16
کاپی: 0 کلکس کی تعداد: 671
1
پر توجہ دیں
1617
پیروکار

مومنٹم انڈیکیٹر کراس اوور ڈائنامک اسٹاپ نقصان کی حکمت عملی

جائزہ

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

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

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

طاقت کا تجزیہ

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

خطرے کا تجزیہ

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

اصلاح کی سمت

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-02-22 00:00:00
end: 2024-02-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Combined EMA and DMI Strategy with Enhanced Table", overlay=true)

// Input parameters for EMA
shortTermEMA = input.int(9, title="Short-Term EMA Period")
longTermEMA = input.int(21, title="Long-Term EMA Period")
riskPercentageEMA = input.float(1, title="Risk Percentage EMA", minval=0.1, maxval=5, step=0.1)

// Calculate EMAs
emaShort = ta.ema(close, shortTermEMA)
emaLong = ta.ema(close, longTermEMA)

// EMA Crossover Strategy
longConditionEMA = emaShort > emaLong and emaShort[1] <= emaLong[1]
shortConditionEMA = emaShort < emaLong and emaShort[1] >= emaLong[1]

// Input parameters for DMI
adxlen = input(17, title="ADX Smoothing")
dilen = input(17, title="DI Length")

// DMI Logic
dirmov(len) =>
    up = ta.change(high)
    down = -ta.change(low)
    truerange = ta.tr
    plus = fixnan(100 * ta.rma(up > down and up > 0 ? up : 0, len) / truerange)
    minus = fixnan(100 * ta.rma(down > up and down > 0 ? down : 0, len) / truerange)
    [plus, minus]

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

[adxValue, up, down] = adx(dilen, adxlen)

// DMI Conditions
buyConditionDMI = up > down or (up and adxValue > down)
sellConditionDMI = down > up or (down and adxValue > up)

// Combined Conditions for Entry
longEntryCondition = longConditionEMA and buyConditionDMI
shortEntryCondition = shortConditionEMA and sellConditionDMI

// Combined Conditions for Exit
longExitCondition = shortConditionEMA
shortExitCondition = longConditionEMA

// Enter long trade based on combined conditions
if (longEntryCondition)
    strategy.entry("Long", strategy.long)

// Enter short trade based on combined conditions
if (shortEntryCondition)
    strategy.entry("Short", strategy.short)

// Exit trades
if (longExitCondition)
    strategy.close("Long")

if (shortExitCondition)
    strategy.close("Short")

// Plot EMAs
plot(emaShort, color=color.blue, title="Short-Term EMA")
plot(emaLong, color=color.red, title="Long-Term EMA")

// Create and fill the enhanced table
var tbl = table.new(position.top_right, 4, 1)
if (barstate.islast)
    table.cell(tbl, 0, 0, "ADX: " + str.tostring(adxValue), bgcolor=color.new(color.red, 90), width=15, height=4)
    table.cell(tbl, 1, 0, "+DI: " + str.tostring(up), bgcolor=color.new(color.blue, 90), width=15, height=4)
    table.cell(tbl, 2, 0, "-DI: " + str.tostring(down), bgcolor=color.new(color.orange, 90), width=15, height=4)