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

مصنف:چاؤ ژانگ، تاریخ: 2024-01-08 16:43:38
ٹیگز:

img

جائزہ

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

حکمت عملی منطق

حکمت عملی میں مندرجہ ذیل اہم حصے شامل ہیں:

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

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

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

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

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

فوائد کا تجزیہ

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

  1. ڈبل ایم اے ڈیزائن سادہ اور عملی ہے، سمجھنے اور مہارت حاصل کرنے میں آسان ہے۔
  2. تیز رفتار اور سست رفتار ایم اے کے ذریعے قابل اعتماد رجحان کا اندازہ؛
  3. ریورس بار اندراج ٹریڈنگ جیت کی شرح کو بہتر بناتا ہے؛
  4. مجموعی طور پر طریقہ کار محتاط اور مستحکم ہے، جو تمام ٹائم فریم کے لئے موزوں ہے۔
  5. خطرات کو کنٹرول کرنے کے لئے سٹاپ نقصان کو منتقل کرنے کی حمایت کرتا ہے؛
  6. خاص طور پر کریپٹو مارکیٹ کی خصوصیات پر غور کرتا ہے جس میں زیادہ منافع حاصل کرنے کے لئے oversold pyramiding کے مواقع شامل ہوتے ہیں۔

خطرے کا تجزیہ

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

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

ان خطرات سے نمٹنے کے لئے، مندرجہ ذیل پہلوؤں میں اصلاحات کی جا سکتی ہیں:

  1. غیر مؤثر whipsaws سے بچنے کے لئے مزید اندراج کے حالات شامل کریں؛
  2. فلٹرنگ کے لیے وقت کا فریم ایڈجسٹ کریں یا دیگر اشارے شامل کریں۔
  3. وسط لائن کے قریب ٹریکنگ کے لئے سٹاپ نقصان الگورتھم کو بہتر بنائیں؛
  4. oversold pyramiding حکمت عملی کی اصل کارکردگی کا اندازہ کریں.

اصلاح کی ہدایات

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

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

  2. نمونہ کی پہچان: مزید قابل اعتماد الٹ سگنل کی نشاندہی کرنے کے لئے KDJ، MACD جیسے دیگر اشارے شامل کریں۔

  3. سٹاپ نقصان کی اصلاح: روکنے کے امکانات کو کم کرنے کے لئے فلوٹنگ یا ٹریلنگ اسٹاپ نقصان الگورتھم تیار کریں.

  4. مشین لرننگ: ML کا استعمال کرتے ہوئے خود کار طریقے سے تجارتی قوانین پیدا کرنے کے لئے مزید تاریخی ڈیٹا جمع اور لیبل کریں.

  5. پوزیشن سائزنگ: مارکیٹ کے حالات کی بنیاد پر پوزیشن سائزنگ کو متحرک طور پر ایڈجسٹ کریں۔

نتیجہ

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


/*backtest
start: 2023-12-31 00:00:00
end: 2024-01-07 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title = "Noro's Trend MAs Strategy v2.0 +CB", shorttitle = "Trend MAs str 2.0", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)

//Settings
needlong = input(true, "long")
needshort = input(true, "short")
needstops = input(false, "stops")
stoppercent = input(5, defval = 5, minval = 1, maxval = 50, title = "Stop, %")
useohlc4 = input(false, defval = false, title = "Use OHLC4")
usefastsma = input(true, "Use fast MA Filter")
fastlen = input(5, defval = 5, minval = 1, maxval = 50, title = "fast MA Period")
slowlen = input(21, defval = 20, minval = 2, maxval = 200, title = "slow MA Period")
bars = input(2, defval = 2, minval = 0, maxval = 3, title = "Bars Q")
needbg = input(false, defval = false, title = "Need trend Background?")
needarr = input(false, defval = false, title = "Need entry arrows?")
needex = input(true, defval = true, title = "Need extreme? (crypto/fiat only!!!)")

src = useohlc4 == true ? ohlc4 : close

//PriceChannel 1
lasthigh = highest(src, slowlen)
lastlow = lowest(src, slowlen)
center = (lasthigh + lastlow) / 2

//PriceChannel 2
lasthigh2 = highest(src, fastlen)
lastlow2 = lowest(src, fastlen)
center2 = (lasthigh2 + lastlow2) / 2

//Trend
trend = low > center and low[1] > center[1] ? 1 : high < center and high[1] < center[1] ? -1 : trend[1]

//Bars
bar = close > open ? 1 : close < open ? -1 : 0
redbars = bars == 0 ? 1 : bars == 1 and bar == -1 ? 1 : bars == 2 and bar == -1 and bar[1] == -1 ? 1 : bars == 3 and bar == -1 and bar[1] == -1 and bar[2] == -1 ? 1 : 0
greenbars = bars == 0 ? 1 : bars == 1 and bar == 1 ? 1 : bars == 2 and bar == 1 and bar[1] == 1 ? 1 : bars == 3 and bar == 1 and bar[1] == 1 and bar[2] == 1 ? 1 : 0

//Fast RSI
fastup = rma(max(change(close), 0), 2)
fastdown = rma(-min(change(close), 0), 2)
fastrsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown))

//CryptoBottom
mac = sma(close, 10)
len = abs(close - mac)
sma = sma(len, 100)
max = max(open, close)
min = min(open, close)
up3 = close < open and len > sma * 3 and min < min[1] and fastrsi < 10 ? 1 : 0

//Signals
up = trend == 1 and (low < center2 or usefastsma == false) and (redbars == 1) ? 1 : 0
dn = trend == -1 and (high > center2 or usefastsma == false) and (greenbars == 1) ? 1 : 0

up2 = high < center and high < center2 and bar == -1 ? 1 : 0
dn2 = low > center and low > center2 and bar == 1 ? 0 : 0

//Lines
plot(center, color = blue, linewidth = 3, transp = 0, title = "Slow MA")
plot(center2, color = red, linewidth = 3, transp = 0, title = "PriceChannel 2")

//Arrows
plotarrow(up == 1 and needarr == true ? 1 : 0, colorup = black, colordown = black, transp = 0)
plotarrow(dn == 1 and needarr == true ? -1 : 0, colorup = black, colordown = black, transp = 0)

//Background
col = needbg == false ? na : trend == 1 ? lime : red
bgcolor(col, transp = 90)

//Alerts
alertcondition(up == 1, title='buy', message='Uptrend')
alertcondition(dn == 1, title='sell', message='Downtrend')

//Trading
stoplong = up == 1 and needstops == true ? close - (close / 100 * stoppercent) : stoplong[1]
stopshort = dn == 1 and needstops == true ? close + (close / 100 * stoppercent) : stopshort[1]

longCondition = up == 1 or (up2 == 1 and needex == true) or up3 == 1
if (longCondition)
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)
    strategy.exit("Stop Long", "Long", stop = stoplong)

shortCondition = dn == 1
if (shortCondition)
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)
    strategy.exit("Stop Short", "Short", stop = stopshort)

مزید