MACD روبوٹ ٹریڈنگ کی حکمت عملی


تخلیق کی تاریخ: 2023-12-18 17:30:15 آخر میں ترمیم کریں: 2023-12-18 17:30:15
کاپی: 0 کلکس کی تعداد: 723
1
پر توجہ دیں
1621
پیروکار

MACD روبوٹ ٹریڈنگ کی حکمت عملی

جائزہ

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

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

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

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

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

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

طاقت کا تجزیہ

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

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

خطرے کا تجزیہ

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

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

ان خطرات کو کم کیا جاسکتا ہے جیسے مناسب پیرامیٹرز کو ایڈجسٹ کرنا ، دوسرے اشارے کو جوڑنا وغیرہ۔

اصلاح کی سمت

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

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

خلاصہ کریں۔

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

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

//@version=3
strategy(shorttitle = "GBPUSD MACD", title = "GBPUSD MACD")
fastMA = input(title="Fast moving average",  defval = 12, minval = 7)
slowMA = input(title="Slow moving average",  defval = 26, minval = 7)
lastColor = yellow
[currMacd,_,_] = macd(close[0], fastMA, slowMA, 9)
[prevMacd,_,_] = macd(close[1], fastMA, slowMA, 9)
plotColor = currMacd > 0 ? currMacd > prevMacd ? lime : green : currMacd < prevMacd ? maroon : red
plot(currMacd, style = histogram, color = plotColor, linewidth = 3)
plot(0, title = "Zero line", linewidth = 1, color = gray)

//MACD
// Getting inputs
fast_length = input(title="Fast Length",  defval=12)
slow_length = input(title="Slow Length",  defval=26)
src = input(title="Source", defval=close)
signal_length = input(title="Signal Smoothing",  minval = 1, maxval = 50, defval =9)
sma_source = input(title="Simple MA(Oscillator)", type=bool, defval=false)
sma_signal = input(title="Simple MA(Signal Line)", type=bool, defval=false)

// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00

// Calculating
fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length)
hist = macd - signal

//plot(hist, title="Histogram", style=columns, color=(hist>=0 ? (hist[1] < hist ? col_grow_above : col_fall_above) : (hist[1] < hist ? col_grow_below : col_fall_below) ), transp=0 )
plot(macd, title="MACD", color=col_macd, transp=0)
plot(signal, title="Signal", color=col_signal, transp=0)
///END OF MACD

//Long and Close Long Lines
linebuy = input(title="Enter Long", type=float, defval=-0.00045)
linesell = input(title="Close Long", type=float, defval=0.0001)

//Plot Long and Close Long Lines
plot(linebuy,color=green),plot(linesell,color=red)


//Stop Loss Input
sl_inp = input(0.05, title='Stop Loss %', type=float)/100


//Order Conditions
longCond = crossover(currMacd, linebuy)
exitLong = crossover(currMacd, signal) and signal > 0
stop_level = strategy.position_avg_price * (1 - sl_inp)


//Order Entries
strategy.entry("long", strategy.long,  when=longCond==true)
strategy.close("long", when=exitLong==true)
strategy.exit("Stop Loss", stop=stop_level)