یہ حکمت عملی میک ڈی ڈی تکنیکی اشارے کے دوہری حرکت پذیر اوسط کراس اوور پر مبنی ایک خودکار تجارتی حکمت عملی ہے۔ یہ رجحان کی پیروی کے لئے رجحان کی سمت کا تعین کرنے کے لئے میک ڈی ڈی کی سگنل لائن کراس اوور کا استعمال کرتی ہے۔
حکمت عملی اس منطق کا استعمال سنہری صلیبوں پر طویل اور موت کے صلیبوں پر قریبی پوزیشن لینے کے لئے کرتی ہے۔ یا خود بخود رجحان کی پیروی کرنے کے لئے موت کے صلیبوں پر مختصر اور سنہری صلیبوں پر قریبی پوزیشن لینے کے لئے۔ اس دوران ، حکمت عملی یہ بھی فیصلہ کرتی ہے کہ آیا مطلق ایم اے سی ڈی لائن مثبت ہے یا منفی تاکہ جھوٹے سگنلز سے بچنے اور رجحان کی تبدیلی کے نکات کو واقعی گرفت میں لینا یقینی بنایا جاسکے۔
خطرے کو کم کرنا:
حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:
سگنل کی تصدیق اور جھوٹے سگنل کو فلٹر کرنے کے لئے KDJ، بولنگر بینڈ وغیرہ جیسے دیگر اشارے شامل کریں
داخلہ کے طریقہ کار کو بہتر بنائیں، مثال کے طور پر ابتدائی یا دیر سے اندراج سے بچنے کے لئے بریک آؤٹ فلٹر شامل کریں
پیرامیٹر کی ترتیبات کو بہتر بنائیں ، مختلف ٹائم فریم اور مارکیٹ کے نظام کی بنیاد پر تیز اور سست لائن کے ادوار کو ایڈجسٹ کریں
ایک ہی تجارت کے نقصان کو کنٹرول کرنے کے لئے سٹاپ نقصان شامل کریں
دیگر مصنوعات جیسے فاریکس، کریپٹو کرنسی وغیرہ میں توسیع کریں
/*backtest start: 2023-01-16 00:00:00 end: 2024-01-22 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © DeMindSET //@version=4 strategy("MACD Trend Follow Strategy", overlay=false) // Getting inputs LSB = input(title="Long/Short", defval="Long only", options=["Long only", "Short only" , "Both"]) fast_length = input(title="Fast Length", type=input.integer, defval=12) slow_length = input(title="Slow Length", type=input.integer, defval=26) src = input(title="Source", type=input.source, defval=close) signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9) sma_source = input(title="Simple MA(Oscillator)", type=input.bool, defval=false) sma_signal = input(title="Simple MA(Signal Line)", type=input.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=plot.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) // Bull= macd > signal Bear= macd < signal ConBull=macd>0 ConBear=macd<0 // Green= Bull and ConBull Red= Bear and ConBear Yellow= Bull and ConBear Blue= Bear and ConBull // bcolor = Green ? color.green : Red ? color.red : Yellow ? color.yellow : Blue ? color.blue : na barcolor(color=bcolor) // === INPUT BACKTEST RANGE === FromYear = input(defval = 2019, title = "From Year", minval = 1920) FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) ToYear = input(defval = 9999, title = "To Year", minval = 2009) ToMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12) ToDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31) // === FUNCTION EXAMPLE === start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window window() => true // create function "within window of time" if LSB == "Long only" and Green strategy.entry("L",true) if LSB == "Long only" and Red strategy.close("L",qty_percent=100,comment="TP Long") if LSB == "Both" and Green strategy.entry("L",true) if LSB == "Both" and Red strategy.entry("S",false) if LSB == "Short only" and Red strategy.entry("S",false) if LSB == "Short only" and Green strategy.close("S",qty_percent=100,comment="TP Short")