ڈبل موونگ ایوریج گولڈن کراس اور ڈیتھ کراس حکمت عملی پر مبنی


تخلیق کی تاریخ: 2024-02-27 16:21:02 آخر میں ترمیم کریں: 2024-02-27 16:21:02
کاپی: 0 کلکس کی تعداد: 686
1
پر توجہ دیں
1617
پیروکار

ڈبل موونگ ایوریج گولڈن کراس اور ڈیتھ کراس حکمت عملی پر مبنی

جائزہ

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

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

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

سب سے پہلے ، ہم دو سیٹوں کے حساب لگاتے ہیں:

  • پہلا تیز رفتار ای ایم اے، 8 دن کی مدت
  • تیز رفتار ای ایم اے کا دوسرا مرحلہ، 21 دن
  • سست رفتار ایس ایم اے کا پہلا گروپ، 50 دن کی مدت
  • سست رفتار SMA کا دوسرا گروپ، 200 دن

اس کے بعد ، فیصلہ کریں کہ آیا فاسٹ ای ایم اے نے گولڈ فورک یا ڈیڈ فورک سست SMA کیا ہے:

  • اگر ہم 50 دن کے ایس ایم اے کو 8 دن کے ای ایم اے پر عبور کرتے ہیں تو ، یہ سنہری کانٹا ہے۔
  • اگر 8 دن کے ای ایم اے کے نیچے 50 دن کے ایس ایم اے کو عبور کیا جائے تو ، یہ ایک ڈیڈ فورک سگنل ہے۔

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

  • ٹریڈنگ سگنل صرف اس وقت جاری کیا جاتا ہے جب 21 ویں ای ایم اے بھی 50 ویں ایس ایم اے کے اوپر یا نیچے ہو

اس طرح، دو سیٹ تیز رفتار اور مساوی لائن کی تصدیق کے ذریعے، بہت سے جعلی سگنل کو فلٹر کیا جا سکتا ہے، جس سے سگنل کی وشوسنییتا میں اضافہ ہوتا ہے.

جب فیصلہ خریدنے کا اشارہ کرتا ہے تو ، زیادہ اندراج کریں۔ جب فیصلہ بیچنے کا اشارہ کرتا ہے تو ، اندراج کرنا۔

اس کے علاوہ ، اس حکمت عملی میں ایک اسٹاپ اسٹاپ لوجسٹک بھی ہے۔ جب پوزیشن رکھی جاتی ہے تو ، اس کی تعیناتی کے مطابق اسٹاپ اور اسٹاپ نقصان کی قیمتوں کا سراغ لگایا جاتا ہے۔

طاقت کا تجزیہ

اس حکمت عملی کے درج ذیل فوائد ہیں:

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

خطرے کا تجزیہ

اس حکمت عملی کے کچھ خطرات بھی ہیں:

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

خطرے کو کنٹرول کرنے کے لئے، یہ مشورہ دیا جاتا ہے:

  1. مارکیٹ کے مختلف حالات کے مطابق پیرامیٹرز کے مجموعے کو مناسب طریقے سے ایڈجسٹ کرنا
  2. حکمت عملی کو ہدف کی مارکیٹ کے مطابق بنانے کے لئے نتائج پر مبنی اصلاحی پیرامیٹرز
  3. اسٹاپ نقصان کی ترتیب کو کنٹرول کرنے کے لئے واحد نقصان کی مقدار

اصلاح کی سمت

اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:

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

خلاصہ کریں۔

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

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © JMLSlop

//@version=4

src = close
strategy("Crossover moving averages", shorttitle="Cross MA-EMA", overlay=true, calc_on_order_fills=false)

// first fast EMA
len = input(8, "Length", type=input.integer, minval=1)
doma1 = input(true, title="EMA")
out1 = ema(src, len) 

//Second fast EMA
len2 = input(21, minval=1, title="Length")
doma2 = input(true, title="EMA")
out2 = ema(src, len2)

//First slow MA
len3 = input(50, minval=1, title="Length")
doma3 = input(true, title="SMA")
out3 = sma(src, len3)

//Second slow MA
len4 = input(200, minval=1, title="Length")
doma4 = input(true, title="SMA")
out4 = sma(src, len4)

// Profit
profit = input(8, "Profit/lost %", type=input.float, minval=1) * 0.01


plot(doma1 and out1 ? out1: na, color=color.blue, linewidth=1, title="1st EMA")
plot(doma2 and out2 ? out2: na, color=color.red, linewidth=1, title="2nd EMA")
plot(doma3 and out3 ? out3: na, color=color.green, linewidth=2, title="1st MA")
plot(doma4 and out4 ? out4: na, color=color.orange, linewidth=3, title="2nd MA")

// Orders config
takeProfitPrice =
     (strategy.position_size > 0) ? strategy.position_avg_price + open*profit : (strategy.position_size < 0) ? strategy.position_avg_price - (open*profit) : na

longStopPrice  = strategy.position_avg_price * (1 - profit)
shortStopPrice = strategy.position_avg_price * (1 + profit)

longCondition2 = (out2>out3 and (crossover(out1, out4) or crossover(out1[1], out4[1]) or crossover(out1[2], out4[2]) or (crossover(out1[3], out4[3]))) or (out2>out3 and (crossover(out1, out3) or crossover(out1[1], out3[1]) or crossover(out1[2], out3[2]) or crossover(out1[3], out3[3]))))
if (longCondition2)
    strategy.entry("Enter L", strategy.long)

shortCondition2 = (out2<out3 and (crossunder(out1, out4) or crossunder(out1[1], out4[1]) or crossunder(out1[2], out4[2]) or crossunder(out1[3], out4[3]))) or (out2<out3 and (crossunder(out1, out3) or crossunder(out1[1], out3[1]) or crossunder(out1[2], out3[2]) or crossunder(out1[3], out3[3])))
if (shortCondition2)
    strategy.entry("Enter S", strategy.short)


if (strategy.position_size > 0)
    strategy.exit("Exit L", limit=takeProfitPrice, stop=longStopPrice)

if (strategy.position_size < 0)
    strategy.exit("Exit S", limit=takeProfitPrice, stop=shortStopPrice)