ایک سے زیادہ ایکسپونیشنل موونگ ایوریج کراس اوور ٹرینڈ فلٹر ٹریڈنگ کی حکمت عملی

EMA 指数移动平均线 趋势过滤 固定资金 交叉信号 百分比止盈止损
تخلیق کی تاریخ: 2025-05-20 15:31:26 آخر میں ترمیم کریں: 2025-05-20 15:31:26
کاپی: 0 کلکس کی تعداد: 332
2
پر توجہ دیں
319
پیروکار

ایک سے زیادہ ایکسپونیشنل موونگ ایوریج کراس اوور ٹرینڈ فلٹر ٹریڈنگ کی حکمت عملی ایک سے زیادہ ایکسپونیشنل موونگ ایوریج کراس اوور ٹرینڈ فلٹر ٹریڈنگ کی حکمت عملی

جائزہ

ایک سے زیادہ اشاریہ چلنے والی اوسط کراس ٹرینڈ فلٹرنگ ٹریڈنگ حکمت عملی ایک خودکار تجارتی نظام ہے جو کثیر دورانیہ ای ایم اے ((6 ، 14 ، 50 ، 200) اشارے پر مبنی ہے۔ یہ حکمت عملی مختصر مدت کے ای ایم اے ((6 اور 14) کے کراس سگنل کو تجارت کے داخلے کے لئے استعمال کرتی ہے ، جبکہ طویل مدتی ای ایم اے ((50 اور 200) کے ذریعہ مارکیٹ کے رجحان کی سمت کی تصدیق کرتی ہے ، اس طرح تجارت کی کامیابی کی شرح میں اضافہ ہوتا ہے۔ اس حکمت عملی میں خاص طور پر مقررہ USDT رقم کی پوزیشن مینجمنٹ کا ڈیزائن کیا گیا ہے ، جو خطرے پر قابو پانے کے لئے فیصد اسٹاپ نقصان کے طریقہ کار کے ساتھ ہے۔ اس کے علاوہ ، اس حکمت عملی میں رجحان کی شدت کی حد سے تجاوز کی شرط بھی شامل کی گئی ہے ، جس میں ای ایم اے 50 اور ای ایم اے 200 کے مابین کم سے کم فیصد فرق کی ضرورت ہوتی ہے ، اس بات کو یقینی بنانا ہے کہ صرف کافی مضبوط رجحان کے ماحول میں ہی تجارت ہو۔

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

اس حکمت عملی کا بنیادی منطق ایک کثیر سطحی اشاریہ منتقل اوسط سگنل کی تصدیق کے نظام پر مبنی ہے:

  1. بنیادی سگنل کی پیداوار: ای ایم اے 6 اور ای ایم اے 14 کے کراس کو ابتدائی ٹریڈنگ سگنل کے طور پر استعمال کریں۔ جب ای ایم اے 6 ای ایم اے 14 کو اوپر کی طرف سے پار کرتا ہے تو کثیر سگنل پیدا ہوتا ہے۔ جب ای ایم اے 6 ای ایم اے 14 کو نیچے کی طرف سے پار کرتا ہے تو خالی سگنل پیدا ہوتا ہے۔

  2. رجحانات کی تصدیق: ای ایم اے 50 اور ای ایم اے 200 کی نسبت کی پوزیشن کے ذریعہ مارکیٹ کا فیصلہ اہم رجحان۔ جب ای ایم اے 50 ای ایم اے 200 سے بڑا ہوتا ہے تو اس کی تصدیق ہوتی ہے۔ جب ای ایم اے 50 ای ایم اے 200 سے چھوٹا ہوتا ہے تو اس کی تصدیق ہوتی ہے۔

  3. رجحان کی طاقت فلٹرنگ: EMA50 اور EMA200 کے درمیان فی صد فرق کا حساب لگائیں ، صرف اس صورت میں جب فرق صارف کے مقرر کردہ کم سے کم (ڈیفالٹ 1.0٪) سے زیادہ یا اس کے برابر ہو ، اس رجحان کو تجارت کی اجازت دینے کے لئے کافی مضبوط سمجھا جائے گا۔

  4. قیمت کی پوزیشن فلٹر: EMA50 اور EMA200 کے سلسلے میں موجودہ قیمت کی پوزیشن کے مطابق اضافی فلٹرنگ۔ زیادہ کرنے کے لئے ، قیمت EMA50 سے زیادہ یا EMA50 اور EMA200 کے درمیان “علاقے” میں ہونی چاہئے۔ خالی کرنے کے لئے ، قیمت EMA200 سے کم یا EMA50 اور EMA200 کے درمیان “علاقے” میں ہونی چاہئے۔

  5. پوزیشن مینجمنٹ: پوزیشن سائز کے لئے دو طریقوں کی حمایت کرتا ہے - فی صد موڈ ((اکاؤنٹ کے حقوق اور فوائد کا مقررہ فیصد) یا USDT کی مقررہ رقم کا موڈ ، اور لیوریج پیرامیٹرز کے ذریعہ اصل تجارت کے سائز کو ایڈجسٹ کیا جاسکتا ہے۔

  6. باہر نکلنے کی حکمت عملیدو اسٹاپ موڈس کی فراہمی - فی صد اسٹاپ یا ای ایم اے کراس اسٹاپ ، جبکہ فکسڈ فی صد اسٹاپ کا استعمال کرتے ہوئے فنڈز کی حفاظت کریں۔

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

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

  2. رجحان کی طاقت کی شناخت: EMA کے درمیان فی صد فرق کا حساب لگانا ، اس بات کو یقینی بنانا کہ صرف کافی مضبوط رجحانات میں ہی تجارت کی جائے ، اور افقی مارکیٹوں میں بار بار تجارت اور نقصان سے بچیں۔

  3. لچکدار داخلہ زونحکمت عملی: “علاقائی تجارت” میں داخلے کی اجازت دیتا ہے ، یعنی قیمتیں اہم رجحانات کی سمت میں واپسی کے فاصلے پر (EMA50 اور EMA200 کے درمیان) ، جس سے بہتر داخلے کی قیمتوں کو حاصل کرنے میں مدد ملتی ہے۔

  4. فنڈز کے انتظام میں لچک: فیصد یا فکسڈ رقم دونوں پوزیشن مینجمنٹ موڈ کی حمایت کرتا ہے ، جو مختلف اکاؤنٹ کے سائز اور خطرے کی ترجیحات والے تاجروں کے لئے موزوں ہے۔

  5. خود کار طریقے سے سٹاپ نقصان: بلٹ ان فی صد سٹاپ نقصان کا طریقہ کار ، خود کار طریقے سے خطرے پر قابو پانے ، انسانی جذباتی مداخلت سے بچنے ، اور ٹریڈنگ فنڈز کی حفاظت۔

  6. انتباہ کے افعال انٹیگریشن: alertcondition کے ذریعہ نافذ کردہ فکسڈ فارمیٹ الرٹ فنکشن ، بیرونی نظام سے جوڑنے یا دستی تجارت میں معاونت کے لئے آسان ہے۔

اسٹریٹجک رسک

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

  2. فکسڈ پیرامیٹرز کے ساتھ مطابقت پذیری کے مسائل: حکمت عملی میں فکسڈ ای ایم اے کی مدت ((6، 14، 50، 200) تمام مارکیٹ کے حالات یا وقت کی مدت کے لئے قابل اطلاق نہیں ہوسکتی ہے۔ یہ تجویز کی جاتی ہے کہ عملی استعمال سے پہلے ان پیرامیٹرز کو ایڈجسٹ کیا جائے تاکہ مارکیٹ کی مخصوص خصوصیات کو ایڈجسٹ کیا جاسکے۔

  3. فکسڈ فیصد سٹاپ نقصان کی حد: مارکیٹ میں اتار چڑھاؤ کی شرح میں تبدیلی کو مدنظر نہ رکھتے ہوئے ، ایک مقررہ فیصد اسٹاپ نقصان کا استعمال کریں۔ اعلی اتار چڑھاؤ والے ماحول میں اسٹاپ نقصان بہت کم ہوسکتا ہے ، اور کم اتار چڑھاؤ والے ماحول میں بہت زیادہ ہے۔ اسٹاپ نقصان کی سطح کو متحرک طور پر ایڈجسٹ کرنے کے لئے اے ٹی آر (حقیقی اتار چڑھاؤ کی اوسط) کا استعمال کرنے پر غور کریں۔

  4. ٹرینڈ ٹرننگ پوائنٹ کی کمزوری: اہم رجحانات کے موڑ کے قریب ، ای ایم اے کراس سگنل میں اکثر غلط سگنل ہوسکتے ہیں۔ اضافی تصدیق کے اشارے شامل کرنے کی سفارش کی جاتی ہے ، جیسے تجارت کا حجم ، جھٹکا اشارے یا قیمت کی شکل کا تجزیہ۔

  5. فنڈ مینجمنٹ کے خطرات: فکسڈ USDT ماڈل قیمتوں میں بڑے پیمانے پر اتار چڑھاؤ والے بازاروں میں پوزیشن کی غیر معقول مقدار کا سبب بن سکتا ہے۔ متحرک پوزیشن ایڈجسٹمنٹ میکانزم پر عمل درآمد پر غور کریں ، جس میں مارکیٹ کے خطرے کے مطابق ہر تجارت میں فنڈز کا تناسب ایڈجسٹ کیا جائے گا۔

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

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

  2. معاون توثیقی اشارے شامل کریں: اضافی تکنیکی اشارے متعارف کروائیں جیسے RSI ((نسبتی طاقت کا انڈیکس) ، MACD ((موبائل اوسط اختلافی اسپیڈسٹی) یا کراس سگنل کی تصدیق کے طور پر ، جعلی سگنل کی شرح کو کم کریں۔

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

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

  5. مارکیٹ کی حیثیت کی شناخت: مارکیٹ کی حالت کی درجہ بندی کے افعال کو شامل کریں (جیسے رجحان مارکیٹ ، ہلچل مارکیٹ) ، مختلف مارکیٹ کی حالت میں مختلف تجارتی پیرامیٹرز کا اطلاق کریں یا یہاں تک کہ کچھ مارکیٹ کی حالت سے مکمل طور پر گریز کریں۔

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

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

خلاصہ کریں۔

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

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

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

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

// @version=6
strategy("EMA sabit usdt ve Alarm)", overlay=true, margin_long=1, margin_short=1)

// —— GİRDİLER —— //
fastLen        = input.int(6,   "EMA6 Periyodu")
slowLen        = input.int(14,  "EMA14 Periyodu")
midLen         = input.int(50,  "EMA50 Periyodu")
longLen        = input.int(200, "EMA200 Periyodu")

tpMode         = input.string("Percent", "Take Profit Modu", options=["Percent", "EMA Cross"])
tpPerc         = input.float(2.0, "TP (%)", step=0.1)
slPerc         = input.float(7.0, "Stop Loss (%)", step=0.1)

orderSizeMode  = input.string("Percent", "Pozisyon Boyutu Modu", options=["Percent", "Fixed"])
orderSizePerc  = input.float(10.0, "Boyut (%)", minval=0.1, step=0.1)
orderSizeFixed = input.float(5.0,  "Boyut (Sabit) [USDT]", minval=0)

leverage       = input.int(1, "Kaldıraç", minval=1)

minEMAPct      = input.float(1.0, "%50–200 Min Fark", step=0.1)

// —— EMA HESAPLAMALARI —— //
ema6   = ta.ema(close, fastLen)
ema14  = ta.ema(close, slowLen)
ema50  = ta.ema(close, midLen)
ema200 = ta.ema(close, longLen)

plot(ema6,   title="EMA 6",   linewidth=1)
plot(ema14,  title="EMA 14",  linewidth=1)
plot(ema50,  title="EMA 50",  linewidth=2)
plot(ema200, title="EMA 200", linewidth=2)

crossUp    = ta.crossover(ema6, ema14)
crossDown  = ta.crossunder(ema6, ema14)
priceAbove50  = close > ema50
priceBelow50  = close < ema50
priceAbove200 = close > ema200
priceBelow200 = close < ema200
upTrend    = ema50 > ema200
downTrend  = ema50 < ema200
zoneLong   = priceBelow50 and priceAbove200
zoneShort  = priceAbove50 and priceBelow200
emaDistPct = math.abs(ema50 - ema200) / ema200 * 100
strongTrend= emaDistPct >= minEMAPct

// —— KOŞULLAR —— //
longCond  = crossUp and upTrend and strongTrend and (priceAbove50 or zoneLong)
shortCond = crossDown and downTrend and strongTrend and (priceBelow200 or zoneShort)

// —— POZİSYON MİKTARI —— //
var float qty = na
if orderSizeMode == "Percent"
    qty := strategy.equity * (orderSizePerc/100) * leverage
else
    qty := (orderSizeFixed / close) * leverage

// —— SİNYAL KOŞULLARI — statik mesajlar —— //
alarmLongID  = "EMA_Long_Signal"
alarmShortID = "EMA_Short_Signal"

// —— GİRİŞLER —— //
if longCond
    strategy.entry("Long", strategy.long, qty=qty)
    label.new(bar_index, high, text="Long", yloc=yloc.abovebar)

if shortCond
    strategy.entry("Short", strategy.short, qty=qty)
    label.new(bar_index, low, text="Short", yloc=yloc.belowbar)

// —— ALERTCONDITION ile sabit mesaj —— //
alertcondition(longCond, title="Long Alarm", message=alarmLongID)
alertcondition(shortCond, title="Short Alarm", message=alarmShortID)

// ÇIKIŞLAR (TP/SL) —— //
if tpMode == "Percent"
    if strategy.position_size > 0
        slPrice = strategy.position_avg_price * (1 - slPerc/100)
        tpPrice = strategy.position_avg_price * (1 + tpPerc/100)
        strategy.exit("Exit Long", from_entry="Long", stop=slPrice, limit=tpPrice)
    if strategy.position_size < 0
        slPrice = strategy.position_avg_price * (1 + slPerc/100)
        tpPrice = strategy.position_avg_price * (1 - tpPerc/100)
        strategy.exit("Exit Short", from_entry="Short", stop=slPrice, limit=tpPrice)
else
    if strategy.position_size > 0
        slPrice = strategy.position_avg_price * (1 - slPerc/100)
        strategy.exit("Stop Long", from_entry="Long", stop=slPrice)
    if strategy.position_size < 0
        slPrice = strategy.position_avg_price * (1 + slPerc/100)
        strategy.exit("Stop Short", from_entry="Short", stop=slPrice)