ڈوئل موونگ ایوریج اور MACD اشارے پر مبنی حکمت عملی کے بعد رجحان


تخلیق کی تاریخ: 2023-11-02 16:09:08 آخر میں ترمیم کریں: 2023-11-02 16:09:08
کاپی: 2 کلکس کی تعداد: 479
1
پر توجہ دیں
1182
پیروکار

ڈوئل موونگ ایوریج اور MACD اشارے پر مبنی حکمت عملی کے بعد رجحان

جائزہ

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

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

  1. حساب کتاب تیز لائن EMA ((12 ویں لائن) ، سست لائن EMA ((26 ویں لائن) اور سگنل لائن EMA ((9 ویں لائن)

  2. MACD ستون لائن ((فاسٹ لائن - سست لائن) اور MACD سگنل لائن ((MACD کی 9 ویں لائن) کا حساب لگائیں۔

  3. 50 دن کی لائن اور 200 دن کی لائن کو بڑے رجحانات کا اندازہ لگانے کے لئے اوسط لائن کے طور پر شمار کریں۔

  4. MACD کالم لائن پر 0 محور کے ذریعے bullish سگنل کے طور پر، نیچے 0 محور کے ذریعے bearish سگنل کے طور پر.

  5. تیز لائن پر سست لائن اور قلیل مدتی میڈین لائن پر طویل مدتی میڈین لائن کے طور پر اشارہ کریں۔

  6. تیز لائن نیچے سست لائن اور قلیل مدتی اوسط لائن نیچے طویل مدتی اوسط لائن کے نیچے نیچے کی طرف اشارہ کرتا ہے۔

  7. ہر بار میڈین لائن کی سمت تبدیل ہونے کے بعد ، مارکیٹ میں متعدد تجارت کی اجازت دی جاتی ہے ، جس کو EMA کراس پیرامیٹرز کے ذریعہ کنٹرول کیا جاتا ہے۔

  8. اسٹاپ نقصان کے ذریعے پوزیشن کو صاف کریں۔

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

  1. اس کے علاوہ ، آپ کو اپنے ٹریڈنگ کی حکمت عملی کو بہتر بنانے کے ل the ، آپ کو اپنے ٹریڈنگ کی حکمت عملی کو بہتر بنانے کی ضرورت ہے۔

  2. MACD خرید و فروخت کے مقامات کا تعین کرتا ہے تاکہ رجحان کی تبدیلی کو وقت پر پکڑ سکے۔

  3. ڈبل مساوی لائن اور MACD اشارے کے ساتھ مل کر ، رجحانات میں بہتر انٹری ٹائمنگ کا پتہ لگایا جاسکتا ہے۔

  4. زیادہ سے زیادہ ٹریڈنگ سیٹ کریں تاکہ آپ کو پیچھا کرنے سے بچنے سے بچنے کے لۓ.

  5. روک تھام کے طریقہ کار کو روکنے کے خطرے کو کنٹرول کریں.

  6. پیرامیٹرز کو بہتر بنانے کے لئے پیرامیٹرز کو بہتر بنانے کے لئے.

اسٹریٹجک رسک

  1. بڑے رجحان کی غلط فہمی ، جس کی وجہ سے منفی تجارت میں نقصان ہوتا ہے۔ بڑے رجحان کی گرفت کو یقینی بنانے کے لئے اوسط لکیری فرق کی ضروریات کو مناسب طریقے سے نرمی دی جاسکتی ہے۔

  2. MACD خرید و فروخت کے سگنل میں تاخیر ہے ، جس سے ابتدائی یا دیر سے داخلے کا سبب بن سکتا ہے۔ MACD پیرامیٹرز کو ایڈجسٹ کیا جاسکتا ہے ، یا دوسرے اشارے کے فلٹر سگنل کے ساتھ ملایا جاسکتا ہے۔

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

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

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

  1. بڑے رجحانات کا اندازہ لگانے کے لئے دوسرے اوسط لکیری اشارے ، جیسے کے ڈی انڈیکس کو آزمائیں۔

  2. دوسرے اشارے کے ساتھ MACD فلٹرنگ سگنل کو جوڑنے کی کوشش کریں ، جیسے برن بینڈ ، اے ٹی آر اسٹاپ

  3. سٹاپ نقصان کو روکنے کے پیرامیٹرز کو بہتر بنائیں ، مختلف اقسام کے لئے الگ الگ ٹیسٹ کے لئے بہترین پیرامیٹرز کا مجموعہ تلاش کریں۔

  4. قدم بہ قدم اصلاح اور بے ترتیب اصلاح کے طریقوں کا استعمال کرتے ہوئے بہتر پیرامیٹرز کا مجموعہ تلاش کریں۔

  5. ٹرانزیکشن کی کم تعدد کے لئے میکانزم کو شامل کرنا ، جیسے MACD زیرو محور کے قریب ٹرانزیکشن کو روکنے والے علاقے کی تشکیل۔

  6. متعدد اقسام کے لئے خود کار طریقے سے پیرامیٹرز کی اصلاح اور مجموعہ کی اصلاح۔

خلاصہ کریں۔

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

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

//@version=5
strategy(title="ComiCo - Joel on Crypto - MACD Scalping", shorttitle="ComiCo - Joel on Crypto - MACD Scalping")
// Getting inputs
slow_length1 = input(title="EMA Trend 1", defval=50)
slow_length2 = input(title="EMA Trend 2 ", defval=200)
fast_length = input(title="MACD Fast Length", defval=12)
slow_length = input(title="MACD Slow Length", defval=26)
signal_length = input.int(title="MACD Signal Smoothing",  minval = 1, maxval = 50, defval = 9)
src = input(title="MACD Source", defval=close)

i_switch = input.string(title="Tick Highlight", defval="Moving average" ,options=["Moving average","Fixed value" ])
i_switch2 = input.string(title="Tick Source", defval="Highest bar" ,options=["Highest bar","Average","Last bar"])

signal_lengthup = input.int(title="Upticks Avg. Length",  minval = 1, maxval = 5000, defval = 72)
signal_lengthdown = input.int(title="Downticks Avg. Length",  minval = 1, maxval = 5000, defval = 72)

signal_lengthMA = input.float(title="Ticks Avg. Multiplier",  minval = 0, maxval = 5000, defval = 2, step = 0.1)

sma_source = "EMA"
sma_signal = "EMA"
// Plot colors

col_grow_above = #26A69A
col_fall_above =#B2DFDB
col_grow_below = #FFCDD2
col_fall_below = #FF5252
// Calculating

fast_ma = sma_source == "SMA" ? ta.sma(src, fast_length) : ta.ema(src, fast_length)
slow_ma = sma_source == "SMA" ? ta.sma(src, slow_length) : ta.ema(src, slow_length)

time_macd=timeframe.period=="1"?"1": timeframe.period=="3"?"1": timeframe.period=="5"?"1": timeframe.period=="15"?"3":timeframe.period=="30"?"5":timeframe.period=="60"?"15":timeframe.period=="120"?"30":timeframe.period=="240"?"60":timeframe.period=="D"?"240":timeframe.period=="W"?"D":timeframe.period=="M"?"W":timeframe.period=="12M"?"M":timeframe.period



macd = fast_ma - slow_ma
macd1=request.security(syminfo.tickerid, time_macd, macd)
signal = sma_signal == "SMA" ? ta.sma(macd1, signal_length) : ta.ema(macd1, signal_length)

ema50=ta.ema(close,slow_length1)
ema200=ta.ema(close ,slow_length2)

var TradeCounter = 0
MaxCount = input.int(title = "Max trades after EMA cross", minval = 0, maxval = 1000, defval = 3)
bull = ema50>ema200
if bull != bull[1]
    TradeCounter := 0


hist = request.security(syminfo.tickerid, time_macd, macd1 - signal)


f() => [hist[4],hist[3],hist[2],hist[1], hist]
ss=request.security(syminfo.tickerid, time_macd, hist, barmerge.gaps_on,barmerge.lookahead_off)



[ss5,ss4,ss3,ss2,ss1]=request.security(syminfo.tickerid, time_macd, f(), barmerge.gaps_on,barmerge.lookahead_off)



a = array.from(ss5,ss4,ss3,ss2,ss1)

s3=i_switch2=="Highest bar"?(ss>0? array.max(a, 0) : array.min(a, 0)):i_switch2=="Average"?array.avg(a):i_switch2=="Last bar"?ss1:0

saa=timeframe.period == '1'? ss:s3

saa2=timeframe.period == '1'? ss:s3*signal_lengthMA


colorss=(s3>=0 ? (s3[1] < s3 ? col_grow_above : col_fall_above) : (s3[1] < s3 ? col_grow_below : col_fall_below))


saadown = saa2
saaup = saa2

saadown:=saa>=0? saa2:saadown[1]

saaup:=saa<0? saa2:saaup[1]



verr=ta.ema(saadown,signal_lengthup)
dowww=ta.ema(saaup,signal_lengthdown)

ss22=plot(verr, title="Avg. Cloud Upper 1", color=color.new(color.white, 100))
ss33=plot(dowww, title="Avg. Cloud Lower 1", color=color.new(color.white, 100))

fill(ss22, ss33, color.new(color.white, 93), title="Avg. Cloud Background")

fixeduptick = input(title="Fixed Uptick Value", defval=30)
fixeddowntick = input(title="Fixed Downtick Value", defval=-30)
minl = i_switch=="Fixed value"? fixeduptick  :  verr
maxl = i_switch=="Fixed value"? fixeddowntick : dowww 

plot(minl, title="Avg. Cloud Upper 2", color=color.new(color.white, 81))
plot(maxl, title="Avg. Cloud Lower 2", color=color.new(color.white, 81))


colors2= s3<=minl and s3>=maxl ? #2a2e39 : colorss

coro2=s3>0? ema50>ema200 ? #2a2e39 :  colors2 : ema50<ema200 ? #2a2e39: colors2
plot(saa, title="Histogram", style=plot.style_columns, color=coro2)

LimitDiff = input.float(title="Limit Price Difference",  minval = 0, maxval = 0.1, defval = 0.005, step = 0.0005)
TP = input.float(title="Take Profit",  minval = 0, maxval = 0.1, defval = 0.005, step = 0.0005)
SL = input.float(title="Stop Loss",  minval = 0, maxval = 0.1, defval = 0.004, step = 0.0005)

minEMAdiff = input.float(title = "Min EMA difference", defval = 100, step = 10)

if #2a2e39 != coro2
    a22 = 0
    if ema50<ema200 and TradeCounter < MaxCount and math.abs(ema50-ema200) > minEMAdiff
        LimitPrice = close * (1 + LimitDiff)
        strategy.entry("enter short", strategy.short, limit = LimitPrice)
        strategy.exit("exit short", "enter short", limit = LimitPrice * (1 - TP), stop = LimitPrice * (1 + SL))
        TradeCounter := TradeCounter + 1
    if ema50>ema200 and TradeCounter < MaxCount and math.abs(ema50-ema200) > minEMAdiff
        LimitPrice = close * (1 - LimitDiff)
        strategy.entry("enter long", strategy.long, limit = LimitPrice)
        strategy.exit("exit long", "enter long", limit = LimitPrice * (1 + TP), stop = LimitPrice * (1 - SL))
        TradeCounter := TradeCounter + 1

//alertcondition(#2a2e39 != coro2 , title='MACD Tick Alert', message='Joel on Crypto - MACD Tick Alert')