متحرک اڈاپٹیو مومینٹم بریک آؤٹ حکمت عملی

ATR EMA MOM
تخلیق کی تاریخ: 2024-07-29 14:36:32 آخر میں ترمیم کریں: 2024-07-29 14:36:32
کاپی: 0 کلکس کی تعداد: 464
1
پر توجہ دیں
1617
پیروکار

متحرک اڈاپٹیو مومینٹم بریک آؤٹ حکمت عملی

جائزہ

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

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

  1. متحرک سائیکل ایڈجسٹمنٹ:

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

    • متحرک سائیکل کا استعمال کرتے ہوئے محرک اشارے کی حساب سے.
    • آپ کو منتخب کر سکتے ہیں کہ آیا انجن EMA ہموار کرنے کے لئے، 7 سائیکل EMA استعمال کرنے کے لئے ڈیفالٹ .
  3. رجحانات کا تعین:

    • رجحانات کی سمت کا تعین کرنے کے لئے حرکیات کے سلپ کا حساب لگائیں ((موجودہ قیمت اور پچھلی قیمت کا فرق))
    • مثبت سلائیڈ اوپر کی طرف رجحان ظاہر کرتا ہے، منفی سلائیڈ نیچے کی طرف رجحان ظاہر کرتا ہے.
  4. شکل کی شناخت:

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

    • ملٹی ہیڈ سگنل: دیکھئے کہ کسٹم نگلنے کی شکل + مثبت حرکیات کی جھکاو۔
    • خالی سر سگنل: نیچے کی طرف گھومنے والی شکل + منفی حرکیات کا جھکاؤ
  6. ٹرانزیکشن مینجمنٹ:

    • سگنل کی تصدیق کے بعد اگلے K لائن کھلنے پر داخل ہوں۔
    • فکسڈ ہولڈنگ سائیکل ((ڈیفالٹ 3 K لائن) کے بعد خود کار طریقے سے صاف پوزیشن۔

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

  1. خود کو اپنانے کی صلاحیت:

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

    • تکنیکی اشارے ((حوصلہ افزائی) اور قیمت کی شکل ((سگھلنا) کے ساتھ مل کر ، سگنل کی وشوسنییتا کو بہتر بنائیں۔
    • غلط سگنل کو کم کرنے کے لئے اسکیلپنگ اور جسمانی سائز کے فلٹر کا استعمال کریں۔
  3. ٹویٹر پر ایک صارف نے لکھا:

    • ٹرانسمیشن کے دوران، اس کے نتیجے کے طور پر، اس کے نتیجے کے طور پر، اس کے نتیجے کے طور پر، اس کے نتیجے کے طور پر، اس کے نتیجے میں.
    • اس کے علاوہ ، یہ بھی یقینی بناتا ہے کہ آپ کو نئے رجحانات میں داخل ہونے کی اجازت دی جائے۔
  4. خطرے کا انتظام:

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

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

اسٹریٹجک رسک

  1. جعلی دراندازی کا خطرہ:

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

    • ای ایم اے ہموار کرنے کے استعمال سے سگنل میں تاخیر ہوسکتی ہے ، جس سے بہترین داخلے کا مقام ضائع ہوجاتا ہے۔
    • تخفیف کا طریقہ: ای ایم اے کی مدت کو ایڈجسٹ کریں یا زیادہ حساس ہموار طریقہ استعمال کرنے پر غور کریں۔
  3. فکسڈ آپٹ آؤٹ میکانزم کی حدود:

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

    • حکمت عملی بڑے ٹائم فریم کے مجموعی رجحان کو نظر انداز کر سکتی ہے۔
    • تخفیف کا طریقہ: کثیر ٹائم فریم تجزیہ متعارف کروانا تاکہ تجارت کی سمت بڑے رجحانات کے مطابق ہو۔
  5. پیرامیٹر حساسیت:

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

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

  1. ملٹی ٹائم فریم انٹیگریشن:

    • بڑے ٹائم فریم کے رجحانات کا تعین کریں اور صرف اہم رجحانات کی سمت میں تجارت کریں۔
    • وجہ: تجارت کی مجموعی کامیابی کی شرح کو بہتر بنانا اور رجحان کے خلاف کارروائی سے بچنا۔
  2. متحرک سٹاپ نقصان:

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

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

    • مشین لرننگ الگورتھم کا استعمال کرتے ہوئے متحرک ایڈجسٹمنٹ پیرامیٹرز
    • وجہ: حکمت عملی کو عملی جامہ پہنانے اور طویل مدتی استحکام کو بہتر بنانے کے لیے مسلسل موافقت۔
  5. جذباتی اشارے کی مجموعی تعداد:

    • مارکیٹ کے جذبات کے اشارے جیسے VIX یا اختیارات کی موروثی اتار چڑھاؤ کو متعارف کروانا۔
    • اس کی وجہ یہ ہے کہ وہ انتہائی جذباتی حالات میں حکمت عملی کو تبدیل کرتے ہیں اور زیادہ تجارت سے گریز کرتے ہیں۔
  6. تجزیہ:

    • متعدد متعلقہ اثاثوں کی ہم آہنگ نقل و حرکت پر غور کریں۔
    • وجہ: سگنل کی وشوسنییتا کو بہتر بنانا اور مارکیٹ کے مضبوط رجحانات کی نشاندہی کرنا۔

خلاصہ کریں۔

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

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

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © ironperol
//@version=5
strategy("Adaptive Momentum Strategy", overlay=true, margin_long=100, margin_short=100)

// Input parameters for customization
src = input.source(close, title="Source")
min_length = input.int(10, minval=1, title="Minimum Length")
max_length = input.int(40, minval=1, title="Maximum Length")
ema_smoothing = input.bool(true, title="EMA Smoothing")
ema_length = input.int(7, title="EMA Length")
percent = input.float(2, title="Percent of Change", minval=0, maxval=100) / 100.0

// Separate body size filters for current and previous candles
min_body_size_current = input.float(0.5, title="Minimum Body Size for Current Candle (as a fraction of previous body size)", minval=0)
min_body_size_previous = input.float(0.5, title="Minimum Body Size for Previous Candle (as a fraction of average body size of last 5 candles)", minval=0)

close_bars = input.int(3, title="Number of Bars to Hold Position", minval=1) // User-defined input for holding period

//######################## Calculations ##########################

// Initialize dynamic length variable
startingLen = (min_length + max_length) / 2.0
var float dynamicLen = na
if na(dynamicLen)
    dynamicLen := startingLen

high_Volatility = ta.atr(7) > ta.atr(14)

if high_Volatility
    dynamicLen := math.max(min_length, dynamicLen * (1 - percent))
else
    dynamicLen := math.min(max_length, dynamicLen * (1 + percent))

momentum = ta.mom(src, int(dynamicLen))
value = ema_smoothing ? ta.ema(momentum, ema_length) : momentum

// Calculate slope as the difference between current and previous value
slope = value - value[1]

// Calculate body sizes
currentBodySize = math.abs(close - open)
previousBodySize = math.abs(close[1] - open[1])

// Calculate average body size of the last 5 candles
avgBodySizeLast5 = math.avg(math.abs(close[1] - open[1]), math.abs(close[2] - open[2]), math.abs(close[3] - open[3]), math.abs(close[4] - open[4]), math.abs(close[5] - open[5]))

//######################## Long Signal Condition ##########################

// Function to determine if the candle is a bullish engulfing
isBullishEngulfing() =>
    currentOpen = open
    currentClose = close
    previousOpen = open[1]
    previousClose = close[1]
    isBullish = currentClose >= currentOpen
    wasBearish = previousClose <= previousOpen
    engulfing = currentOpen <= previousClose and currentClose >= previousOpen
    bodySizeCheckCurrent = currentBodySize >= min_body_size_current * previousBodySize
    bodySizeCheckPrevious = previousBodySize >= min_body_size_previous * avgBodySizeLast5
    isBullish and wasBearish and engulfing and bodySizeCheckCurrent and bodySizeCheckPrevious

// Long signal condition
longCondition = isBullishEngulfing() and slope > 0

// Plotting long signals on chart
plotshape(series=longCondition, location=location.belowbar, color=color.green, style=shape.labelup, text="Long", title="Long Condition")

// Alerts for long condition
if (longCondition)
    alert("Long condition met", alert.freq_once_per_bar_close)

//######################## Short Signal Condition ##########################

// Function to determine if the candle is a bearish engulfing
isBearishEngulfing() =>
    currentOpen = open
    currentClose = close
    previousOpen = open[1]
    previousClose = close[1]
    isBearish = currentClose <= currentOpen
    wasBullish = previousClose >= previousOpen
    engulfing = currentOpen >= previousClose and currentClose <= previousOpen
    bodySizeCheckCurrent = currentBodySize >= min_body_size_current * previousBodySize
    bodySizeCheckPrevious = previousBodySize >= min_body_size_previous * avgBodySizeLast5
    isBearish and wasBullish and engulfing and bodySizeCheckCurrent and bodySizeCheckPrevious

// Short signal condition
shortCondition = isBearishEngulfing() and slope < 0

// Plotting short signals on chart
plotshape(series=shortCondition, location=location.abovebar, color=color.red, style=shape.labeldown, text="Short", title="Short Condition")

// Alerts for short condition
if (shortCondition)
    alert("Short condition met", alert.freq_once_per_bar_close)

//######################## Trading Logic ##########################

// Track the bar number when the position was opened
var int longEntryBar = na
var int shortEntryBar = na

// Enter long trade on the next candle after a long signal
if (longCondition and na(longEntryBar))
    strategy.entry("Long", strategy.long)
    longEntryBar := bar_index + 1

// Enter short trade on the next candle after a short signal
if (shortCondition and na(shortEntryBar))
    strategy.entry("Short", strategy.short)
    shortEntryBar := bar_index + 1

// Close long trades `close_bars` candles after entry
if (not na(longEntryBar) and bar_index - longEntryBar >= close_bars)
    strategy.close("Long")
    longEntryBar := na

// Close short trades `close_bars` candles after entry
if (not na(shortEntryBar) and bar_index - shortEntryBar >= close_bars)
    strategy.close("Short")
    shortEntryBar := na